Docker
what is docker?
docker這貨就是個(gè)可以裝很多容器的新型虛擬機(jī)。一個(gè)容器就是一個(gè)進(jìn)程,這貨做到了容器間的文件系統(tǒng)網(wǎng)絡(luò)等的隔離。容器里能裝鏡像,這個(gè)鏡像呢,至少里面是個(gè)最精簡的Linux系統(tǒng)。你可以在別人的鏡像上搞點(diǎn)小動作然后搞出來之后這個(gè)新的鏡像就是你的了。
Why we choose docker ?
- 利用系統(tǒng)資源能力極高。同配置下傳統(tǒng)虛擬機(jī)你開10個(gè)試試,但這貨可以還遠(yuǎn)不止且打開速度極快。
- docker最后生成的就是一個(gè)Image,這個(gè)image里面包含了環(huán)境,你可以理解成連著生產(chǎn)環(huán)境一塊兒交付。任何平臺,只需配置一次,隨處跑。真正做到write once,run everywhere,不像某N。
How docker works?
- 你的先下載docker,并安裝。
- 為了更好管理你的鏡像,你需要DockerToolbox,可以直接從鏡像倉庫下載官方鏡像(dockerhub)
- 考慮到天朝的網(wǎng)絡(luò),你或許需要一個(gè)代理。
https://www.daocloud.io/mirror#accelerator-doc - 下載好你要的鏡像之后,start一下,看看人家是怎么玩的。Nginx+tornado可以玩轉(zhuǎn)py后端,Jenkins輕松持續(xù)集成,jekyll隨隨便便搞個(gè)blog玩玩
- 不過這終究是別人家的鏡像,我自己怎么做鏡像呢?恩,接下來我們來站在巨人的肩膀上學(xué)習(xí)(
裝逼)
Dockerfile
Dockerfile這貨是啥?這貨是個(gè)腳本,用來構(gòu)建docker鏡像。
桌面temp路徑下demo演示以及具體參數(shù)講解
導(dǎo)出來看看你到底搞的是個(gè)啥玩意 docker export tomcat
Learn docker(todo)
- 數(shù)據(jù)管理
- 容器互聯(lián)
- 網(wǎng)路配置
等等
這貨很吊,實(shí)乃居家旅行之裝逼利器。
一些命令
- docker info:列出docker基本信息,所有容器和鏡像的情況
- docker run --name jenkins -i -t jenkins /bin/bash 創(chuàng)建一個(gè)容器叫Jenkins進(jìn)入Jenkins容器并打開容器內(nèi)的shell
- exit可以切換回自己的電腦用戶
- docker ps -a 查看當(dāng)前系統(tǒng)中容器的列表
- docker inspect 31f4b6b20718(容器名字)查看容器具體信息
- docker rm 31f4b6b20718(容器名字) 干翻這個(gè)容器
- docker images 列出鏡像
- docker build --no-cache 根據(jù)Dockerfile來構(gòu)建鏡像(可指定無緩存,因?yàn)閐ocker每執(zhí)行成功一條指令會緩存一個(gè)新容器)
- docker history tomcat 可以查看tomcat這鏡像build歷史構(gòu)建過程 這貨到底經(jīng)歷了什么
- cat tomcat.tar | sudo docker import - yourname/tomcat 導(dǎo)入容器
- docker stop dockername 停止這個(gè)容器
上面的內(nèi)容寫于三月前,記得那晚搞到一兩點(diǎn),為了整理還寫了ppt,結(jié)果說是周五的技術(shù)分享會還被放鴿子,絕壁是醉了。鏈接就下邊這個(gè)。
https://github.com/smallstrong0/docker-ppt