一、创建mysql文件夹
mkdir mysql
二、进入mysql文件夹,编写 docker-compose.yml文件
version: '3'
services:
mysql1:
environment:
MYSQL_ROOT_PASSWORD: "yourpassword"
MYSQL_USER: 'test'
MYSQL_PASS: 'yourpassword'
image: "docker.io/mysql:latest"
container_name: mysql1
volumes:
- "./db:/var/lib/mysql"
- "./conf/my.cnf:/etc/my.cnf"
- "./init:/docker-entrypoint-initdb.d/"
ports:
- "3305:3306"
- MYSQL_ROOT_PASSWORD为数据库的密码,也就是root用户的密码。
- MYSQL_USER和MYSQL_PASS另外一个用户名和密码。
- image为你拉取镜像的地址和版本,当然也可以换成自己的镜像仓库,这里使用官方的。
- volumes里面的参数为映射本地和docker容器里面的文件夹和目录。.
- ports 为映射主机和容器的端口,前面的端口是你要暴露给外部的端口,后面的端口是docker自己的端口。
三、配置文件和初始化文件
root@localhost conf # cat my.cnf
[mysqld]
user=mysql
default-storage-engine=INNODB
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
root@localhost init # cat init.sql
use mysql;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'yourpassword';
四、启动
docker-compose up -d
评论区