1. 部署前提:
服务器具备docker 和 docker-compose环境
2. 镜像准备:
- mysql:
DockerFile文件:
FROM mysql:5.7.41 COPY *.sql /docker-entrypoint-initdb.d/
初始化sql脚本xxx.sql放在DockerFile文件同级目录下
执行指令:
docker build -f dockerfile_mysql -t mysql:1.0.0 .
3. Docker-Compose
version: "3" services: mysql: hostname: mysql container_name: mysql image: mysql:1.0.0 volumes: - /home/mysql/data:/var/lib/mysql - /home/mysql/config/my.cnf:/etc/my.cnf environment: - MYSQL_ROOT_PASSWORD=123456 ports: - 13306:3306 restart: on-failure
其中 /home/mysql/config/my.cnf 文件需要提前准备好放在指定目录下, 这样后期如果要修改my.cnf参数, 可以直接在宿主机上改好, 再重启容器即可
/home/mysql/data文件夹是为了映射挂载mysql的数据文件, 这样可以保证容器删除后重新构建数据依旧存在, 相当于做了一个数据持久化至宿主机
运行容器:
docker-compose -f my-compose.yaml up -d mysql
标签:Compose,sql,cnf,mysql,home,docker,my From: https://www.cnblogs.com/Baker-Street/p/17607910.html