MySQL数据库
当使用Docker Compose来部署MySQL容器时,你需要创建一个docker-compose.yml文件,其中包含有关MySQL容器的配置信息。下面是一个简单的示例:
在上面的示例中,我们定义了一个名为mysql的服务,它使用最新的MySQL镜像(mysql:latest)。你可以根据需要选择其他版本的MySQL镜像。container_name指定了容器的名称,你可以根据自己的喜好进行更改。
version: '3'
services:
mysql:
image: mysql:latest
container_name: mysql_container
restart: always
ports:
- 3306:3306
environment:
MYSQL_ROOT_PASSWORD: root_password
MYSQL_DATABASE: my_database
MYSQL_USER: my_user
MYSQL_PASSWORD: my_password
volumes:
- mysql_data:/var/lib/mysql
volumes:
mysql_data:
restart: always表示容器始终在后台运行,并且在失败时会自动重新启动。
ports部分将宿主机的3306端口映射到容器的3306端口,这样你就可以通过宿主机访问MySQL服务了。
environment部分设置了MySQL的环境变量。其中,MYSQL_ROOT_PASSWORD用于设置root用户的密码,MYSQL_DATABASE用于创建一个数据库,MYSQL_USER和MYSQL_PASSWORD用于创建一个具有访问该数据库权限的用户。你可以根据自己的需求进行更改。
volumes部分定义了一个名为mysql_data的数据卷,用于存储MySQL的数据文件。这样,即使容器被删除或重新创建,数据也会保留下来。
最后,在文件的末尾,我们定义了数据卷mysql_data。
要运行该Docker Compose文件,请确保你已经安装了Docker和Docker Compose,并在包含docker-compose.yml文件的目录中运行以下命令:
docker-compose up -d
这将使用Docker Compose在后台启动MySQL容器。你可以使用其他Docker Compose命令来管理容器,如停止、重新启动等。
MySQL数据库+phpmyadmin
[password]
实例,已经测试成功
version: '3'
services:
mysql:
image: mysql:latest
container_name: mysql_container
ports:
- 3306:3306
environment:
MYSQL_ROOT_PASSWORD: admin888* #用于设置root用户的密码
MYSQL_DATABASE: my_database #用于创建一个数据库
MYSQL_USER: yuebao #用于创建一个具有访问该数据库权限的用户
MYSQL_PASSWORD: 1314 用于创建用户密码
volumes:
- ./mysql_data:/var/lib/mysql
restart: always
phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: web_phpmyadmin
ports:
- 8088:80
environment:
# PMA ARBITRARY=1
- PMA_HOST=mysql
- PMA_USER=root
- PMA_PASSWORD=admin888*
links:
- mysql
restart: always
[/password]