如何自定义一个docker版的mysql镜像呢?
下文笔者讲述自定义一个个性化的docker版mysql镜像的方法及示例分享,如下所示
个性化docker版的mysql镜像的实现思路:
1.下载基础mysql镜像
2.在此基础上自定义mysql镜像
3.启动mysql镜像,即可实现docker版的mysql镜像
例:自定义一个docker版的mysql镜像的示例
一、下载MySQL官方镜像
docker pull mysql/mysql-server
二、创建自定义的MySQL镜像
1、创建一个Dockerfile文件
内容如下所示:
FROM mysql/mysql-server
# 安装telnet和net-tools
RUN yum update && yum install -y telnet net-tools
# 添加自定义配置文件
ADD my.cnf /etc/mysql/my.cnf
# 添加初始化脚本
ADD init.sql /docker-entrypoint-initdb.d/
# 添加数据备份
ADD backup.sql /tmp/backup.sql
Dockerfile文件相关说明:
•FROM mysql/mysql-server:使用MySQL官方镜像作为基础镜像。
•RUN yum update && yum install -y telnet net-tools:安装telnet和net-tools工具。
•ADD my.cnf /etc/mysql/my.cnf:添加自定义配置文件my.cnf到/etc/mysql/目录下。
•ADD init.sql /docker-entrypoint-initdb.d/:添加初始化脚本init.sql到/docker-entrypoint-initdb.d/目录下。
•ADD backup.sql /tmp/backup.sql:添加数据备份backup.sql到/tmp/目录下。
2.2 构建镜像
docker build -t java265-mysql:latest .
-t用来为镜像命名
:latest表示使用最新版本
三、运行MySQL容器
docker run -d -p 3306:3306 --name my-mysql20230506 -v /data/mysql:/var/lib/mysql java265-mysql:latest
其中
-d表示在后台运行容器
-p将容器的3306端口映射到主机的3306端口
-v将主机的/data/mysql目录映射到容器的/var/lib/mysql目录
my-mysql20230506 指容器名称
//检测mysql 是否启动成功
mysql -h 127.0.0.1 -P 3306 -u root -p
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


