樱花docker mysql,ubuntu 18.04 docker 学习经历(三)Docker mysql

本文详述了如何在Ubuntu上安装Docker CE,并通过Docker下载、安装及运行不同版本的MySQL容器。作者创建了两个MySQL容器,分别运行最新版和5.6版,并展示了如何检查容器状态、端口映射、IP地址以及连接测试。此外,还介绍了如何通过命令行进入容器内部进行进一步操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

20181231 假期闲来无事,整理一下 docker mysql 学习经历

1 、下载安装 docker-ce官网

https://docs.docker.com/install/linux/docker-ce/ubuntu/#install-docker-ce-1

安装 docker-ce

sudo apt-get install docker-ce

2、Docker 理解1)、每一个 Docker container (容器)就是一个特定应用程序,启动后就是一个特定进程

2)、一个容器就是一项服务,每一个 mysql 容器就可以提供一个 mysql 服务和若干实例

3)、这里特意安装 2 个不同版本,宿主机自己也已经安装过 LNMP ,用于对比学习

3、下载、安装、运行 mysql 容器1)、查找 mysql 镜像

docker search mysql

NAME DESCRIPTION STARS OFFICIAL AUTOMATED

mysql MySQL is a widely used, open-source relation… 7585 [OK]

mariadb MariaDB is a community-developed fork of MyS… 2460 [OK]

mysql/mysql-server Optimized MySQL Server Docker images. Create… 569 [OK]

zabbix/zabbix-server-mysql Zabbix Server with MySQL database support 155 [OK]

hypriot/rpi-mysql RPi-compatible Docker Image with Mysql 102

zabbix/zabbix-web-nginx-mysql Zabbix frontend based on Nginx web-server wi… 82 [OK]

centurylink/mysql Image containing mysql. Optimized to be link… 59 [OK]

....

2)、下载安装 mysql 最新版

sudo docker pull mysql

3)、下载安装 mysql 5.6

sudo docker pull mysql:5.6

4)、docker images

REPOSITORY TAG IMAGE ID CREATED SIZE

mysql 5.6 27e29668a08a 47 hours ago 256MB

mysql/mysql-server latest a02eab9e2434 2 months ago 276MB

hello-world latest 4ab4c602aa5e 3 months ago 1.84kB

5)、运行 mysql/mysql-server 容器

sudo docker run --name mysql56 -e MYSQL_ROOT_PASSWORD=123456 -p 3309:3306 -d mysql:5.6

参数说明:

--name mysql

-e MYSQL_ROOT_PASSWORD=123456

-p 3308:3306

6)、运行 mysql 5.6 容器

sudo docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3309:3306 -d mysql/mysql-server

参数说明:

同上

7)、查看容器是否启动、 docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

88c2aaa078d9 mysql:5.6 "docker-entrypoint.s…" 6 seconds ago Up 4 seconds 0.0.0.0:3309->3306/tcp mysql56

f53d369601e4 mysql/mysql-server "/entrypoint.sh mysq…" 3 minutes ago Up 3 minutes (healthy) 33060/tcp, 0.0.0.0:3308->3306/tcp mysql

8)、查看容器端口

docker port mysql

3306/tcp -> 0.0.0.0:3308

容器的 3306 端口映射到宿主机的 3308 端口

docker port mysql56

3306/tcp -> 0.0.0.0:3309

9)、查看容器 IP

docker inspect mysql56

...

"IPAddress": "172.17.0.2",

...

docker inspect mysql

...

"IPAddress": "172.17.0.3",

...

** 以下连接测试 h 也可以使用容器的 IP

** 容器 IP 是动态的,每一次不一定一样

4 、连接 容器的 mysql 测试浏览器测试放到下一步:安装 phpmyadmin 的时候在进行

这里直接在命令行测试

** 注意端口号是大写 P ,小写p指的是密码

1)、连接宿主机自己的的 mysql(以下指令是等效的)

mysql -uroot -p123456

mysql -P3306 -uroot -p123456

mysql -h127.0.0.1 -P3306 -uroot -p123456

mysql -hlocalhost -P3306 -uroot -p123456

查看版本号

mysql> select version();

+-------------------------+

| version() |

+-------------------------+

| 5.7.24-0ubuntu0.18.04.1 |

+-------------------------+

1 row in set (0.00 sec)

退出

mysql> quit

2)、连接容器 mysql 的 mysql (容器名字没有取好,应该也带上一个版本号,例如:mysql57)

mysql -P3308 -u root -p123456 (这个不对!还是连接的宿主机的mysql)

mysql -h127.0.0.1 -P3308 -uroot -p123456

mysql -hlocalhost -P3308 -uroot -p123456 (这个不对!还是连接的宿主机的mysql)

查看版本号

mysql> select version();

+-------------------------+

| version() |

+-------------------------+

| 5.7.24-0ubuntu0.18.04.1 |

+-------------------------+

1 row in set (0.00 sec)

3)、连接容器 mysql56 的 mysql

mysql -P3309 -u root -p123456(这个不对!还是连接的宿主机的mysql)

mysql -h127.0.0.1 -P3309 -uroot -p123456

mysql -hlocalhost -P3309 -uroot -p123456 (这个不对!还是连接的宿主机的mysql)

mysql> select version();

+-----------+

| version() |

+-----------+

| 5.6.42 |

+-----------+

1 row in set (0.00 sec)

5、进入容器测试** 这里只列出容器 mysql56

docker exec -it mysql56 bash

root@88c2aaa078d9:/# ls

bin boot devdocker-entrypoint-initdb.d entrypoint.sh etchome lib lib64 media mnt opt proc root run sbin srv sys tmp usr var

root@88c2aaa078d9:/# mysql -V

mysql Ver 14.14 Distrib 5.6.42, for Linux (x86_64) using EditLine wrapper

root@88c2aaa078d9:/# apt update

进入 mysql

root@88c2aaa078d9:/# mysql -uroot -p123456

Warning: Using a password on the command line interface can be insecure.

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 2

Server version: 5.6.42 MySQL Community Server (GPL)

查询版本号

mysql> select version();

+-----------+

| version() |

+-----------+

| 5.6.42 |

+-----------+

1 row in set (0.00 sec)

6、phpmyadmin 测试待继续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值