Docker容器化解决方案(进程管理操作)
kill
语法格式 docker kill [OPTIONS] CONTAINER [CONTAINER...]
重点:
docker kill子命令可杀***一个或多个容器 向容器内部的主进程发送SIGKILL 信号(默认),或使用 --signal选项指定的信号
说明
options | 作用 |
---|---|
-s | 发送到什么信号到容器,默认KILL |
例子
根据容器名字杀掉容器
[root@localhost Fancy_Illusion]# docker kill jenkins
根据容器ID杀掉容器
[root@localhost Fancy_Illusion]# docker kill afb882148e5e
rm
删除一个或多个容器
语法格式 docker rm [OPTIONS] CONTAINER [CONTAINER...]
说明
options | 作用 |
---|---|
-f | 通过SIGKILL信号删除一个正在运行的容器 |
-l | 移除容器间的网络,而非容器本身 |
-v | 删除与容器映射的目录 |
例子
强制删除容器 docker rm -f name 删除所有已停止的容器 docker rm$(docker ps -a -q) 删除所有容器 docker rm -f $(docker ps -aq) docker ps -a -q | xargs docker rm
create
创建一个新的容器但不启动它
语法格式 docker create [OPTIONS] IMAGE [COMMAND] [ARG...]
option | 作用 |
---|---|
--name | 指定容器的名字 |
例子
根据 tomcat 镜像,创建一个 myTomcat 容器 docker create --name=myTomcat tomcat
[root@localhost ~]# systemctl start docker [root@localhost ~]# docker create --name tomcat8 tomcat:8 [root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE tomcat 8 2d2bccf89f53 8 months ago 678MB [root@localhost ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 5b011e57c4d7 tomcat:8 "catalina.sh run" About a minute ago Created tomcat8
exec
在正在运行的容器中运行命令
exec 在正在运行的容器中运行命令
options | 作用 |
---|---|
-d | 在后台运行命令 |
-i | 即使没有附加也保持STDIN打开,和-t配合 |
-t | 进入容器的CLI模式 |
-e | 设置环境变量 |
--env-file | 读入环境变量文件 |
-w | 需要执行命令的目录 |
-u | 指定访问容器的用户名 |
例子
执行 tomcat 容器的 startup.sh 脚本 [root@localhost ~]# docker exec -it tomcat8 startup.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/openjdk-11 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: Tomcat started. 进入容器的 CLI 模式(最常用) [root@localhost ~]# docker exec -it tomcat8 bash [root@localhost ~]# docker exec -it tomcat8 bash root@5b011e57c4d7:/usr/local/tomcat# root@5b011e57c4d7:/usr/local/tomcat# exit exit 执行普通命令 [root@localhost ~]# docker exec -it tomcat8 pwd [root@localhost ~]# docker exec -it tomcat8 pwd /usr/local/tomcat 以 root 用户身份进入容器(重点) [root@localhost ~]# docker exec -it -uroot jenkins bash root@afb882148e5e:/# 好处就是,你在容器里敲命令就是 root 用户,畅通无阻,不存在权限不足的问题
pause/unpause
docker pause: 暂停一个或多个容器中的所有进程
docker unpause: 恢复一个或多个容器中的所有进程
语法格式 docker pause CONTAINER [CONTAINER...] docker unpause CONTAINER [CONTAINER...]
例子
暂停tomcat容器的服务
[root@localhost ~]# docker pause tomcat8
恢复tomcat容器的服务
[root@localhost ~]# docker unpause tomcat8
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理!
部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!
图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!