drevops/docker-wait-for-dependenciesDocker wait for dependencies是一个轻量级容器,主要功能是暂停自身运行,直到指定的其他服务通过TCP端口可访问。该镜像适用于在Docker Compose环境中确保依赖服务(如数据库、缓存等)完全就绪后,再启动主应用服务,避免因依赖服务未准备好而导致的启动失败。支持linux/amd64和linux/arm64两种架构。
linux/amd64和linux/arm64架构镜像适用于任何需要确保依赖服务(如MongoDB、Redis、MySQL等)完全启动并可访问后,再启动主应用的场景。典型应用包括:
以下是在docker-compose.yml中集成该镜像的示例配置:
yamlversion: '2' services: # 依赖服务示例:MongoDB mongo: image: mongo:6 container_name: mongo ports: - 27017:27017 networks: - my-network # 依赖服务示例:Redis redis: container_name: redis image: redis:6 ports: - 6379:6379 networks: - my-network # 主应用服务 server: container_name: server image: server ports: - 3000:3000 networks: - my-network # 依赖等待服务 start_dependencies: image: drevops/docker-wait-for-dependencies:23.12.0 depends_on: - mongo - redis container_name: wait-for-dependencies # 命令格式:<服务名>:<端口> [<服务名>:<端口>...] command: mongo:27017 redis:6379 networks: - my-network networks: my-network:
通过以下步骤,可确保mongo和redis服务完全就绪后再启动server服务:
bash# 运行等待容器,直到mongo和redis可访问 docker-compose run --rm start_dependencies # 依赖服务就绪后,启动主服务 docker-compose up server
该镜像支持通过环境变量调整检查行为,主要包括:
yamlstart_dependencies: image: drevops/docker-wait-for-dependencies:23.12.0 environment: - SLEEP_LENGTH=0.5 # 每0.5秒检查一次
yamlstart_dependencies: image: drevops/docker-wait-for-dependencies:23.12.0 environment: - TIMEOUT_LENGTH=60 # 超时时间设为60秒
本镜像的核心功能基于docker-wait-for-dependencies项目开发,感谢该项目贡献者的原始工作。


manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务