#综合实践#通过puppet管理远程docker容器——使用脚本进行管理

本文介绍如何通过脚本来访问Docker容器,包括访问特定容器、管理容器、查看容器状态等功能。通过脚本可以方便地操作Docker环境,提高工作效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

114451_IDRV_987833.jpg


使用脚本访问docker容器:

root@docker:~# ./control.sh 
What you want to do?try input 'help' to get some tips(please input the words in ''): access
Please input the specific container's name:web1
root@050ebb07cf25:/#                   #已经进入docker容器,输入exit退出,不过脚本也会退出


获取帮助信息(不妨多试试其他命令):

root@docker:~# ./control.sh 
What you want to do?try input 'help' to get some tips(please input the words in ''): help
################################################################################################################################
                                            The helping information about this script                                           
################################################################################################################################
COMMAND                                       INFO                                                                              
################################################################################################################################
'status'                                      get the info about the running containers.                                        
'access'                                      access the specific contianer.                                                    
'manage'                                      manage the contianer,such as 'start','stop' and 'delete'.                         
'exit'                                        exit this script.                                                                 
'statusa'                                     show the infomation about all containers.                                         
'statusl'                                     show the latest infomation about container.                                       
################################################################################################################################
MAINCOMMAND                  SUBCOMMAND                  INFO                                                                   
################################################################################################################################
'manage'                     'start'                     launch a exist contianer                                               
'manage'                     'stop'                      stop a running container                                               
'manage'                     'delete'                    detele a not-running container                                         
'manage'                     'status'                    get the info about the running containers                              
'manage'                     'statusa'                   show the infomation about all containers.                              
'manage'                     'statusl'                   show the latest infomation about container.                            
################################################################################################################################
What you want to do?try input 'help' to get some tips(please input the words in ''):


stop容器,delete容器,start容器:

stop容器web1:

root@docker:~# ./control.sh 
What you want to do?try input 'help' to get some tips(please input the words in ''): manage
Please input the container name which you want to manage,or 'exit',or 'help'?: status
Running container:
CONTAINER ID        IMAGE                    COMMAND             CREATED             STATUS              PORTS                    NAMES
050ebb07cf25        training/webapp:latest   "python app.py"     12 minutes ago      Up 12 minutes       0.0.0.0:2000->5000/tcp   web1                   
0ef5d56e4c89        training/webapp:latest   "python app.py"     12 minutes ago      Up 12 minutes       0.0.0.0:1000->5000/tcp   web1/webbase,webbase   
Please input the container name which you want to manage,or 'exit',or 'help'?: web1
Do you want to 'start' or 'stop' or 'delete' your container?: stop
Notice:container is stopping
web1
Please input the container name which you want to manage,or 'exit',or 'help'?:

web1被停掉


start容器web1:

Please input the container name which you want to manage,or 'exit',or 'help'?: web1
Do you want to 'start' or 'stop' or 'delete' your container?: start
Notice:Please make sure this container is not running
web1
Please input the container name which you want to manage,or 'exit',or 'help'?: status
Running container:
CONTAINER ID        IMAGE                    COMMAND             CREATED             STATUS              PORTS                    NAMES
050ebb07cf25        training/webapp:latest   "python app.py"     14 minutes ago      Up 6 seconds        0.0.0.0:2000->5000/tcp   web1                   
0ef5d56e4c89        training/webapp:latest   "python app.py"     14 minutes ago      Up 14 minutes       0.0.0.0:1000->5000/tcp   web1/webbase,webbase   
Please input the container name which you want to manage,or 'exit',or 'help'?:

web1又启动了


delete容器web1(必须先把它关闭):

Please input the container name which you want to manage,or 'exit',or 'help'?: web1
Do you want to 'start' or 'stop' or 'delete' your container?: stop
Notice:container is stopping
web1
Please input the container name which you want to manage,or 'exit',or 'help'?: status
Running container:
CONTAINER ID        IMAGE                    COMMAND             CREATED             STATUS              PORTS                    NAMES
0ef5d56e4c89        training/webapp:latest   "python app.py"     15 minutes ago      Up 15 minutes       0.0.0.0:1000->5000/tcp   web1/webbase,webbase         #web1被关闭
Please input the container name which you want to manage,or 'exit',or 'help'?: web1
Do you want to 'start' or 'stop' or 'delete' your container?: delete
Notice:You cannot delete a running container,if the container is running,please stop it first!
web1
Please input the container name which you want to manage,or 'exit',or 'help'?: statusa
All infomation about containers:\n
CONTAINER ID        IMAGE                    COMMAND             CREATED             STATUS                     PORTS                    NAMES
0ef5d56e4c89        training/webapp:latest   "python app.py"     17 minutes ago      Up 17 minutes              0.0.0.0:1000->5000/tcp   webbase                 
4de1685a386e        training/webapp:latest   "/bin/bash"         37 hours ago        Exited (0) 37 hours ago                             backstabbing_lovelace   
c915cb516b02        training/webapp:latest   "python app.py"     37 hours ago        Exited (-1) 37 hours ago                            clever_mccarthy         #没有web1的相关信息了

web1被删除


tips:在manage会话下输入exit,将会返回主会话,再输入一次exit退出脚本:

root@docker:~# ./control.sh 
What you want to do?try input 'help' to get some tips(please input the words in ''): manage
Please input the container name which you want to manage,or 'exit',or 'help'?: exit                #退出manage会话
Exiting
What you want to do?try input 'help' to get some tips(please input the words in ''): exit          #主会话中退出
root@docker:~#


这个脚本会不断改进的。

转载于:https://my.oschina.net/hochikong/blog/307899

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值