当前位置: 首页 > news >正文

python3 重启docker方法

一、工作中的问题

工作中进行测试时,需要修改nacos配置,修改完成后再重启对应的docker容器,让配置生效,研究了下,使用docker库可以做到。

如何修改nacos配置可以参见我的另一篇文章,传送门 

python3 修改nacos的yaml配置_xugexuge的博客-CSDN博客

二、安装docker三方库

pip install docker

三、代码如下

import docker# 创建 Docker 客户端实例
client = docker.from_env()# 查找正在运行的 Docker 容器
containers = client.containers.list()for container in containers:container_name = container.name  # docker的名字container_id = container.id  # docker的idcontainer_status = container.status  # docker的状态"""这里可以写你的业务逻辑,比如停止某个id的docker,或者停止某个名字的docker"""container.stop()  # 停止dockercontainer.start()  # 启动dockercontainer.restart()  # 重启docker# 关闭 Docker 客户端连接
client.close()

四、注意点

按以上写法,由于没有输入账号密码,需要在docker容器的那台服务器上去执行代码。如果想远程执行,需要在创建docker客户端实例后加入如下代码进行登录,但是这里就需要运维将服务器的登录方式设置为手动登录才能使用。

# 登录 Docker
client.login(username='your-username', password='your-password')

示例写法如下

import docker# 创建 Docker 客户端实例
client = docker.from_env()# 登录 Docker
client.login(username='your-username', password='your-password')# 查找正在运行的 Docker 容器
containers = client.containers.list()for container in containers:container_name = container.name  # docker的名字container_id = container.id  # docker的idcontainer_status = container.status  # docker的状态"""这里可以写你的业务逻辑,比如停止某个id的docker,或者停止某个名字的docker"""container.stop()  # 停止dockercontainer.start()  # 启动dockercontainer.restart()  # 重启docker
# 关闭 Docker 客户端连接
client.close()

http://www.lryc.cn/news/159020.html

相关文章:

  • 【js】js中深拷贝与浅拷贝:
  • 大文件上传demo,前端基于Uppy,后端基于koa
  • typeScript--[函数定义]
  • Spring初始化项目
  • Opencv 图像金字塔----高斯和拉普拉斯
  • gitLab(git)误提交命令
  • Rust个人学习笔记2
  • 深入浅出Android同步屏障机制
  • 工程管理系统简介 工程管理系统源码 java工程管理系统 工程管理系统功能设计
  • Python 专栏目录索引
  • SSM学习
  • .net项目部署Docker
  • Ubuntu无法加载exfat的USB存储设备
  • 【计算机网络】网络编程接口 Socket API 解读(2)
  • 【黄啊码】PHP如何防止重复提交
  • 2594. 修车的最少时间
  • vue 使用qrcode生成二维码并可下载保存
  • 网络融合的发展思路
  • 报考浙江工业大学MBA项目如何选择合适的辅导班?
  • 算法训练第五十八天
  • 如何快速生成一个H5滑动的卡片(单页和分页都有)
  • 嵌入式开发笔试面试
  • 2023国赛数学建模B题思路分析 - 多波束测线问题
  • thinkphp6 入门(5)-- 模型是什么 怎么用
  • Hadoop HDFS 高阶优化方案
  • 通俗易懂讲解大模型:Tokenizer
  • nested exception is java.io.FileNotFoundException
  • ARM编程模型-常用指令集
  • MAC M2芯片执行yolov8 + deepsort 实现目标跟踪
  • 使用Python轻松实现文档编写