温馨提示:本文最后更新于
2024-11-28 17:19:49
,某些文章具有时效性,若有错误或已失效,请在下方留言。容器常见命令
创建容器
# 完整命令
docker container run <image name>
# 简写命令
docker run <image name>
列出容器
查看 up
状态的容器
# 完整命令
docker container ls
# 简写命令
docker ps
查看 up
以及exit
状态的容器
# 完整命令
docker container ls -a
# 简写命令
docker ps -a
停止容器
# 完整命令
docker container stop <name or ID>
# 简写命令
docker stop <container name or ID>
如果需要批量停止容器,可以使用以下的命令
# 停止特定的容器
docker container stop <ID1> <ID2> ...
# 停止所有的容器
docker container stop $(docker container ps -aq)
删除容器
# 完整命令
docker container rm <name or ID>
# 简写命令
docker rm <container name or ID>
如果需要批量删除容器,可以使用以下的命令
docker container rm $(docker container ps -aq)
重启容器
# 完整命令
docker container restart <name or ID>
# 简写命令
docker restart <container name or ID>
容器运行模式
容器的运行模式有attach 模式
以及detach 模式
。
attach 模式
# attach 模式
docker container run -p 80:80 nginx
- 容器在前台执行
- 容器的输入输出结果会反映到本地端,本地端的输入输出也会反映到容器。例如能在终端机看到网页浏览器的 log,
ctrl + c
会让容器停止执行 - 一般不推荐使用。
detach 模式
# detach 模式
docker container run -d -p 80:80 nginx
- 容器会在后台执行。
容器交互模式
查看容器日志
# 查看最后产生的日志信息
docker logs 容器ID
# 查看动态的日志信息
docker logs -f 容器ID
进入容器内部
如果需要创建一个容器并进入交互式模式,可以使用以下的命令
docker container run -it webapp-ai sh
如果需要在一个已经运行的容器里执行一个额外的command
,可以使用以下的命令
docker exec -it a01ce10c49ca /bin/sh
容器执行流程
docker container run内部的执行流程。
docker container run -d --publish 80:80 --name webhost nginx
具体的执行步骤:
- 在本地查找是否有
nginx
这个image镜像,如果没有发现 - 去远程的image registry查找nginx镜像(默认的registry是Docker Hub)
- 下载最新版本的nginx镜像 (nginx:latest 默认)
- 基于nginx镜像来创建一个新的容器,并且准备运行
- docker engine分配给这个容器一个虚拟IP地址
- 在宿主机上打开80端口并把容器的80端口转发到宿主机上
- 启动容器,运行指定的命令(这里是一个shell脚本去启动nginx)
© 版权声明
THE END
暂无评论内容