docker安装mysql 并处理时差问题
安装方式基本有两种,一种是pull的方式,一种是Dockerfile的方式,由于pull的方式pull下来后还需配置许多东西且不便于复用,个人比较喜欢使用Dockerfile的方式
所有docker支持的镜像基本都在https://hub.docker.com/
docker的官网上能找到合适版本的Dockerfile
首先创建mysql目录
mkdir mysql
cd mysql
创建conf目录,mysql的默认配置文件是 镜像里的/etc/mysql/my.cnf 文件。如果想要自定义配置,建议向宿主机conf 目录中创建 .cnf 文件,然后配置-v挂载。新建的文件可以任意起名,只要保证后缀名是 cnf 即可。新建的文件中的配置项可以覆盖镜像 /etc/mysql/my.cnf 中的配置项(若无自定义配置则可跳过,下面的run命令的-v /home/mhyj_dev/mysql/conf:/etc/mysql/conf.d也可去掉)。
mkdir conf
vim Dockerfile,然后把复制的Dockerfile内容粘贴进去
vim Dockerfile
Dockerfile的内容为(在官网上也能找到你要的mysql的版本的Dockerfile,我这里是mysql5.7.26的版本)
FROM debian:stretch-slim
RUN \
# install tzdata installation package
&& apk add --no-cache tzdata \
# Set the time zone
&& echo "${TIME_ZONE}" > /etc/timezone \
&& ln -sf /usr/share/zoneinfo/${TIME_ZONE} /etc/localtime \
# add our user and group first to make sure their IDs get assigned consistently, regardless of whatever dependencies get added
RUN groupadd -r