MYSQL_ROOT_PASSWORD_FILE 正在读取“/run/secrets/mypassword”作为密码而不是路径
MYSQL_ROOT_PASSWORD_FILE is reading '/run/secrets/mypassword' as the password not the path
它假设将其视为一条路径。但它认为“/run/secrets/mypassword”是实际密码。 “_FILE”已被使用。
我试过给它''。还是不行
当我转到/run/secrets/mypassword时,我可以看到秘密文件,文件里面是正确的密码。
下面是我的docker-compose.yml.Anyone可以给点建议吗?非常感谢
version: '3.1'
services:
mariadb:
image: 'mariadb:10.6'
working_dir: /application2
volumes:
- '.:/application2'
- db1:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD_FILE : /run/secrets/mypassword
MYSQL_DATABASE: db1
MYSQL_USER: user1
MYSQL_PASSWORD_FILE : /run/secrets/mypassword2
secrets:
- mypassword
- mypassword2
ports:
- '21003:3306'
networks:
- app2
secrets:
mypassword:
file: mypassword.txt
mypassword2:
file: mypassword2.txt
请注意,仅当容器启动时不存在数据库时才使用环境变量。您将卷映射到 /var/lib/mysql
,因此很可能您已经有一个数据库,然后它将使用其中定义的密码。
尝试删除卷映射,看看它是否有效。
它假设将其视为一条路径。但它认为“/run/secrets/mypassword”是实际密码。 “_FILE”已被使用。
我试过给它''。还是不行
当我转到/run/secrets/mypassword时,我可以看到秘密文件,文件里面是正确的密码。
下面是我的docker-compose.yml.Anyone可以给点建议吗?非常感谢
version: '3.1'
services:
mariadb:
image: 'mariadb:10.6'
working_dir: /application2
volumes:
- '.:/application2'
- db1:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD_FILE : /run/secrets/mypassword
MYSQL_DATABASE: db1
MYSQL_USER: user1
MYSQL_PASSWORD_FILE : /run/secrets/mypassword2
secrets:
- mypassword
- mypassword2
ports:
- '21003:3306'
networks:
- app2
secrets:
mypassword:
file: mypassword.txt
mypassword2:
file: mypassword2.txt
请注意,仅当容器启动时不存在数据库时才使用环境变量。您将卷映射到 /var/lib/mysql
,因此很可能您已经有一个数据库,然后它将使用其中定义的密码。
尝试删除卷映射,看看它是否有效。