Dockerfile
FROM mysql:5.7.21
ENV \
MYSQL_ROOT_PASSWORD=huangjb \
MYSQL_DATABASE=mgrass \
MYSQL_USER=mgrass \
MYSQL_PASSWORD=mgrassCOPY fordocker.sql /docker-entrypoint-initdb.d/fordocker.sql
EXPOSE 3306/tcp
fordocker.sql
CREATE TABLE
t_warehourse
(
id
int(11) NOT NULL AUTO_INCREMENT,
name
varchar(16) NOT NULL,
remark
varchar(64) NOT NULL,
enabled
tinyint(1) NOT NULL,
created
datetime(6) NOT NULL,
updated
datetime(6) NOT NULL,
PRIMARY KEY (id
)
) ENGINE=InnoDB DEFAULT character set UTF8mb4 collate utf8mb4_bin;
run.sh
docker run --name testmysql -v "$PWD/data":/var/lib/mysql -p 3306:3306 -d mymysql
point:
- mysql 存储文件在:/var/lib/mysql,一般会持久化 bind。这样即使容器退出了,数据还在。
- 日志,在 container 里会输出到标准输出。docker logs testmysql, 可查看。