希望在自己的機器模擬一下公司中微服務的構建,使用docker部署了mysql實例,使用spring boot進行了CRUD(增刪改查)操作進行了一下驗證,在后面的學習中也可以嘗試更多的框架和組件。
ps:實驗環境是:ubuntu 14.04, 64位
1.獲取mysql鏡像
從docker hub的倉庫中拉取mysql鏡像
sudo docker pull mysql
查看鏡像
sudo docker imagesmysql latest 18f13d72f7f0 2 weeks ago 383.4 MB
2.運行一個mysql容器
運行一個mysql實例的命令如下:
復制代碼 代碼如下:sudo docker run --name first-mysql -p 3306:3306 -e MYSQL/_ROOT/_PASSWORD=123456 -d mysql
5b6bf6f629bfe46b4c8786b555d8db1947680138b2de1f268f310a15ced7247a
上述命令各個參數含義:
run 運行一個容器
--name 后面是這個鏡像的名稱
-p 3306:3306 表示在這個容器中使用3306端口(第二個)映射到本機的端口號也為3306(第一個)
-d 表示使用守護進程運行,即服務掛在后臺
查看當前運行的容器狀態:
復制代碼 代碼如下:sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES5b6bf6f629bf
mysql "docker-entrypoint.sh" 32 hours ago Up 5 hours 0.0.0.0:3306->3306/tcp first-mysql
想要訪問mysql數據庫,我的機器上需要裝一個mysql-client。
sudo apt-get install mysql-client-core-5.6
下面我們使用mysql命令訪問服務器,密碼如剛才所示為123456,192.168.95.4為我這臺機器的ip, 3306為剛才所示的占用本物理機的端口(不是在docker內部的端口)
mysql -h192.168.95.4 -P3306 -uroot -p123456
訪問的結果如下:
mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || sys |+--------------------+4 rows in set (0.00 sec)
3.運行第二個mysql實例
使用docker相對于虛擬機而言的原因是耗費很少的資源,可以"開辟"非常多的隔離的環境,所以我們繼續運行第二個mysql實例,還用之前的鏡像,名字為second-mysql。
復制代碼 代碼如下:sudo docker run --name second-mysql -p 3306:3307 -e MYSQL/_ROOT/_PASSWORD=123456 -d
mysql2de4ddb5bfb9b9434af8e72368631e7f4c3f83ee354157328049d7d0
f5523661docker: Error response from daemon: driver failed programming external connectivity on endpoint second-mysql (33aa29d891a1cb540de250bcbbbe9a0a41cd98f61a4e9f129a2ad5db69da4984): Bind for 0.0.0.0:3306 failed: port is already allocated.
為了驗證第一個是本機的端口號,就仍然使用了3306這個端口,那么創建如上所示,發生了錯誤,但是產生了一個容器id,當我們修改端口后還會報錯,因為名字沖突了,也即這次失敗的創建會占用這個名字:
復制代碼 代碼如下:sudo docker run --name second-mysql -p 3307:3306 -e MYSQL/_ROOT/_PASSWORD=123456 -d
mysqldocker: Error response from daemon: Conflict. The name "/second-mysql" is already in use by container 2de4ddb5bfb9b9434af8e72368631e7f4c3f83ee354157328049d7d0f5523661.
新聞熱點
疑難解答
圖片精選