docker之what
Docker 是一個(gè)的應(yīng)用容器引擎徒探,讓開(kāi)發(fā)者可以打包他們的應(yīng)用以及依賴(lài)包到一個(gè)可移植的容器中辈末,然后發(fā)布到任何流行的 Linux 機(jī)器上纽哥,也可以實(shí)現(xiàn)虛擬化引有。容器是完全使用沙箱機(jī)制儒鹿,相互之間不會(huì)有任何接口。
docker是集大成者凳忙。
比如我們配置機(jī)器學(xué)習(xí)環(huán)境時(shí)业踏,新手一般都會(huì)從安裝python,然后pip一大堆包開(kāi)始消略;老手則是下載anaconda環(huán)境得到了所有的包堡称,然后可能會(huì)為不同的項(xiàng)目create不同的隔離的虛擬環(huán)境;但是及時(shí)如此我們經(jīng)常會(huì)遇到比如說(shuō)tensorflow或者其他包之間其實(shí)是有沖突或者不是github某項(xiàng)目所指定的版本艺演,甚至有個(gè)項(xiàng)目他忘記告訴我們用哪個(gè)版本的包。這樣的情況通過(guò)安裝現(xiàn)成的、可運(yùn)行的docker 鏡像就可以解決大部分問(wèn)題胎撤。
docker之why
docker解決的是環(huán)境部署繁雜和容易出錯(cuò)的問(wèn)題晓殊,作者可以把所依賴(lài)的所有環(huán)境都配置好,然后編寫(xiě)Dockerfile伤提,來(lái)配置好環(huán)境依賴(lài)巫俺,命令有:From,maintainer,RUN,CMD,EXPOSE,ENV,ADD,COPY,ENTRYPOINT,WORKDIR,VOLUME,USER,ONBUILD等等
docker之how
docker三個(gè)要素是:image,container肿男,repo介汹。
數(shù)據(jù)卷通常用-v來(lái)配置本地和docker的地址共享
網(wǎng)絡(luò)基礎(chǔ)配置是通過(guò)-p或者容器間的-L連接來(lái)簡(jiǎn)歷網(wǎng)絡(luò)配置的
創(chuàng)建docker鏡像分別有2種方法:1 從頭寫(xiě)dockerfile 2 根據(jù)現(xiàn)有docker進(jìn)行修改,然后commit成為新的鏡像
討論docker的用處
docker運(yùn)用很廣泛舶沛,最常見(jiàn)的是:
- 裝一個(gè)linux系統(tǒng)
- 給Linux系統(tǒng)配置一個(gè)ssh服務(wù)
- 安裝web服務(wù)和應(yīng)用:lamp嘹承,ngnix,tomcat如庭,cms
- 多種數(shù)據(jù)庫(kù)安裝
- 安裝多種煸炒語(yǔ)言
- 開(kāi)發(fā)和測(cè)試中應(yīng)用docker
- 應(yīng)用docker到生產(chǎn)
- 使用docker快速掌握新技術(shù)要點(diǎn)和沉淀