返回首页 - Notes - 2019

Docker 精要


常用命令

  1. docker run -it 镜像名:运行一个交互式容器
  2. docker run --name 名称 -it 镜像名:运行一个命名的交互式容器
  3. docker run --name 名称 -d 镜像名:运行一个命名的守护式容器
  4. docker start 容器名:启动一个已停止运行的容器
  5. docker attach 容器名:附着到一个正在运行的容器
  6. docker top 容器名:查看容器内运行的进程
  7. docker stats 容器名:实时监控容器的资源使用情况
  8. docker logs -ft --tail 0 容器名:实时监控容器日志
  9. docker exec -it 容器名 命令:在容器内执行交互式命令
  10. docker exec -d 容器名 命令:在容器内运行后台任务
  11. docker stop 容器名docker kill 容器名:停止正在运行的容器
  12. docker images:查看全部镜像
  13. docker ps -a:查看全部容器
  14. docker rmi 镜像名:删除镜像
  15. docker rm 容器名:删除容器

构建镜像

  1. docker commit 容器名 自定义镜像名:从一个修改过的容器构建新的镜像
  2. docker build -t 自定义镜像名 Dockerfile所在目录:从 Dockerfile 构建镜像
  3. docker history 镜像名:查看镜像创建过程中执行了哪些指令
  4. docker inspect 镜像名/容器名:查看镜像或容器的详细信息

使用容器

  1. docker run --name 名称 -p 宿主端口号:容器端口号 -d 镜像名:运行一个命名的守护式容器,并映射端口
  2. docker port 容器名:查看容器的端口映射

Dockerfile 核心指令

  1. ENTRYPOINT ["/usr/sbin/nginx"]:替换容器的默认入口 /bin/sh -c,不会被 docker run 的命令参数覆盖(实在要覆盖需要传递 --entrypoint 参数)
  2. CMD ["/bin/bash", "-l"]:指定容器启动时要运行的命令,可被 docker run 传递的命令参数覆盖
  3. ENV GEM_HOME /usr/local/bundle:设置环境变量,可在 docker run 时用 -e 参数覆盖
  4. USER nginx:指定容器以什么用户身份运行,默认为 root,可在 docker run 时用 -u 参数覆盖
  5. WORKDIR /var/www:切换工作目录,可在 docker run 时用 -w 参数覆盖
  6. ADD local_file /var/www/:将构建目录下的本地文件添加到镜像中,对于压缩包会自动解压
  7. COPY files/ /var/www/:将构建目录下的本地文件复制到镜像中,不会对压缩包解压
  8. VOLUME ["/var/www", "/data"]:挂载卷

date:2019-02-15、2019-02-24、2019-02-28