0%

docker之常用命令

万丈高楼平地起,意思是再高的大楼都要从平地修建起,要把基础打牢。也比喻事物从无到有。今天咱们就来聊聊docker(version 19.03.1)的一些常用命令,为后续基于docker的操作进行准备,特此记录!

一、镜像

  1. 查找公网镜像 docker search [OPTIONS] image_name
  2. 拉取公网镜像 docker pull image_name[:tag_name]
  3. 查看已有镜像 docker images
  4. 导出已有镜像 docker save -o image_name.tar image_name
  5. 导入本地镜像 docker load --input image_name.tardocker load < image_name.tar
  6. 删除已有镜像 docker rmi image_name
  7. 查看镜像信息 docker inspect image_name

二、容器

  1. 创建容器 docker create -it image_name:tag

    • -i:以交互模式运行容器,通常与 -t 同时使用
    • -t:为容器重新分配一个伪输入终端,通常与 -i 同时使用
  2. 查看容器 docker ps [OPTIONS]

    • -a:显示所有的容器,包括未运行的
    • -f:根据条件过滤显示的内容
    • -l:显示最近创建的容器
    • -n:列出最近创建的n个容器
    • -q:静默模式,只显示容器编号
    • -s:显示总的文件大小
  3. 启动容器 docker start -i -a container

    • -a:Attach STDOUT/STDERR and forward signals
    • -i:以交互模式运行容器
  4. 进入容器 docker exec -it container /bin/sh

  5. 创建并启动容器 docker run [OPTIONS] IMAGE [COMMAND] [ARG...],相当于docker create + docker start

    • -a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项
    • -d: 后台运行容器,并返回容器ID
    • -i: 以交互模式运行容器,通常与 -t 同时使用
    • -P: 随机端口映射,容器内部端口随机映射到主机的高端口
    • -p: 指定端口映射,格式为:主机(宿主)端口:容器端口
    • -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用
    • -m:设置容器使用内存最大值
    • --name="nginx-lb": 为容器指定一个名称
    • --dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致
    • --dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致
    • -h "mars": 指定容器的hostname
    • -e username="ritchie": 设置环境变量
    • --env-file=[]: 从指定文件读入环境变量
    • --cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行
    • --net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型
    • --link=[]: 添加链接到另一个容器
    • --expose=[]: 开放一个端口或一组端口
    • --volume , -v: 绑定一个卷
  6. 移除容器 docker rm container

  7. 终止容器 docker kill container

  8. 关闭/重启容器 docker stop/restart container

  9. 查看容器信息 docker inspect container

  10. 查看容器日志 docker logs container

  11. 查看容器资源状况 docker stats container

  12. 显示容器正在运行进程 docker top container

  13. 退出后容器依然保持启动状态 control + p && control + q

三、仓库

  1. 登录仓库docker login
  2. 拉取镜像docker pull
  3. 推送镜像docker push
  4. 查找镜像/容器docker search

四、其他

  1. 查看docker版本 docker --version
  2. 查看docker信息 docker info
  3. docker所有命令 docker --help

五、参考

  1. 参考一
  2. 参考二