DOCKER构建MariaDB
现在 Docker 可所谓是最火的容器技术了,至于什么是 Docker,请到其官方网站或者维基百科查看。
这里想通过一个示例来看看怎么通过 Dockerfile 来构建一个 Docker 镜像。
构建MariaDB容器镜像 Docker 提供了两种方法来生产应用镜像:
通过启动一个基础容器(比如基于某种 Linux 发行版的镜像的容器),然后在容器里执行各种命令来安装相应的软件包,进行配置后,再通过 docker commit 命令把已经更新的容器生产相应的镜像。 通过编写一个 Dockerfile ,然后使用 docker build 命令来构建相应的镜像。 相比第一种方式,通过 Dockerfile 的方式,可以更好的维护镜像,将镜像的 Dockerfile 提交到版本库管理。还可以在 Docker Hub 里创建镜像的自动构建。
下面让我们通过如何编写 Dockerfile 来构建一个 mariadb 的镜像:
首先创建一个目录,如 docker-mariadb ,然后编写一个名为 Dockerfile 的文件,内容如下:
FROM opensuse:13.2 MAINTAINER Mengz You <you.mengz@yahoo.com> ENV MARIADB_MAJOR 10.0 ENV MARIADB_VERSION 10.0.17 ENV MYSQL_ROOT_PASSWORD mysecretpassword ENV MYSQL_DATADIR /var/lib/mysql RUN zypper ar -f -r http://download.opensuse.org/repositories/server:/database/openSUSE_13.2/server:database.repo \ && zypper -n --gpg-auto-import-keys ref RUN zypper -n in --no-recommends mariadb-$MARIADB_VERSION net-tools \ && zypper clean --all RUN mkdir -p /var/lib/mysql \ && mkdir -p /var/log/mysql \ && chown mysql:mysql /var/log/mysql VOLUME /var/lib/mysql COPY docker-entrypoint.