一、常用参数
--name 指定容器名字
-i 以交互模式运行容器,通常与 -t 同时使用
-t 为容器重新分配一个伪输入终端,通常与 -i 同时使用
-d 后台模式运行
-u 指定容器的用户
-h 指定容器的主机名
-p 端口映射,格式为[主机端口:容器端口]
-v 挂载主机的目录,格式为[主机:容器]
-e 指定环境变量,容器中可以使用该环境变量
-w 指定容器的工作目录
-m 指定容器的内存上限
二、基础命令
# 查看 docker系统信息
docker info
# 查看 docker版本信息
docker version
# 查看帮助
docker --help
# 查看镜像列表
docker images
# 删除镜像
docker rmi [镜像ID] [镜像ID] ...
# 从远程镜像源拉取镜像
docker pull redis:7.0.14
# 查看正在运行的容器
docker ps
# 查看所有容器
docker ps -a
# 查看容器内运行的进程
docker top [容器ID或容器名]
# 查看容器的所有日志,并实时跟踪后续日志
docker logs -f [容器ID或容器名]
# 查看容器的最近 100 行日志,并实时跟踪后续日志
docker logs --tail 100 -f [容器ID或容器名]
# 创建并启动容器,,,可以设置容器的各种属性,包括端口映射、挂载卷、环境变量等
docker run -it --name [容器名] [镜像名]
# 启动容器/重启容器/停止容器/删除容器
docker start/restart/stop/rm [容器ID或容器名]
# 进入容器
docker exec -it [容器ID或容器名] /bin/bash
# 退出容器
exit
# 设置重启策略:
# - no,不重启容器
# - always,总是在容器退出时重启
# - unless-stopped,在容器手动停止时以外的任何原因退出时重启
# - on-failure,在容器以非零退出代码退出时重启,可以通过 --restart-max-retries 选项指定最大重试次数。
docker update --restart always [容器ID或容器名]
# 导出镜像
docker save -o <保存的文件名.tar> <镜像名>
# 导入镜像
docker load -i <保存的文件名.tar>
# 为已有镜像创建Tag(镜像ID不变) 或 修改镜像名称 或 修改镜像Tag
# 注意:docker tag 本质上只是创建了镜像的一个新标签,并不会复制或改变镜像内容。
docker tag <镜像ID> <镜像名称:Tag>
三、网络相关命令
# 查看帮助
docker network --help
# 创建 docker网络,可以通过网络与[宿主机]和[其他容器]通信
docker network create [network_name]
# 将容器连接到指定网络
docker network connect [network_name] [container_name]
# 将容器从指定网络中断开
docker network disconnect [network_name] [container_name]
# 查看 docker网络的详细信息
docker network inspect [network_name]
# 列出当前 docker主机的所有网络信息(信息包括网络ID、名称、驱动程序和作用范围)
docker network ls
# bridge:为桥接网络,是一个虚拟的局域网,用于容器间的通信,每个容器都会被分配一个IP
# host:主机网络模式,不需要与主机端口映射,如果需要直接使用主机的网络配置时,可以选择host
# 删除所有未使用的 docker网络
docker network prune
# 删除一个或多个 docker网络
docker network rm [network_name1] [network_name2] ....
持续补充ing…