docker 安装mysql 实战文档_在docker上安装运行mysql实例
ps:實驗環境是:CentOS Linux release 7.3? 64位
1.獲取mysql鏡像
從docker hub的倉庫中拉取mysql鏡像
docker pull mysql
查看鏡像
docker images
REPOSITORY????????? TAG???????????????? IMAGE ID??????????? CREATED???????????? SIZE
docker.io/mysql???? 5.7???????????????? b4e78b89bcf3??????? 9 days ago????????? 412.3 MB
2.運行一個mysql容器
運行一個mysql實例的命令如下:
docker run --name first-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
5b6bf6f629bfe46b4c8786b555d8db1947680138b2de1f268f310a15ced7247a
上述命令各個參數含義:
run??????????? 運行一個容器
--name???????? 后面是這個鏡像的名稱
-p 3306:3306?? 表示在這個容器中使用3306端口(第二個)映射到本機的端口號也為3306(第一個)
-d???????????? 表示使用守護進程運行,即服務掛在后臺
查看當前運行的容器狀態:
docker ps
CONTAINER ID??????? IMAGE?????????????? COMMAND????????????????? CREATED???????????? STATUS????????????? PORTS??????????????????? NAMES
fe41e155a6ca??????? mysql?????????????? "docker-entrypoint.sh"?? 46 minutes ago????? Up 46 minutes?????? 0.0.0.0:3306->3306/tcp?? first-mysql
想要訪問docker的mysql數據庫,我的機器上需要裝一個mysql-client。
yum install mysql -y
下面我們使用mysql命令訪問服務器,密碼如剛才所示為123456,192.168.1.20為我這臺機器的ip, 3306為剛才所示的占用本物理機的端口(不是在docker內部的端口)
mysql -h192.168.1.20 -P3306 -uroot -p123456
訪問的結果如下:
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
3.運行第二個mysql實例
docker run --name second-mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
5404fb11f29cba07b991f34056d6b40ed0888aa905a45e637e396d071bd7f331
docker ps
CONTAINER ID??? IMAGE??????? COMMAND???????? CREATED?????? STATUS?????? PORTS????????? NAMES
5404fb11f29c??? mysql??????? "docker-entrypoint.sh"? 12 seconds ago?? Up 11 seconds??? 0.0.0.0:3307->3306/tcp? second-mysql
5b6bf6f629bf??? mysql??????? "docker-entrypoint.sh"? 43 minutes ago?? Up 43 minutes??? 0.0.0.0:3306->3306/tcp? first-mysql
如上所示,兩個實例都正常運行了,為了訪問第二個容器,我們指定端口3307登錄到這個mysql的client。
mysql -h192.168.1.20 -P3307 -uroot -p123456
訪問的結果如下:
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
總結
以上是生活随笔為你收集整理的docker 安装mysql 实战文档_在docker上安装运行mysql实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql中uuid的写法_MySQL
- 下一篇: mysql -u -p -d_mysql