docker后端运行和监控等命令

1.重点: 后台守护式启动

 比如,redis就需要后台守护式启动: docker run -d redis

有的就只能前台交互式启动,比如: docker run -it ubuntu /bin/bash

 docker run -it ubuntu /bin/bash
会以交互式方式启动容器,然后打开伪交互终端

 

 

#使用鏡像centos:latest 以后台模式启动一·个容器

docker run -d ubuntu

然后 docker ps -a 行查看, 会发容器已经退出

很重要的要說明的一点: Docker 容器后台运行, 就必有一个前台進程.

容器运行的命令如果不是那些一直挂起的命令 (比如运行top, tail) 就是会自动退出的。

这个是 docker 的机制,比如你的web 容器, 我以nginx 例, 正常情况下,

我配置啟动服务具需要启动响的service 即可。 例如service nginx start

但是,样做,nginx 为后台进程模式运行, 就导致docker 前台沒有运行的应用,

这样的容器后台启动后, 会立即自杀,因为他觉得他沒事可做了。

所以, 最佳的解決方案是 :将你要运行的程序以前台进程的形式运行,

常见就是命令行模式, 表示我还有交互操作, 别中断〇(_)〇哈哈~

 所以,docker启动一些容器需要一定用-it,有些一定要用-d

 比如,redis就需要后台守护式启动: docker run -d redis

有的就只能前台交互式启动,比如: docker run -it ubuntu

2. 当前项目的流程

编码开发微服务  -》 上线部署容器化  -》时时刻刻要监控

2.查看日志:docker logs xxxcontainerId

3.查看容器内运行的进程:docker top xxxContainerId

4.查看容器内部细节: docker inspect xxxContainerId

5.进入正在运行的容器 并以命令行交互:

docker exec -it xxcontainerId /bin/bash  #推荐这个方式

或者

docker attach xxcontainerId 

 

 

 

docker exec -it xxcontainerId /bin/bash  和  docker attach xxcontainerId  的区别:

 

 

 

 7.docker带来的 公司项目开发部署的区别: 

 8.容器中的资料cp

docker cp contanerId:/tmp/a.txt /software

 

9.

导出容器:docker export contanerId > 文件名.tar

导入容器:cat 文件名.tar | docker import - atguigu/ubuntu:3.7

导出容器:

 

 导入容器:

 

posted @ 2024-03-04 18:07  苹果芒  阅读(19)  评论(0编辑  收藏  举报