【小型网站测试】使用python脚本来控制docker容器的编排

开发情况的描述

c 复制代码
1:本地主机windows系统
2:windows主机,无法直接执行shell脚本
3:windows主机中有WSL2--也就是安装了linux子系统【ubuntu】
4:ubuntu中可以执行shell脚本
5:有docker  docker desktop(docker桌面版) docker compose
6:服务器是centos系统,可以执行shell脚本
7:容器中也存在shell脚本,容器中默认可执行shell脚本

希望达到效果:一种脚本来控制容器的执行--并后续发送命令

方式一:失败
c 复制代码
1:使用shell脚本,直接让本地主机和centos服务器 使用同一个shell脚本来进行控制容器
----
结果---失败
1:unbuntu中可以通过shell脚本方式控制容器-----OK
2:centos服务器中可以通过shell脚本,-----OK
3:windows主机中通过wsl终端来执行shell脚本控制docker容器会出现无法访问容器ip情况
-报错--未知--未能找到答案
----
方式二:成功
c 复制代码
1:windows         主机种使用python脚本来进行控制容器编排等的后续发送命令--OK
2:windows的linux子系统中使用python脚本来进行控制容器编排等的后续发送命令--OK
2:centos          系统中使用python脚本来进行控制容器编排等的后续发送命令--OK

python脚本中所需要的插件

c 复制代码
os
docker
c 复制代码
1:可以通过 os库来执行 
docker compose build
docker compose up -d
2:需要连接到容器服务组的操作需要docker 库
通过pip方式来安装docker库插件[pip install docker]

下面是centos 服务器中额外安装python的方式

因为华为服务器中的centos7版本的自带python2.7 和python 3.6版本

需求:在服务器中安装python3.10.13版本【稳定版本】 并且安装最新版本的pip

注意:

1:这里会使用到华为的镜像源
2:如果无法通过脚本脚本方式安装,请按照以下命令手动输入安装
c 复制代码
#!/bin/sh

#更新centos7的源
cp -a /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
wget -O /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-7-reg.repo
yum clean all
yum makecache
yum repolist all

#更新yum   安装python所需的插件--并且添加openssl11的软连接到旧版本的openssl中
yum update -y
yum install -y gcc openssl openssl-devel libffi-devel bzip2-devel openssl11 openssl11-devel openssl11-static
ln -sf /usr/lib64/pkgconfig/openssl11.pc /usr/lib64/pkgconfig/openssl.pc

# 下载python3.10.13版本的安装包----因为无法通过yum 安装python3.10版本
cd /home/sh/
wget https://www.python.org/ftp/python/3.10.13/Python-3.10.13.tgz

# 解压安装包--进行安装python3.10.13
tar zxf Python-3.10.13.tgz --no-same-owner
sleep 5s
cd Python-3.10.13
./configure --enable-optimizations
make
make altinstall

#make altinstall 表示不通过覆盖旧版本的python 安装新版本的python3.10
# 本文件存放于 /home/sh/test.sh
# 执行本脚本的命令
# bash /home/sh/test.sh
相关推荐
计算机源码社5 分钟前
【大数据项目实战】基于K-Means的科技公司裁员特征分群与规模信号挖掘系统 基于数据挖掘的科技企业裁员事件异常检测与可视化研究
大数据·python·数据挖掘·毕业设计·kmeans·课程设计·数据可视化
IT毕设实战小研6 分钟前
基于大数据的跨国外派人员适应满意度与留存影响因素可视化分析
android·java·大数据·python·django·课程设计
PHP实战开发录15 分钟前
PHP接口超时后为什么任务还在跑
开发语言·前端·php·开发
m0_7345717615 分钟前
深入理解C++ 构造函数<十一> initializer_list 构造
开发语言·c++
java_logo25 分钟前
Docker 部署 MongoDB Community Server:轻松搭建文档数据库平台
数据库·mongodb·docker·nosql·文档数据库·轩辕镜像·mongodb-server
数据狐(Datafox)27 分钟前
京东商品详情API接口解析(附 JSON 样例)
java·开发语言·json
步行cgn30 分钟前
Spring Boot 指定数据来源详解
spring boot·后端·python
Wang's Blog31 分钟前
Java框架快速入门: Spring Security+OAuth2之深度定制UserDetailsService与密码无缝升级
java·开发语言·spring
白远山39 分钟前
智慧场馆解决方案小程序系统开发实战与架构设计指南
java·开发语言·小程序·架构
ECT-OS-JiuHuaShan41 分钟前
哲学是迭代学,数学是拓扑学
开发语言·人工智能·学习·算法·机器学习·php·拓扑学