【小型网站测试】使用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
相关推荐
kida_yuan7 分钟前
【从零开始】13. 数据增强(Data Augmentation)
数据结构·python·nlp
蜀中廖化27 分钟前
bash:trtexec:command not found
开发语言·bash
码畜sokach32 分钟前
Docker入门指南:CentOS 7 安装与阿里云镜像加速配置
阿里云·docker·centos
Java陈序员34 分钟前
听歌体验直接拉满!推荐一款高颜值音乐播放器!
vue.js·docker·vite
封奚泽优1 小时前
班级互动小程序(Python)
python·deepseek
堕落年代1 小时前
小红书JS SDK签名过程
开发语言·javascript·ecmascript
MediaTea1 小时前
Python:math 库函数手册(双曲函数)
开发语言·python
€8111 小时前
Java入门级教程16——JUC的安全并发包机制
java·开发语言·juc的安全并发包机制·栅栏机制·闭锁机制·信号量机制·无锁机制
枫叶V1 小时前
用 FastAPI 实现大文件分片上传与断点续传(含可运行示例与客户端脚本,仅供参考)
python·fastapi