
docker手動(dòng)構(gòu)建新鏡像
docker手動(dòng)構(gòu)建新鏡像,運(yùn)行的命令都是旨在container的命令,由于沒有進(jìn)行環(huán)境變量設(shè)置,所以全路徑,而nginx -g這個(gè)參數(shù)是指可以在外面添加指令到nginx的配置文件中,daemon off是指nginx服務(wù)不運(yùn)行在后端而是在前臺(tái)運(yùn)行
docker手動(dòng)構(gòu)建新鏡像,運(yùn)行的命令都是旨在container的命令,由于沒有進(jìn)行環(huán)境變量設(shè)置,所以全路徑,而nginx -g這個(gè)參數(shù)是指可以在外面添加指令到nginx的配置文件中,daemon off是指nginx服務(wù)不運(yùn)行在后端而是在前臺(tái)運(yùn)行
Docker鏡像的上傳,鏡像的管理方式非常像git,可以使用docker push命令上傳自己本地鏡像到倉(cāng)庫(kù),默認(rèn)上傳到DockerHub官方倉(cāng)庫(kù)(需要登陸)
Docker允許通過(guò)外部訪問(wèn)容器或者容器之間互聯(lián)的方式來(lái)提供網(wǎng)絡(luò)服務(wù)。容器啟動(dòng)之后,容器中可以運(yùn)行一些網(wǎng)絡(luò)應(yīng)用,通過(guò)-p或-P參數(shù)來(lái)指定端口映射。a、用-P(大寫)標(biāo)記時(shí),docker會(huì)隨機(jī)選擇一個(gè)端口映射到容器內(nèi)部開放的網(wǎng)絡(luò)端口上。
當(dāng)Docker使Linux容器流行起來(lái),這與幾年前在打包、部署和托管應(yīng)用程序方面開始的革命何其相似。此后,整個(gè)行業(yè)的容器使用呈指數(shù)級(jí)增長(zhǎng),并且與日俱增
如何通過(guò) Docker 的多階段構(gòu)建功能來(lái)大幅度減小鏡像大小,適用于需要在 Dockerfile 中構(gòu)建程式(如 javac),且需要另外安裝編譯工具鏈的鏡像。
宿主機(jī)A 和宿主機(jī)B是網(wǎng)絡(luò)聯(lián)通關(guān)系,在宿主機(jī)A上面創(chuàng)建了多個(gè)容器組成集群,但是我希望通過(guò)宿主機(jī)B也可以訪問(wèn)到宿主機(jī)A的容器,當(dāng)然,你也可能會(huì)說(shuō),端口映射非常方便,如果我需要的端口比較多,或者著如果我臨時(shí)需要增加某些端口,可能設(shè)置起來(lái)比較麻煩,那么如果我們將宿主機(jī)A里面的容器的IP與宿主機(jī)的IP在同一個(gè)網(wǎng)絡(luò),不就可以直接來(lái)進(jìn)行互聯(lián)互通了么
Docker 服務(wù)啟動(dòng)后默認(rèn)會(huì)創(chuàng)建一個(gè) docker0 網(wǎng)橋(其上有一個(gè) docker0 內(nèi)部接口),它在內(nèi)核層連通了其他的物理或虛擬網(wǎng)卡,這就將所有容器和本地主機(jī)都放到同一個(gè)物理網(wǎng)絡(luò)
使用apk add ansible即可在alpine鏡像中添加ansible服務(wù),ansible是新出現(xiàn)的自動(dòng)化運(yùn)維工具,基于Python開發(fā),集合了眾多運(yùn)維工具(puppet、cfengine、chef、func、fabric)的優(yōu)點(diǎn),實(shí)現(xiàn)了批量系統(tǒng)配置、批量程序部署、批量運(yùn)行命令等功能
Docker容器后臺(tái)運(yùn)行,就必須有一個(gè)前臺(tái)進(jìn)程.容器運(yùn)行的命令如果不是那些一直掛起的命令(比如運(yùn)行top,tail),就是會(huì)自動(dòng)退出的
入docker容器后如果退出容器,容器就會(huì)變成Exited的狀態(tài),那么如何退出容器讓容器不關(guān)閉呢?如果要正常退出不關(guān)閉容器,請(qǐng)按Ctrl+P+Q進(jìn)行退出容器