1、 Compose 服务启动失败

# 查看Compose启动日志

docker-compose up -d

docker-compose logs -f --tail 100 <服务名>

# 检查Compose配置文件

docker-compose config --quiet  # 验证语法

docker-compose config  # 查看解析后的配置

# 检查服务依赖关系

检查docker-compose.yml文件,搜索depends_on关键字,查看服务间依赖关系

# 分步启动服务排查问题

docker-compose up -d <基础服务1>

docker-compose up -d <依赖服务2>

# 最后启动问题服务

docker-compose up <问题服务>

2、 Compose 网络与卷冲突

# 查看Compose创建的资源

docker-compose ps

docker network ls

docker volume ls

# 清理旧资源

docker-compose down -v --remove-orphans

# 检查资源名称冲突

docker network ls | grep <项目名>

docker volume ls | grep <项目名>

# 强制重建

docker-compose build --no-cache <服务名>

docker-compose up -d --force-recreate <服务名>

3、 Compose 版本兼容性问题

# 查看Compose文件版本

grep "version" docker-compose.yml

# 查看docker-compose版本

docker-compose --version

# 转换配置文件到兼容版本

# 例如从v2转换到v3

sed -i 's/version: "2"/version: "3"/' docker-compose.yml

sed -i 's/volumes_from:/volumes:/' docker-compose.yml

# 调整其他不兼容的配置项

# 使用特定版本的Compose

docker run --rm -v $(pwd):/app -w /app docker/compose:1.29.2 up -d

更多推荐