第一步, 安装 docker:
[root@localhost ~]# yum install docker
第二步, 配置 docker-compose.YAML 文件
1在根目录下创建 docker-compose.YAML:
[root@localhost ~]# vi docker-compose.YAML
文件内容如下:
- version: '2'
- services:
- MySQL:
- network_mode: "bridge"
- environment:
- MYSQL_ROOT_PASSWORD: "yourpassword"
- MYSQL_USER: 'test'
- MYSQL_PASS: 'yourpassword'
- image: "mysql:5.5"
- restart: always
- volumes:
- - "./db:/var/lib/mysql"
- - "./conf/my.cnf:/etc/my.cnf"
- - "./init:/docker-entrypoint-initdb.d/"
- ports:
- - "3306:3306"
其中
network_mode: 为容器的网络模式.
MYSQL_ROOT_PASSWORD: 为数据库的密码, 也就是 root 用户的密.
MYSQL_USER 和 MYSQL_PASS: 代表用户名和密码.
image: 为你拉取镜像的地址和版本, 当然也可以换成自己的镜像仓库, 这里使用官方的.
volumes: 里面的参数为映射本地和 docker 容器里面的文件夹和目录.
ports: 为映射端口.
第三步, 编写 my.cnf 配置文件:
1创建 conf 目录:
[root@localhost ~]# mkdir conf
2进入 conf 目录里面, 然后, 创建 my.cnf 文件:
[root@localhost conf]# vi my.cnf
在 my.cnf 配置文件里面添加以下内容:
- [mysqld]
- user=MySQL
- default-storage-engine=INNODB
- character-set-server=utf8
- [client]
- default-character-set=utf8
- [MySQL]
- default-character-set=utf8
第四步, 编写 init.sql 配置文件:
1创建 init 文件夹:
root@localhost ~]# mkdir init
2进入 init 目录里面, 然后创建 init.sql 文件:
[root@localhost init]# vi init.sql
文件内容如下:
- create database test;
- use test;
- create table user
- (
- id int auto_increment primary key,
- username varchar(64) unique not null,
- email varchar(120) unique not null,
- password_hash varchar(128) not null,
- avatar varchar(128) not null
- );
- insert into user values(1, "zhangsan","test12345@qq.com","passwd","avaterpath");
- insert into user values(2, "lisi","12345test@qq.com","passwd","avaterpath");
第五步, 创建 db 目录放置读取的文件.
[root@localhost ~]# mkdir db
第六步, 启动数据库.
[root@localhost ~]# docker-compose pull
image.PNG
启动成功.
第七步, 下载镜像.
[root@localhost ~]# docker-compose up -d
第八步, 查看是否已经连接 (此处用的是 navicat).
image.PNG
出现下图, 则代表连接成功:
image.PNG
来源: http://www.jianshu.com/p/ab3367b2e6b4