Ubuntu-18.04 Docker 安装 Percona MySQL

Ubuntu-18.04 Docker 安装 Percona MySQL

方法一: 不指定自定义的数据库文件安装目录

1. 在Docker中查找Percona MySQL 的官方镜像

docker search percona

Ubuntu-18.04Shell 中输入步骤 1. 的结果如下: (操作时间 2019年1月11日09:33:13)

root@ubuntu-server:~# docker search percona
NAME                                          DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
percona                                       Percona Server is a fork of the MySQL relati…   404                 [OK]                
percona/percona-xtradb-cluster                Percona XtraDB Cluster docker image | https:…   66                                      
percona/pmm-server                            Percona Monitoring and Management - PMM Serv…   62                                      
percona/percona-server                        Docker image for Percona Server (from Percon…   34                                      
paulczar/percona-galera                       Percona/Galera Docker image, can use service…   29                                      [OK]
percona/percona-server-mongodb                Percona Server for MongoDB docker images        22                                      
percona/proxysql                              ProxySQL with Percona ProxySQL admin tool       7                                       
perconalab/pmm-server                         PMM Server dev repo                             5                                       
perconalab/percona-xtradb-cluster                                                             4                                       
capttofu/percona_xtradb_cluster_5_6                                                           3                                       
perconalab/percona-server-mongodb-operator    MOVED TO https://hub.docker.com/r/perconalab…   1                                       
perconalab/mongodb_consistent_backup          A Docker image containing github.com/Percona…   1                                       
oprudkyi/percona-latest                       fixes percona:latest                            1                                       [OK]
flowman/percona-xtradb-cluster                Percona XtraDB Cluster for Rancher catalog i…   0                                       [OK]
objectiflibre/percona-galera                  Image officielle Percona modifiée pour faire…   0                                       
pedep/percona-xtrabackup                      Official percona docker image v5.7.16 with x…   0                                       [OK]
onorua/af-percona                                                                             0                                       
flowman/percona-xtradb-cluster-confd          Percona XtraDB Cluster Configuration for Ran…   0                                       [OK]
perconalab/ps-build                           image with all needed depencies to build per…   0                                       
flowman/percona-xtradb-cluster-clustercheck   Percona XtraDB Cluster Python clustercheck f…   0                                       [OK]
perconalab/pxc-openshift                                                                      0                                       
cfidentity/uaa-percona                                                                        0                                       
cfidentity/uaa-percona-4-19-x                                                                 0                                       
chrisshort/docker-centos6-percona-toolkit     A Dockerfile that provides a CentOS 6 contai…   0                                       [OK]
amd64/percona                                 Percona Server is a fork of the MySQL relati…   0                                       

2. 选择 percona/percona-server ,然后pull percona/percona-server镜像

docker pull percona/percona-server #这个默认下载最新版本的 percona mysql 即(percona mysql 8.*.*)
docker pull percona/percona-server:5.7 #下载指定版本的 percona mysql 即(percona mysql 5.7)

3. 查看Docker中下载的镜像

docker images

Ubuntu-18.04Shell 中输入步骤 3. 的结果如下:

root@ubuntu-server:~# docker images
REPOSITORY                                             TAG                 IMAGE ID            CREATED             SIZE
percona/percona-server                                 5.7                 0635053d955a        3 weeks ago         581MB
mysql                                                  5.7                 702fb0b7837f        2 months ago        372MB

4. 更改 Docker 中的镜像的Tag(标签)(非必要步骤

docker tag percona/percona-server percona80
# docker tag 原标签 自定义标签

5. 再次查看 Docker 的镜像

docker images

6.Percona MySQL 创建 Docker 容器

#创建容器
docker create -it percona80
#删除容器
docker rm percona80

7. 开始安装 Percona MySQL 容器

docker run --name percona80 -e MYSQL_ROOT_PASSWORD=123456 -d -i -p 3306:3306  percona80
# MYSQL_ROOT_PASSWORD=密码 

7.1 自定义 Percona MySQL 安装文件存放的目录(非必要步骤

mkdir /home/ununtu/perconamysql/datadir # perconamysql 数据库数据文件目录
mkdir /home/ununtu/perconamysql/config/my.cnf # perconamysql 配置文件目录

docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql -v /home/ununtu/perconamysql/config/my.cnf:/etc/mysql/my.cnf -v /home/ununtu/perconamysql/datadir/:/var/lib/mysql -p 3306:3306 mysql 

8. 查看 Docker 中的容器

docker ps

Ubuntu-18.04Shell 中输入步骤 8. 的结果如下:

root@ubuntu-server:~# docker ps
CONTAINER ID        IMAGE                                                  COMMAND                  CREATED             STATUS              PORTS                               NAMES
af080e87f9fe        mysql:5.7                                              "docker-entrypoint.s…"   8 weeks ago         Up 2 weeks          33060/tcp, 0.0.0.0:3309->3306/tcp   mysql5.7

9. Docker 启动 Percona MySQL容器

docker exec -it  eb14e7f48700  /bin/bash

10. 登录 Percona MySQL

mysql -h127.0.0.1 -u root -p
mysql -u root -p -h 192.168.50.50 -P3309

Ubuntu-18.04Shell 中输入步骤 10. 的结果如下:

grant all privileges on *.* to root@"%" identified by "Passwd"

11. 查看Ubuntu 安装的软件

dpkg --list|grep docker

12. 修改Docker 中 MySQL 的配置文件(my.cnf,mysql.cnf)

#1 有软连接文件 直接修改
vim etc/mysql/my.cnf    #以文件的实际路径为准
vim etc/mysql/mysql.cnf #以文件的实际路径为准

#2 没有软连接文件 复制宿主文件到 Docker 容器中,替换原来的配置文件 适用于Docker 的容器无法启动又要修改容器的配置文件
# 2.1 把容器要修改的配置文件复制出来
#docker cp 容器名:/etc/mysql/mysql.cnf . (最后的 . 不能删除)
docker cp mysql:/etc/mysql/mysql.cnf .
docker cp mysql:/etc/mysql/my.cnf .

# 2.2 修改文件
docker cp mysql.cnf 容器名:/etc/mysql/mysql.cnf
docker cp mysql.cnf mysql:/etc/mysql/mysql.cnf
docker cp my.cnf mysql:/etc/mysql/my.cnf

#3 没有软连接文件 在Docker中启动容器,直接在 Docker 中直接修改配置文件
docker exec -it 容器ID /bin/bash
cd /etc/mysql
vim my.cnf
vim mysql.cnf

你可能感兴趣的:(Docker)