我的环境是Ubuntu 18.04 VPS。
我无法在docker容器中使用基于文件的机密与mariadb一起使用。
创建docker-compose.yml:
version: '3.7'
services:
db:
image: mariadb:10.4.8-bionic
environment:
- MYSQL_ROOT_PASSWORD_FILE=/run/secrets/password_root
- MYSQL_PASSWORD_FILE=/run/secrets/password_user
- MYSQL_DATABASE=database
- MYSQL_USER=admin
secrets:
- password_root
- password_user
secrets:
password_root:
file: .secret_password_root
password_user:
file: .secret_password_user
创建秘密:
echo -n secret > .secret_password_root
echo -n secret > .secret_password_user
chown root:root .secret_password*
chmod 400 .secret_password*
(请注意,我可以设置444,但这会在主机上公开secrets文件,这是一个非常糟糕的主意。)
跑:
docker-compose up
错误:
db_1 | /usr/local/bin/docker-entrypoint.sh:第37行:/ run / secrets / password_root:权限被拒绝
根据docs,secrets文件应该安装为0444,但这显然没有发生。
不明觉厉啊呀。。。。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。