Docker:第二章:部署項(xiàng)目,對(duì)鏡像,容器的操作

服務(wù)器上的項(xiàng)目訪(fǎng)問(wèn)不了,所以我去看了看容器,果然

那我就刪除容器唄 :docker rm 容器id

docker rm f097e24a9a0f

說(shuō)明:從鏡像到容器,同一個(gè)鏡像構(gòu)建多個(gè)運(yùn)行的 Docker 實(shí)體——容器,鏡像提供了容器運(yùn)行時(shí)所需的程序、庫(kù)、資源、配置等文件,還包含了一些為運(yùn)行時(shí)準(zhǔn)備的一些配置參數(shù)。鏡像是一個(gè)靜態(tài)的概念,鏡像不包含任何動(dòng)態(tài)數(shù)據(jù),其內(nèi)容在構(gòu)建之后也不會(huì)被改變。

可以去看看鏡像

 可以看到倉(cāng)庫(kù),標(biāo)簽,ID,創(chuàng)建時(shí)間和大小

從一個(gè)鏡像運(yùn)行一個(gè)包含一個(gè)主進(jìn)程進(jìn)程的容器命令:docker run -ti --name mall_mall-portal_1 mall/mall-portal:1.0-SNAPSHOT bash

    命令解釋?zhuān)?br>
        Docker run 是從一個(gè)鏡像運(yùn)行一個(gè)容器的指令。
        -ti 參數(shù)的含義是:terminal interactive,這個(gè)參數(shù)可以讓我們進(jìn)入容器的交互式終端。
        --name 指定容器的名字,后面的 mall_mall-portal_1就是我們給這個(gè)容器起的名字。
        mall/mall-portal:1.0-SNAPSHOT 是致命從哪個(gè)鏡像運(yùn)行容器,mall/mall-portal是倉(cāng)庫(kù)名,1.0-SNAPSHOT是標(biāo)簽。
        bash 指明我們使用 bash 終端。

    終端:

        終端,即所謂的命令行界面,又稱(chēng)命令終端,用戶(hù)輸入shell命令用的窗口,跟Windows里的DOS界面差不多。

        shell,Shell就是用戶(hù)和操作系統(tǒng)之間的殼,中介,GUI和CLI都算是Shell,登陸終端可以是登陸了Bash也可能是Csh或者Dash;是操作系統(tǒng)與用戶(hù)交互用的接口,在命令終端里可以使用shell。shell將用戶(hù)輸入翻譯為操作系統(tǒng)能處理的指令。shell提供了一些內(nèi)置命令,也支持調(diào)用外面工具。

        dash,是ubuntu里默認(rèn)的shell。shell有好多種,除支持默認(rèn)的POSIX標(biāo)準(zhǔn)外還支持不同的擴(kuò)展語(yǔ)法,目前最常用的是bash,很多shell學(xué)習(xí)的教程都是針對(duì)bash的。dash除了不支持?jǐn)?shù)組外,其實(shí)和bash差別也不大。ubuntu里可以將默認(rèn)shell由dash改為bash。

docker ps -a再次查看

容器已經(jīng)創(chuàng)建了,但是還是

這我就不服了,刪鏡像,再次重新弄

刪除鏡像之前,要?jiǎng)h除容器才可以刪除鏡像

查看鏡像:
docker images

查看容器:

docker ps -a

發(fā)現(xiàn)已經(jīng)刪除了容器和鏡像

現(xiàn)在重新導(dǎo)入鏡像

在項(xiàng)目的pom.xml加入類(lèi)似的

執(zhí)行操作

查看的導(dǎo)入鏡像

再次執(zhí)行

再次查看

我靠,我要炸了

 重振“熊”心

查看日志

找到錯(cuò)誤信息

這就奇怪了,我項(xiàng)目運(yùn)行是沒(méi)有報(bào)錯(cuò)的

錯(cuò)誤信息:

無(wú)法解析值“$accesskeyid”中的占位符“accesskeyid”

第一時(shí)間想到的是多個(gè)properties文件造成的,但是項(xiàng)目在瀏覽器運(yùn)行沒(méi)有出錯(cuò),可以注冊(cè),說(shuō)明它是可以讀取的

項(xiàng)目目錄:

 后面想到可能是服務(wù)器讀取不到resources中的屬性文件,導(dǎo)致讀取不到accessKey.properties中的accessKeyId的

用個(gè)死辦法,將accessKey.properties中的accessKeyId的數(shù)據(jù)取出來(lái)寫(xiě)死到業(yè)務(wù)上在重新上傳鏡像導(dǎo)入容器

可以看到容器創(chuàng)建了

讓所有項(xiàng)目關(guān)掉重新啟動(dòng)

錯(cuò)誤信息:無(wú)法為服務(wù)商城門(mén)戶(hù)創(chuàng)建容器:b'沖突。集裝箱名稱(chēng)“89F8C97537EBA05840BB0809441E4F16BC3875F0124309088EB771C0D9EE039”已被集裝箱“89F8C97537EB05840BB0809441E4F16BC3875F0124309088EB771C0D9EE039”使用。您必須刪除(或重命名)該容器才能重用該名稱(chēng)?!?br>

然后刪除,重來(lái)一遍就ok了