├── Dockerfile ├── LICENSE └── README.md /Dockerfile: -------------------------------------------------------------------------------- 1 | # 2 | # MySQL Dockerfile 3 | # 4 | # https://github.com/dockerfile/mysql 5 | # 6 | 7 | # Pull base image. 8 | FROM dockerfile/ubuntu 9 | 10 | # Install MySQL. 11 | RUN \ 12 | apt-get update && \ 13 | DEBIAN_FRONTEND=noninteractive apt-get install -y mysql-server && \ 14 | rm -rf /var/lib/apt/lists/* && \ 15 | sed -i 's/^\(bind-address\s.*\)/# \1/' /etc/mysql/my.cnf && \ 16 | sed -i 's/^\(log_error\s.*\)/# \1/' /etc/mysql/my.cnf && \ 17 | echo "mysqld_safe &" > /tmp/config && \ 18 | echo "mysqladmin --silent --wait=30 ping || exit 1" >> /tmp/config && \ 19 | echo "mysql -e 'GRANT ALL PRIVILEGES ON *.* TO \"root\"@\"%\" WITH GRANT OPTION;'" >> /tmp/config && \ 20 | bash /tmp/config && \ 21 | rm -f /tmp/config 22 | 23 | # Define mountable directories. 24 | VOLUME ["/etc/mysql", "/var/lib/mysql"] 25 | 26 | # Define working directory. 27 | WORKDIR /data 28 | 29 | # Define default command. 30 | CMD ["mysqld_safe"] 31 | 32 | # Expose ports. 33 | EXPOSE 3306 34 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) Dockerfile Project 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## MySQL Dockerfile 2 | 3 | 4 | This repository contains **Dockerfile** of [MySQL](http://dev.mysql.com/) for [Docker](https://www.docker.com/)'s [automated build](https://registry.hub.docker.com/u/dockerfile/mysql/) published to the public [Docker Hub Registry](https://registry.hub.docker.com/). 5 | 6 | 7 | ### Base Docker Image 8 | 9 | * [dockerfile/ubuntu](http://dockerfile.github.io/#/ubuntu) 10 | 11 | 12 | ### Installation 13 | 14 | 1. Install [Docker](https://www.docker.com/). 15 | 16 | 2. Download [automated build](https://registry.hub.docker.com/u/dockerfile/mysql/) from public [Docker Hub Registry](https://registry.hub.docker.com/): `docker pull dockerfile/mysql` 17 | 18 | (alternatively, you can build an image from Dockerfile: `docker build -t="dockerfile/mysql" github.com/dockerfile/mysql`) 19 | 20 | 21 | ### Usage 22 | 23 | #### Run `mysqld-safe` 24 | 25 | docker run -d --name mysql -p 3306:3306 dockerfile/mysql 26 | 27 | #### Run `mysql` 28 | 29 | docker run -it --rm --link mysql:mysql dockerfile/mysql bash -c 'mysql -h $MYSQL_PORT_3306_TCP_ADDR' 30 | --------------------------------------------------------------------------------