Docker - 常用命令

 

1、Docker的启动和停止

启动docker:systemctl start docker
停止docker:systemctl stop docker
重启docker:systemctl restart docker
查看docker状态:systemctl status docker
开机启动:systemctl enable docker


2、容器相关

查看容器

查看正在运行的容器:docker ps
查看所有容器:docker ps -a
查看停止的容器:docker ps -f status-exited
查看最后一次运行的容器:docker ps -l

container_id:运行镜像之后,自动生成的唯一ID

停止容器
docker stop [container_id]

启动容器
docker start [container_id]

重启容器
docker restart [container_id]

移除所有容器
docker rm $(docker ps -aq)

移除单个容器
docker rm [container_id]

3、镜像相关

查看镜像
docker images

 

repository 直译为“仓库”,日常沟通交流过程中,也可能叫做“镜像名称”;
tag 标签,可以理解成版本号;
image_id 拉取镜像时,系统自动生成的唯一ID。
repostory 和 tag 经常一起使用,比如:tomcat:8,镜像名称是tomcat,版本8

移除镜像
docker rmi [image_id]

docker rmi -f  [image_id] 强制删除


拉取镜像
docker pull [repository]
docker pull [repository]:[tag]


4、运行镜像

创建容器

docker run -di --name=[自定义名称] [repository]:[tag] -p 宿主机端口:容器端口 -e 环境变量

--name:为创建的容器命名
-i:表示运行容器
-t:启动容器后,为容器分配一个命令行,通常与 -i 同时使用
-d:守护进程,后台运行该容器,通常与 -i 同时使用
-v 目录映射,容器目录挂载到宿主机目录,格式: [host目录]:[容器目录]
-p:将容器端口映射到主机,可以同时做多个端口映射,格式:[主机(宿主)端口]:[容器端口]
-P:大写的P,会给主机随机分配端口
-e:环境变量,格式:[field]=[value]
-u 以什么用户身份创建容器
-m, --memory bytes 设置容器使用内存最大值
-h, --hostname string 指定容器的 host name
–dns 指定容器 dns 服务器
–restart Docker重启后,容器是否自动重启
–privileged 容器内是否使用真正的 root 权限

样例:

运行tomcat:docker run -d -p 8080:8080 --name tomcat_hello tomcat:8


迁移和备份

容器保存为镜像 :docker commit [容器名称] [镜像名称]
镜像备份(镜像保存为tar文件): docker save -o 名称.tar 镜像名称
镜像恢复和迁移:docker load -i 名称.tar

5、容器设置开机自启

1、使用 docker run 命令运行时

增加 --restart=always 参数即可

2、使用 docker-compose 命令运行时

在 yml 文件中,需要自启动的 service 下
增加 restart: always 项目即可

3、已运行的容器修改其自启动策略

执行命令:

docker update --restart=always [containter_id]
docker container update --restart=[容器策略] [containter_id]

# no 容器退出时不重启容器
# on-failure 只有在非零状态退出时才重新启动容器
--restart=on-failure:【重启次数】
# always 无论退出状态如何都会重启容器

posted on 2023-05-23 17:16  疯狂的妞妞  阅读(36)  评论(0编辑  收藏  举报

导航