我正在尝试使this工作。
我有这个docker-compose.yml
文件:
version: '3'
services:
mariadb:
image: 'bitnami/mariadb:latest'
env_file:
- .env
volumes:
- 'mariadb_data:/bitnami'
magento:
image: 'bitnami/magento:latest'
labels:
kompose.service.type: nodeport
env_file:
- .env
ports:
- '80:80'
- '443:443'
healthcheck:
test: 'pgrep tini > /dev/null && curl --fail --head --insecure --silent --output /dev/null --write-out %{http_code} ${MAGENTO_HOST}/pub/health_check.php || exit 1'
interval: 60s
timeout: 10s
retries: 20
volumes:
- 'magento_data:/bitnami'
depends_on:
- mariadb
volumes:
mariadb_data:
driver: local
magento_data:
driver: local
它与healthcheck
部分旁的https://github.com/bitnami/bitnami-docker-magento中的原始文件几乎相同,我检查了启动过程是否完成。
在.gitlab-ci.yml
中,我使用
- sleep 800 && echo "sleep end"
- docker-compose-wait -w
等到容器中的magento安装过程结束(我知道从docker logs
命令开始大约需要12分钟)。 CI作业总是失败,因为docker-compose-wait
返回
Some processes failed:
magento is unhealthy
我对它的[docker-compose.yml
文件]进行了本地测试,我知道经过4或5次尝试后,运行状况检查会返回status 0
,因此它可以正常工作。