如果我尝试像这样挂载数据目录,我无法启动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 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