soarli

Docker常用命令总结
查看容器操作系统docker exec -it gitlab cat /etc/issue启动一个已经停止的容器实...
扫描右侧二维码阅读全文
22
2022/10

Docker常用命令总结

查看容器操作系统

docker exec -it gitlab cat /etc/issue

启动一个已经停止的容器实例

docker start 容器ID或容器名

  1. 先查看已经暂停的容器实例信息
  2. 通过docker start 59ec 启动容器
  3. 通过docker ps 查看当前启动的容器

具体操作如下图:

image-20221022193547179

docker start 还有两个参数:

-i:以 交互模式启动 交互模式不懂点我

-t:以 附加进程方式启动 附加进程不懂的点我

停止一个正在运行的容器

1、docker stop 此方式常常被翻译为优雅的停止容器

docker stop 容器ID或容器名

参数 -t:关闭容器的限时,如果超时未能关闭则用kill强制关闭,默认值10s,这个时间用于容器的自己保存状态

docker stop -t=60 容器ID或容器名

2、docker kill

docker kill 容器ID或容器名 :直接关闭容器

由此可见stopkill的主要区别:stop给与一定的关闭时间交由容器自己保存状态,kill直接关闭容器

想更进一步了解处理机制的可以看下面这篇文章,比较详细但是需要其他方面的

https://www.jb51.net/article/96617.htm

重启一个容器

docker restart 容器ID或容器名 :不管容器是否启动,直接重启容器

  1. 首先 docker ps 查看正在运行的容器信息,显示2分钟前启动运行
  2. docker restart 59ec 重启容器
  3. 再次 docker ps 查看容器信息 显示 2秒前启动运行

image-20221022194618869

docker restart 参数:

-t:关闭容器的限时,如果超时未能关闭则用kill强制关闭,默认值10s,这个时间用于容器的自己保存状态

image-20221022194637391

删除容器实例

docker rm 容器ID或容器名

  1. docker ps -a 寻找已经停止运行的实例
  2. docker rm 59ec 删除实例
  3. docker ps -a 查看实例已经删除

具体操作如下图:

image-20221022194258227

如果容器实例在运行状态下 是不能通过上面的命令删除的,会提示容器实例正在运行中。需要先停止在删除,不会停止实例的看这里https://blog.csdn.net/Michel4Liu/article/details/80889977,也可以通过参数强制删除

参数:
-f : 通过SIGKILL信号强制删除一个运行中的容器,主要删除正在运行的容器实例
-l : 移除容器间的网络连接,而非容器本身
-v : 删除容器挂载卷

删除镜像

docker rmi 容器ID或容器名

  1. 首先 docker images 查看所有镜像
  2. 然后 docker rmi fe200 删除镜像
  3. 再次通过 docker images 查看镜像 发现已经删除

具体操作如下图:

image-20221022194512533

如果删除的镜像已经产生了容器实例(run过)不容器实例是否启动都会提示无法删除,因为被占用。这时需要先删除容器实例或添加删除参数

参数:
-f :强制删除,一般用于被占用的删除
–no-prune :不移除该镜像的过程镜像,默认移除;(ps (⊙﹏⊙) 不是很理解这个参数查了几次没理解,有知道的欢迎评论告知我,后期知道后我将更新上去)

进入正在运行的docker容器里面

1、docker attach

docker attach 容器名称或容器ID

此命令如果进入一些web服务会一致卡着无反应,猜测是监听阻塞了进入,而且已此方式进入容器如果执行exit或关闭会话 会停止掉容器。因此我们在生成环境中不用此命令。

2、docker exec

docker exec -it 59ec /bin/bash (后补:如果提示“/bin/bash 未找到”之类的 可以改成:docker exec -it 59ec sh 此种问题我在centos中遇到过,ubuntu 未测试)

执行后如下图,会看到命令行的开头出现了变化,因为已经进入到了容器里面

image-20221022194846752

接下来我们在容器里面访问内部端口12345的站点

curl 127.0.0.1:12345

我们看到出现 html代码说明访问成功

image-20221022194905873

进入后想退出 执行 exit 即可

docker-compose 命令相关

后台启动容器:docker-compose up -d

关闭并删除容器:docker-compose down

开启|关闭|重启已经存在的由docker-compose维护的容器: docker-compose start|stop|restart

运行当前内容,并重新构建 docker-compose up -d --build

参考资料:

Docker实用的命令 - soarli博客

Docker的asp.net core应用部署系列目录(完结)_Michel4Liu的博客-CSDN博客

docker常规操作——启动、停止、重启容器实例_Michel4Liu的博客-CSDN博客_docker重启容器

docker常规操作——删除容器实例、删除镜像_Michel4Liu的博客-CSDN博客_docker 删除容器

Docker的asp.net core应用部署系列——进入正在运行的docker容器里面_Michel4Liu的博客-CSDN博客

最后修改:2022 年 11 月 21 日 07 : 19 PM

发表评论