docker环境安装及运行

docer环境的安装部署

sudo curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

判断docker是否安装成功

# 从 Docker Hub 上下载helle-world镜像
   sudo docker pull helle-world
# 运行该镜像
   sudo docker run helle-world
# 输出以下内容及为成功
   Hello from Docker!
This message shows that your installation appears to be working correctly.
   ......

制作docker镜像--->编写Dockerfile

# Dockerfile 样例
FROM ubuntu:18.04         # 添加基础镜像
COPY . /run               # 将需要添加到镜像的文件放到run目录下
# 操作指令放在Run后面执行,多个指令用&&分隔
RUN chmod -R 777 /run  &&\
        rpm -ivh *.rpm

ENV TZ=Asia/Shanghai      # 设置时区,推荐上海时区

EXPOSE 8080               # 暴露端口

WORKDIR /run/             # 切换工作目录

CMD ["bash","start.sh"]   # docker镜像生成并安装到服务器后,执行该命令,启动系统,start.sh 即需要部署在docker中的程序的启动脚本

制作docker镜像--->创建镜像

# 将Dockerfile,start.sh,及需要上传的文件放到同一目录(例:Dockerfile_D)
# 创建镜像
sudo docker build -t <镜像名> <Dockerfile_D路径>
例: sudo docker build -t test_docker  /home/name/Dockerfile_D

启动镜像

sudo docker run -p 8080:8080 --restart=always --privileged=true -v /home/name/docker/dockershare:/run/test test_docker
# sudo docker run <镜像名> 启动该镜像  
# -p 8080:8080  将docker容器的8080端口映射到主机的8080
# --restart=always 容器(比如服务类容器)因某种错误而停止运行时,能够自动重启
#  --privileged=true
# -v 创建docker 容器与实体机的共享文件夹
# /home/name/docker/dockershare 为实体机文件加路径,在该路径下的文件会出现在容器系统的/run/test文件夹中
# /run/test 为docker 容器文件加路径
# test_docker 为需要启动的镜像名称

进入容器

# 查看正在运行的容器
sudo docker ps        # 查看正在运行的容器
sudo docker ps  -a    # 查看所有容器 
# 进入容器
sudo docker exec -it <容器id> /bin/bash
例:sudo docker exec -it a404c6c174a2 /bin/bash

将容器提交为新的镜像

sudo docker commit -a "作者" -m "描述" <镜像id>  <镜像名>
例:docker commit -a "name" -m "my test_docker" a404c6c174a2  test_docker

docker常用命令

https://www.hangge.com/blog/cache/detail_2402.html

遇到的问题

# docker ubuntu中安装ping命令
    apt-get update
    apt-get upgrade
    apt-get install inetutils-ping  
# docker ubuntu中安装db2时缺少libail.so.1
    apt-get install libaio1 libaio-dev
# docker ubuntu中安装python3.7
    apt-get install python3.7   # 若系统版本太低可能不支持
posted @ 2020-09-23 12:01  孤独的火柴人  阅读(691)  评论(0)    收藏  举报