Mysql快速部署与初始化

2020-10-27  本文已影响0人  c_gentle

一、创建sql初始化脚本

create database `docker_mysql`;
 
use docker_mysql;
 
-- 建表
DROP TABLE IF EXISTS `user`;
 
CREATE TABLE `user` (
 `id` bigint(20) NOT NULL,
 `created_at` bigint(40) DEFAULT NULL,
 `last_modified` bigint(40) DEFAULT NULL,
 `email` varchar(255) DEFAULT NULL,
 `first_name` varchar(255) DEFAULT NULL,
 `last_name` varchar(255) DEFAULT NULL,
 `username` varchar(255) DEFAULT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 
-- 插入数据
INSERT INTO `user` (`id`, `created_at`, `last_modified`, `email`, `first_name`, `last_name`, `username`)
VALUES
  (0,1490257904,1490257904,'john.doe@example.com','John','Doe','user');

二、拉取mysql镜像

docker pull mysql:5.7

三、在init.sql同级下创建一个Dockerfile,作为Dockerfile文件,现在要增加一些文件复制的代码

FROM mysql:5.7
WORKDIR /docker-entrypoint-initdb.d
ADD init.sql 

首先书写from MySQL:5.7,设置基准镜像,之后,用workdir来设置我们工作目录。把它定位到以后,紧接着使用ADD命令,将当前目录的init.sql文件复制到容器中的目录中,把这三行写上,那么在MySQL5.7容器启动时,就会自动加载配置文件并执行它。

四、进行镜像的构建

docker build -t itlaoqi-sampledb F:\IT加油站\Docker与K8S容器化实践\源代码\sampledb

作为init.sql这个文件被自动地复制到了目录中。下边关键的地方来了,我们要构建容器, 利用docker run -P进行端口映射。我们都知道MySQL默认的端口号是3306,那么我们要进行映射的时候不妨这么写,3310是外部的端口,而容器内部3306写上。

五、运行mysql镜像

docker run -p 3310:3306 -e MYSQL_ROOT_PASSWORD=root itlaoqi-sampledb

同时还有一个关键的设置-e。,其实非常简单,它就是环境常量的意思。 在这儿我们书写MYSQL_ROOT_PASSWORD。这个环境常量是由MYSQL5.7镜像所定义的,在这里用于,设置root的初始化密码用户名root,密码root。最后要增加docker的名称。itlaoqi-sampledb,把这个写好,回车。请看屏幕上就会有一系列的输出,我们要做的只需要等待。好的,当你看到了五点7.26 3306的时候,就代表我们MySQL容器启动成功了,此时可以ctrl+C退出。

六、查看

netstat -ano|grep 3310
上一篇下一篇

猜你喜欢

热点阅读