初始化数据库的sql文件
# cat lagou.sql
SET NAMES utf8;
DROP DATABASE IF EXISTS lagou;
create database lagou CHARSET=utf8 COLLATE=utf8_general_ci;
use lagou;
DROP TABLE IF EXISTS `tbuser`;
CREATE TABLE `tbuser`
( `userid` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(20) COLLATE utf8_general_ci DEFAULT NULL,
`password` varchar(20) COLLATE utf8_general_ci DEFAULT NULL,
`userroles` varchar(2) COLLATE utf8_general_ci DEFAULT NULL,
`nickname` varchar(50) COLLATE utf8_general_ci DEFAULT NULL,
PRIMARY KEY (`userid`) ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
INSERT INTO tbuser (username,PASSWORD,userroles,nickname) VALUES ('admin','1234','04','管理员'),('lagou','1234','03','拉勾教育');
编写Dockerfile
# cat Dockerfile
FROM mysql:5.7.31
MAINTAINER mysql from date UTC by Asia/Shanghai "jack@163.com"
ENV TZ Asia/Shanghai
COPY lagou.sql /docker-entrypoint-initdb.d
编译并推送镜像到仓库
docker build -t 10.9.3.231:5000/lagouedu/mysql:5.7.1 .
docker push 10.9.3.231:5000/lagouedu/mysql:5.7.1
运行容器
# docker run -it -d --name mysql01 --restart always -p 3306:3306 --privileged=true -e MYSQL_ROOT_PASSWORD=root -v /data/mysql_data:/var/lib/mysql 10.9.3.231:5000/lagouedu/mysql:5.7.1 --character-set-server=utf8 --collation-server=utf8_general_ci