Docker兩個(gè)容器互聯(lián)
在操作之前可以去查看底部的一些docker network的基本命令
后端環(huán)境容器和mysql數(shù)據(jù)庫容器
1、新建一個(gè) Docker network
docker network create -d bridge network1
? -d
: 指定docker網(wǎng)絡(luò)類型,這里我們使用bridge即可
? network1
: 網(wǎng)絡(luò)名稱,根據(jù)需要設(shè)定,一般可以任意命名
或者直接使用,默認(rèn)就是使用的bridge橋接模式
docker network create network1
2、新建兩個(gè) Docker 容器實(shí)例
- 新建一個(gè)docker的數(shù)據(jù)庫容器(如果自己有鏡像的話就不用,直接運(yùn)行你自己mysql容器即可)
docker run --name mysql1 -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:5.7.39
? mysql1 :容器名稱
? my-secret-pw:數(shù)據(jù)庫root用戶的密碼
? mysql: 5.7.39 數(shù)據(jù)庫的版本
-
再新建一個(gè)docker容器(比如一個(gè)ubuntu容器)
拉取一個(gè)ubuntu鏡像
docker pull ubuntu
創(chuàng)建一個(gè)容器實(shí)例
docker run -it ubuntu
3、將這兩個(gè)容器分別連接我們在第一步中創(chuàng)建的network
docker network connect network1 mysql1
docker network connect network1 ubuntu1
其中 network1 是我們第一步創(chuàng)建的docker network
mysql1 和 ubuntu1是我們第二步中創(chuàng)建的兩個(gè)容器的名稱
4、然后進(jìn)入進(jìn)入到我們的ubuntu容器中(進(jìn)入到mysql容器操作會很麻煩),測試是否相連成功
進(jìn)入ubuntu容器
docker exec -it ubuntu1 bash
首先測試ping
命令是否可用,直接在終端輸入ping
,查看是否有該命令,如果沒有,則執(zhí)行以下命令安裝ping
apt-get update
apt install iputils-ping
5、測試
在ubuntu容器中
ping mysql1
出現(xiàn)類似于以上的抓包數(shù)據(jù)即可說明我們連接成功
本人遇到的問題和建議
問題
有一個(gè)使用很久的ubuntu容器始終難以連接其他容器,具體原因不詳,可能是因?yàn)樾薷牧似渲械哪承┡渲谩?/p>
建議
如果遇到問題百度或者google的時(shí)候,讓我們修改一些網(wǎng)絡(luò)配置,一定要注意記錄下來你的修改過程,如果遇到瓶頸直接將容器刪除重建,從頭再來。
查看一個(gè)容器的ID等信息
docker ps
查看容器的原數(shù)據(jù)
docker inspect contianer id 或者是 container name
//docker inspect test01
查看所有的docker網(wǎng)絡(luò)
docker network ls
參考:《菜鳥教程》https://www.runoob.com/docker (若本文章的方案實(shí)施不暢,可直接轉(zhuǎn)至菜鳥教程,非常詳細(xì))
? mysql-docker官方鏡像網(wǎng)址https://hub.docker.com/_/mysql文章來源:http://www.zghlxwxcb.cn/news/detail-474097.html
? 方應(yīng)杭老師github_docker教程https://github.com/FrankFang/oh-my-docker文章來源地址http://www.zghlxwxcb.cn/news/detail-474097.html
到了這里,關(guān)于Docker兩個(gè)容器互聯(lián)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!