制作MySQL镜像添加默认数据库及数据

(0) 准备以下目录结构

.
├── Dockerfile
└── sql-scripts
    └── 01-playground.sql
复制代码

(1) 编写数据库脚本

脚本名: 01-playground.sql

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

CREATE TABLE `t_employee` (
  `id` varchar(36) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'ID',
  `username` varchar(40) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '名字',
  `gender` varchar(6) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '性别',
  `password` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '密码',
  `dob` datetime DEFAULT NULL COMMENT '出生日期',
  `title` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '职位',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='雇员';

INSERT INTO `t_employee` VALUES ('1', '应卓', 'MALE', '9e21b083aff2ea3acdd9cf9df5a91141', '1982-08-19 00:00:00', '高级软件工程师');

SET FOREIGN_KEY_CHECKS = 1;
复制代码

显然,这里为了演示方便,数据库里只添加一张表和一条数据。

(2) 编写Dockerfile

内容如下:

FROM mysql:5.7.25

MAINTAINER 应卓 yingzhor@gmail.com

# 数据库名
ENV MYSQL_DATABASE playground

# 默认根用户密码
ENV MYSQL_ROOT_PASSWORD root

# 拷贝初始化sql脚本
COPY ./sql-scripts/ /docker-entrypoint-initdb.d/
复制代码

(3) 构建

docker build -t my-mysql:latest .
复制代码
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值