摘要:玩了后相信很多童鞋都會(huì)遇到一個(gè)問題就是我們部署的應(yīng)用的容器連不上另一個(gè)數(shù)據(jù)庫容器這個(gè)就好玩了在我多方查看查找資料問大佬的方式下終于找到了解決方案首先我們準(zhǔn)備一個(gè)項(xiàng)目這里我以為例子首先我們把你的項(xiàng)目打包一個(gè)包出來改后綴為然后上傳到你的上面去解
玩了docker后相信很多童鞋都會(huì)遇到一個(gè)問題,就是我們部署的應(yīng)用的容器連不上另一個(gè)數(shù)據(jù)庫容器
這個(gè)就好玩了,在我多方查看,查找資料問大佬的方式下,終于找到了解決方案
首先我們準(zhǔn)備一個(gè)項(xiàng)目,這里我以springboot為例子
首先我們把你的項(xiàng)目打包一個(gè)war包出來,改后綴為.zip
然后上傳到你的linux上面去
解壓到你的臨時(shí)數(shù)據(jù)卷掛載目錄(解壓用unzip工具,或者直接本地解壓然后上傳ROOT中)
好了,接下來就是linux命令操作了
先把你的數(shù)據(jù)庫掛起來
docker run -d -p 3306:3306 --name mysql mysql:5.7.24
(數(shù)據(jù)表啥的自己搞,我另一篇文章里面有寫怎么加載數(shù)據(jù)卷實(shí)現(xiàn)數(shù)據(jù)庫的數(shù)據(jù)持久化的)
以掛載卷的形式啟動(dòng)你的tomcat
docker run -d -p 8080:8080 --name sbv /usr/local/docker/tomcat/ROOT/:/usr/local/tomcat/webapps/ROOT tomcat
run 啟動(dòng)
-d 放進(jìn)后臺(tái)
-p 8080:8080 將宿主機(jī)的8080端口映射到容器的8080端口(左宿右容)
--name 給你啟動(dòng)的容器起個(gè)名字,我這里是sbv
--v 將宿主機(jī)的目錄掛載到容器中去啟動(dòng),和替換差不多的意思
跑起來了,是吧,你上你的應(yīng)用訪問下試試
我這邊是報(bào)錯(cuò)了
沒錯(cuò),就是這樣子,然后我們排除下這問題
由于docker是沙箱機(jī)制的,所以我們可以認(rèn)為容器內(nèi)部是獨(dú)立的一個(gè)系統(tǒng),不能連接到外部的網(wǎng)絡(luò)
那么怎么解決呢??
莫擔(dān)心,docker官方已經(jīng)給我們想好了
https://docs.oracle.com/cd/E3...
--link 父容器:當(dāng)前連接名 -v
因此我們只需要用--link命令指定一個(gè)父容器即可
這里的話我們可以這樣寫
docker run -d -p 8080:8080 --name sbv --link mysql:tomysql -v /usr/local/docker/tomcat/ROOT/:/usr/local/tomcat/webapps/ROOT tomcat
注意我這邊的父容器也就是我的數(shù)據(jù)庫名字是mysql,然后當(dāng)前連接名字是tomysql記住這個(gè)名字,等下還要用呢
把你的數(shù)據(jù)庫連接配置改成這個(gè)這個(gè)連接名,然后以--link的方式啟動(dòng)即可訪問數(shù)據(jù)庫了
當(dāng)然你可以連接多個(gè)容器來啟動(dòng)你的app
docker run -d -p 8080:8080 --name sbv --link mysql:tomysql -v --link redis:toredis -v /usr/local/docker/tomcat/ROOT/:/usr/local/tomcat/webapps/ROOT tomcat
另一個(gè)方案是改host文件的方式,我沒試,因?yàn)闀r(shí)間原因,同時(shí)也覺得麻煩,有空的童鞋們記幾試試啊
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/27573.html
摘要:分享實(shí)錄云計(jì)算技術(shù)源于互聯(lián)網(wǎng)公司,現(xiàn)在云計(jì)算已經(jīng)是下一代企業(yè)級(jí)的發(fā)展趨勢(shì)。如何做云計(jì)算一直是云計(jì)算技術(shù)的領(lǐng)導(dǎo)者。互聯(lián)網(wǎng)公司的快速發(fā)展,已經(jīng)印證了云計(jì)算技術(shù)和云原生應(yīng)用相比傳統(tǒng)構(gòu)架的巨大優(yōu)勢(shì)。 今天小數(shù)又給大家?guī)硪黄韶洕M滿的分享——來自KVM社區(qū)線上群分享的實(shí)錄,分享嘉賓是數(shù)人云CEO王璞,題目是《云計(jì)算與 Cloud Native》。這是數(shù)人云在KVM社區(qū)群分享的第一彈,之后還有數(shù)...
摘要:在每臺(tái)主機(jī)上我們執(zhí)行列出主機(jī)和網(wǎng)絡(luò)接口。其它的應(yīng)用服務(wù)容器每個(gè)容器有兩個(gè)地址,一個(gè)屬于子網(wǎng),另一個(gè)屬于的子網(wǎng)。雖然這會(huì)帶來一些性能上的影響,但是可以確保的網(wǎng)絡(luò)默認(rèn)是安全的。 本文中,我們首先將Rancher部署到EC2實(shí)例上,并且添加新的主機(jī),之后用Rancher的Catalog啟動(dòng)了RocketChat應(yīng)用,緊接著對(duì)運(yùn)行中的容器的網(wǎng)絡(luò)接口和其他屬性的進(jìn)行了分析。 同時(shí),我們簡(jiǎn)要介紹了...
摘要:參考鏈接外部容器的幾種方式參考內(nèi)容中有些許實(shí)現(xiàn)不到位的地方,按照測(cè)試?yán)?,跑不起來,故參考后進(jìn)行了一些修改,重新寫了下文章記錄一下,有些自己理解的可能不是很到位,大家湊合著看下,有問題歡迎指出,在此先謝過了,。 參考:Docker Compose:鏈接外部容器的幾種方式參考內(nèi)容中有些許實(shí)現(xiàn)不到位的地方,按照測(cè)試?yán)?,跑不起來,故參考后進(jìn)行了一些修改,重新寫了下文章記錄一下,有些自己理解...
閱讀 2057·2021-11-23 10:03
閱讀 4761·2021-11-22 09:34
閱讀 2583·2021-10-08 10:05
閱讀 2309·2019-08-30 15:53
閱讀 1755·2019-08-30 13:56
閱讀 1217·2019-08-29 16:52
閱讀 1196·2019-08-26 13:31
閱讀 3404·2019-08-26 11:45