基础环境准备
操作系统:Centos Linux
要求:docekr 已安装并启用
Dockerfile编写
# 加载镜像; 如果有其他版本,Dockerfile更换为对应版本即可
docker load -i CentOS_7.9.2009.tar
# step1: 编写数据库初始化脚本
vi mysql_init.sh
#!/bin/bash
mysql_install_db --user=root
mysqld_safe --user=root &
sleep 8
mysqladmin -u root password 'root'
mysql -uroot -proot -e "grant all on *.* to 'root'@'%' identified by 'root';flush privileges;"
mysql -uroot -proot -e "create database djangoblog;use djangoblog;source /opt/sqlfile.sql;"
# step2: 编写Dockerfile文件
vi Dockerfile-mariadb
FROM centos:centos7.9.2009
MAINTAINER Chinaskills
RUN rm -rf /etc/yum.repos.d/*
COPY local.repo /etc/yum.repos.d/
COPY yum /root/yum
ENV LC_ALL en_US.UTF-8
RUN yum -y install mariadb-server
COPY mysql_init.sh /opt/
COPY sqlfile.sql /opt
RUN bash /opt/mysql_init.sh
EXPOSE 3306
CMD ["mysqld_safe","--user=root"]
构建镜像
docker build -t my-mysql:v1.0 -f Dockerfile-mariadb .