如何挂载数据目录?

问题描述 投票:0回答:1

如果我尝试像这样挂载数据目录,我无法启动percona mysql dockerized instance:

docker run --name percona57f -p 3384:3306 -v /my/custom3384:/etc/mysql/conf.d -v /storage/data3384:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=india3384 -e INIT_TOKUDB=1 -d percona/percona-server:5.7 

错误如下所示:

[ERROR] --initialize specified but the data directory exists and is not writable. Aborting.
[ERROR] Aborting

如果我不包含这样的数据目录,该命令将起作用...

docker run --name percona57g -p 3384:3306 -v /my/custom3384:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=india3384 -e INIT_TOKUDB=1 -d percona/percona-server:5.7 

但是对我来说在主机上挂载数据目录非常重要。任何启用此-v / storage / data3384的方法:/ var / lib / mysql

docker percona
1个回答
1
投票

在docker run之前运行此命令:

chown 1001 /my/custom3384

这是mysql用户的UID,如percona映像的Dockerfile中所示:

https://github.com/percona/percona-docker/blob/master/percona-server/Dockerfile

RUN useradd -u 1001 -r -g 0 -s /sbin/nologin \
            -c "Default Application User" mysql
© www.soinside.com 2019 - 2024. All rights reserved.