更新manager;部署方式
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
import yaml
|
||||
import time
|
||||
import subprocess
|
||||
|
||||
# 配置:延时秒数
|
||||
DELAY_SECONDS = 10
|
||||
|
||||
def start_containers():
|
||||
try:
|
||||
# 1. 读取 compose 文件获取服务列表
|
||||
with open('docker-compose.yml', 'r') as f:
|
||||
compose_data = yaml.safe_load(f)
|
||||
|
||||
services = list(compose_data.get('services', {}).keys())
|
||||
|
||||
if not services:
|
||||
print("错误: 未在 docker-compose.yml 中找到任何服务。")
|
||||
return
|
||||
|
||||
print(f"检测到 {len(services)} 个服务,将按顺序启动并延时 {DELAY_SECONDS}s...")
|
||||
|
||||
# 2. 逐个启动服务
|
||||
for service in services:
|
||||
print(f"正在启动容器: {service} ...")
|
||||
# 使用 docker-compose up -d [服务名] 启动特定容器
|
||||
subprocess.run(["docker-compose", "up", "-d", service], check=True)
|
||||
|
||||
# 最后一个容器启动后不需要等待
|
||||
if service != services[-1]:
|
||||
time.sleep(DELAY_SECONDS)
|
||||
print(f"等待 {DELAY_SECONDS}s...")
|
||||
|
||||
print("\n所有容器已按序启动完成!")
|
||||
|
||||
except FileNotFoundError:
|
||||
print("错误: 当前目录下找不到 docker-compose.yml")
|
||||
except Exception as e:
|
||||
print(f"运行出错: {e}")
|
||||
|
||||
if __name__ == "__main__":
|
||||
start_containers()
|
||||
Reference in New Issue
Block a user