【发布时间】:2021-02-07 15:28:36
【问题描述】:
我有一个MySQL docker image 在 Ubuntu VPS 上的 docker 容器中运行。我通过以下docker-composer.yml 文件使用docker-compose up -d 命令启动MySQL
version: "3"
services:
mysql_server:
image: mysql:8.0.21
restart: always
container_name: mysql_server
environment:
MYSQL_DATABASE: db_name
MYSQL_USER: db_username
MYSQL_PASSWORD: db_password
MYSQL_ROOT_PASSWORD: root_password
volumes:
- mysql_server_data:/var/lib/mysql
- /mysql/files/conf.d:/etc/mysql/conf.d
我遇到了一些性能问题,并希望执行以下操作以提高性能。
-
我希望将
mysql_server_data卷中的数据挂载到/mysql/data而不会丢失任何数据,因为此实例在生产中运行。 -
我还想在
/mysql/files上挂载 MySQL 配置文件,以便更改实例配置以提高性能。
问题
如何将卷的数据位置从mysql_server_data 更改为/mysql/data?
另外,如何将 MySQL 的配置文件挂载到 /mysql/files/conf.d 以允许我更新设置?
我尝试像这样挂载配置文件
volumes:
- /mysql/files/conf.d:/etc/mysql/conf.d
但这创建了一个目录/mysql/files/conf.d,没有配置文件。
【问题讨论】:
标签: docker docker-compose docker-volume docker-container