镜像使用

  1. sudo docker pull ubuntu #拉取镜像
  2. sudo docker images #列出镜像
  3. sudo docker import ubuntu:21.04.tar #导入镜像
  4. docker search httpd #查找镜像
  5. sudo docker rmi httpd #删除镜像
  6. sudo docker commit -m="has update" -a="liminghui" b3c09fd675d3 ub:v1 #创建镜像
  7. sudo docker run -it ub:v1 /bin/bash #启动容器
  8. sudo docker tag cfe63ee5e0ec test:v0 #设置镜像标签

构建镜像(编写Dockerfile)

  1. docker build -t ubuntu:20.04 #构建

容器使用

  1. sudo docker run -it ubuntu:20.04 /bin/bash
  2. sudo docker run -it --name myubuntu ubuntu:20.04 /bin/bash #启动并重命名镜像
  3. sudo docker run -d ubuntu:20.04 /bin/sh -c "while true; do echo hello world; sleep 1; done" #后台方式
  4. sudo docker run -itd ubuntu:20.04 /bin/bash
  5. sudo docker start b3c09fd675d3 #启动已经停止的容器
  6. sudo docker restart 04b2e9f7c136 #重启容器
  7. sudo docker ps #查看正在运行的容器
  8. sudo docker ps -a # 查看所有容器
  9. sudo docker logs 33de8f157774 #查看容器运行的结果
  10. sudo docker attach 04b2e9f7c136 #退出容器停止运行
  11. sudo docker exec -it b3c09fd675d3 /bin/bash #退出容器不会停止运行
  12. sudo docker stop 33de8f157774 #停止容器
  13. sudo docker export 04b2e9f7c136 >ubuntu:21.04.tar #导出容器
  14. sudo docker import ubuntu:21.04.tar #导入镜像
  15. sudo docker rm -f 04b2e9f7c136 #删除容器

容器应用

  1. docker pull training/webapp #获取应用镜像
  2. sudo docker run -d -P training/webapp python app.py #运行
  3. sudo docker port 5f96df685b40 #查看应用端口
  4. sudo docker run -d -p 5001:5000 training/webapp python app.py #更改应用程序接口
  5. sudo docker logs 5f96df685b40 #查看应用日志
  6. sudo docker top 5f96df685b40 #应用程序容器的进程
  7. sudo docker inspect 5f96df685b40 #检查应用程序的参数面板
  8. sudo docker rm nifty_hofstadter # 根据名字删除应用

容器连结

  1. sudo docker network create -d bridge mynet #新建网络
  2. sudo docker run -itd --name test1 --network mynet ubuntu:20.04 /bin/bash #根据网络创建容器
  3. sudo docker run -itd --name test2 --network mynet ubuntu:20.04 /bin/bash

仓库管理

  1. docker login docker logout #登录dockerhub账号
  2. sudo docker pull ubuntu:20.04 #推送镜像到dockerhub