docker compose中如何设置mysql数据库的用户名密码等信息
时间: 2023-08-24 21:06:32 浏览: 246
在使用 Docker Compose 部署 MySQL 数据库时,可以通过设置环境变量的方式来配置用户名、密码等信息。具体步骤如下:
1. 编写 docker-compose.yml 文件
```yaml
version: '3.8'
services:
db:
image: mysql:5.7
container_name: mysql
environment:
MYSQL_ROOT_PASSWORD: example_root_password
MYSQL_DATABASE: example_database
MYSQL_USER: example_user
MYSQL_PASSWORD: example_password
ports:
- "3306:3306"
volumes:
- ./data:/var/lib/mysql
```
在以上代码中,定义了一个名为 db 的服务,使用 mysql:5.7 镜像,设置容器名称为 mysql。然后,通过 environment 属性设置了 MySQL 的 root 用户密码、数据库名称、用户名和密码。最后,将宿主机的 ./data 目录挂载到容器的 /var/lib/mysql 目录,用于持久化存储数据。
2. 启动服务
在终端中,进入 docker-compose.yml 所在的目录,执行以下命令启动服务:
```bash
docker-compose up -d
```
其中,-d 参数表示以后台方式运行服务。
启动服务后,可以通过以下命令查看服务状态:
```bash
docker-compose ps
```
如果一切正常,应该会看到 db 服务的状态为 Up。
3. 连接 MySQL 数据库
在本地电脑上,可以使用 MySQL 客户端工具连接到 Docker 容器中的 MySQL 数据库,命令如下:
```bash
mysql -h 127.0.0.1 -P 3306 -u example_user -p
```
其中,-h 参数指定 MySQL 的 IP 地址为 127.0.0.1(也可以指定为容器的 IP 地址),-P 参数指定 MySQL 的端口为 3306(即 Docker 容器中的 MySQL 的端口),-u 参数指定连接的用户名为 example_user,-p 参数表示需要输入密码。
输入密码后,即可连接到 MySQL 数据库,进行数据操作。
阅读全文