MySQL-Docker撰写Healthcheck使用环境变量
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了MySQL-Docker撰写Healthcheck使用环境变量,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1038字,纯文字阅读大概需要2分钟。
内容图文
这是我的docker-compose.yml:
version: "3"
services:
mongodb:
image: mongo:4.1
volumes:
- ./mongodb_data:/data/db
container_name: mongodb
ports:
- 27017:27017
mysql:
image: mysql:5.7
#volumes:
#- ./mysql_data:/var/lib/mysql
container_name: mysqldb
ports:
- 3306:3306
- 33060:33060
expose:
- 3306
- 33060
environment:
- MYSQL_ROOT_PASSWORD=password
- MYSQL_DATABASE=somedb
- MYSQL_USER=rstudio
- MYSQL_PASSWORD=password
healthcheck:
test: ["CMD", "mysql", "--user=$MYSQL_USER", "--password=$MYSQL_PASSWORD", "-e", "'SHOW DATABASES;'"]
timeout: 5s
retries: 5
如何使用环境变量MYSQL_USER和MYSQL_PASSWORD?在当前设置中,运行docker compose时收到以下警告:
WARNING: The MYSQL_USER variable is not set. Defaulting to a blank string.
WARNING: The MYSQL_PASSWORD variable is not set. Defaulting to a blank string.
解决方法:
您需要使用双美元符号($$)来告诉docker-compose不要解析这些环境变量.当我尝试使测试生效时,也要更改定义测试的方式,但是我不能不更改它.以下应该可以正常工作:
test: mysql --user=$$MYSQL_USER --password=$$MYSQL_PASSWORD -e 'SHOW DATABASES;'
docker ps结果:最多35秒(正常)
内容总结
以上是互联网集市为您收集整理的MySQL-Docker撰写Healthcheck使用环境变量全部内容,希望文章能够帮你解决MySQL-Docker撰写Healthcheck使用环境变量所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。