docker容器封裝|docker容器使用

docker概念簡介
  • 首先要明白一點(diǎn)docker是一個(gè)容器的概念挨措,那么它就是夸平臺的锣夹。
  • 其次讨盒,docker的優(yōu)勢:解決團(tuán)隊(duì)開發(fā)中環(huán)境不同步,夸容器--link等分布式運(yùn)用愈案。
  • 另外挺尾,針對特別的環(huán)境及運(yùn)行要求,使用docker腳本一鍵解決各種煩惱站绪。等等
安裝
制作docker基礎(chǔ)鏡像
  • 首先選擇基礎(chǔ)什么系統(tǒng)作為你的基礎(chǔ)鏡像遭铺,這點(diǎn)很重要,會直接影響到你線上項(xiàng)目和本地項(xiàng)目的一些隱性bug恢准,所以最好是用線上的運(yùn)行環(huán)境去做打包魂挂,當(dāng)然如果你只是玩玩,那就在虛擬機(jī)中打包就好馁筐。

方法一涂召、直接使用docker社區(qū)的基礎(chǔ)裸機(jī)鏡像

docker pull centos  #Docker Hub鏡像倉庫中拉取centos系統(tǒng)鏡像
  • 然后docker images查看一些幾可以看到你的centOS鏡像了,之后你就可以直接進(jìn)行docker run了敏沉。

方法二果正、以實(shí)際的線上云主機(jī)的系統(tǒng)作為基礎(chǔ)鏡像

  • Step-1 CentOS 7.4.1708系統(tǒng):清除yum緩存,縮小文件系統(tǒng)體積
yum clean all

yum clean allrm -rf /var/cache/yum
  • Step-2
    tar --numeric-owner --exclude=/proc --exclude=/sys -cvf centos7-base.tar /:將制作的centos導(dǎo)入,并命名為:centos6-base
使用制作的docker基礎(chǔ)鏡像創(chuàng)建你的容器
  • 導(dǎo)入docker運(yùn)行依賴的基礎(chǔ)鏡像文件:
    docker import D:\docker\centos.tar(根據(jù)你鏡像存放地址寫)
  • 查看導(dǎo)入的鏡像是否存在盟迟,以及系統(tǒng)自動生成的鏡像名:
    docker image ls
  • 運(yùn)行一個(gè)docker容器 eq:
    docker run -d -t -i -v /softweare/data:/data -p 80:80 d3a1fb5eb673 /bin/bash

完整解析:以交互模式在后臺運(yùn)行一個(gè)容器秋泳,該容器的策略有:0.改容器使用的基礎(chǔ)鏡像是d3a1fb5eb6731.打開一個(gè)tty(要注意history命令只是讀取一個(gè)tty的history,同一個(gè)用戶可以開多個(gè)tty队萤,但是你運(yùn)行history卻只能看到當(dāng)前的tty記錄值)會話(采用/bin/bash)轮锥;2.掛載本機(jī)的/softweare/data目錄到容器中的/data目錄;3.綁定本地80端口映射到容器中的80端口要尔;

  • 進(jìn)入run的容器
    docker attach [id/name]
  • 退出一個(gè)進(jìn)入的容器
    ctrl+pq(pq是兩個(gè)鍵)
  • 查看docker中存在的容器
    docker ps -a
  • 是否需要?jiǎng)?chuàng)建軟鏈接和硬鏈接(看項(xiàng)目需求)
    軟鏈接:ln -s src dst
    硬鏈接:ln src dst
  • 虛擬域名映射
    C:\Windows\System32\drivers\etc下有個(gè)hosts文件(對應(yīng)Linux下面的/etc/hosts)
    127.0.0.1 你需要的域名(要對應(yīng)提供web服務(wù)程序的配置文件中的server_name)
    另:域名后綴不要使用.dev(谷歌已經(jīng)將這個(gè)后綴的頂級域名買斷了,一旦配置dev后綴chrom將自動進(jìn)行轉(zhuǎn)發(fā))新娜。
  • 刪除一個(gè)docker 容器
    docker rm [id/name](docker容器名或者docker容器id)
  • 查看某個(gè)容器運(yùn)行時(shí)的配置
    docker inspect [id/name]
  • 參數(shù)解析:
    -d, --detach=false 指定容器運(yùn)行于前臺還是后臺赵辕,默認(rèn)為false
    -i, --interactive=false 打開STDIN,用于控制臺交互
    -t, --tty=false 分配tty設(shè)備概龄,該可以支持終端登錄还惠,默認(rèn)為false
    -u, --user="" 指定容器的用戶
    -a, --attach=[] 登錄容器(必須是以docker run -d啟動的容器)
    -w, --workdir="" 指定容器的工作目錄
    -c, --cpu-shares=0 設(shè)置容器CPU權(quán)重,在CPU共享場景使用
    -e, --env=[] 指定環(huán)境變量私杜,容器中可以使用該環(huán)境變量
    -m, --memory="" 指定容器的內(nèi)存上限
    -P, --publish-all=false 指定容器暴露的端口
    -p, --publish=[] 指定容器暴露的端口
    -h, --hostname="" 指定容器的主機(jī)名
    -v, --volume=[] 給容器掛載存儲卷蚕键,掛載到容器的某個(gè)目錄
    --volumes-from=[] 給容器掛載其他容器上的卷救欧,掛載到容器的某個(gè)目錄
    --cap-add=[] 添加權(quán)限,權(quán)限清單詳見:http://linux.die.net/man/7/capabilities
    --cap-drop=[] 刪除權(quán)限锣光,權(quán)限清單詳見:http://linux.die.net/man/7/capabilities
    --cidfile="" 運(yùn)行容器后笆怠,在指定文件中寫入容器PID值,一種典型的監(jiān)控系統(tǒng)用法
    --cpuset="" 設(shè)置容器可以使用哪些CPU誊爹,此參數(shù)可以用來容器獨(dú)占CPU
    --device=[] 添加主機(jī)設(shè)備給容器蹬刷,相當(dāng)于設(shè)備直通
    --dns=[] 指定容器的dns服務(wù)器
    --dns-search=[] 指定容器的dns搜索域名,寫入到容器的/etc/resolv.conf文件
    --entrypoint="" 覆蓋image的入口點(diǎn)
    --env-file=[] 指定環(huán)境變量文件频丘,文件格式為每行一個(gè)環(huán)境變量
    --expose=[] 指定容器暴露的端口办成,即修改鏡像的暴露端口
    --link=[] 指定容器間的關(guān)聯(lián),使用其他容器的IP搂漠、env等信息
    --lxc-conf=[] 指定容器的配置文件迂卢,只有在指定--exec-driver=lxc時(shí)使用
    --name="" 指定容器名字,后續(xù)可以通過名字進(jìn)行容器管理桐汤,links特性需要使用名字
    --rm=false 指定容器停止后自動刪除容器(不支持以docker run -d啟動的容器)
    --privileged=false 指定容器是否為特權(quán)容器冷守,特權(quán)容器擁有所有的capabilities
    --restart="no" 指定容器停止后的重啟策略:
    1.no:容器退出時(shí)不重啟
    2.on-failure:容器故障退出(返回值非零)時(shí)重啟
    3.always:容器退出時(shí)總是重啟
當(dāng)你將你容器一切配置妥當(dāng),可以作為團(tuán)隊(duì)使用的基礎(chǔ)容器時(shí)別忘記將你做好的容器生成一個(gè)鏡像
docker export [id/name] [xxx.tar]      #歸檔的包名推薦以.tar的歸檔包

會持續(xù)更新惊科,更新+3拍摇。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市馆截,隨后出現(xiàn)的幾起案子充活,更是在濱河造成了極大的恐慌,老刑警劉巖蜡娶,帶你破解...
    沈念sama閱讀 212,816評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件混卵,死亡現(xiàn)場離奇詭異,居然都是意外死亡窖张,警方通過查閱死者的電腦和手機(jī)幕随,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來宿接,“玉大人赘淮,你說我怎么就攤上這事∧丽” “怎么了梢卸?”我有些...
    開封第一講書人閱讀 158,300評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長副女。 經(jīng)常有香客問我蛤高,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,780評論 1 285
  • 正文 為了忘掉前任戴陡,我火速辦了婚禮塞绿,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘恤批。我一直安慰自己异吻,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,890評論 6 385
  • 文/花漫 我一把揭開白布开皿。 她就那樣靜靜地躺著涧黄,像睡著了一般。 火紅的嫁衣襯著肌膚如雪赋荆。 梳的紋絲不亂的頭發(fā)上笋妥,一...
    開封第一講書人閱讀 50,084評論 1 291
  • 那天,我揣著相機(jī)與錄音窄潭,去河邊找鬼春宣。 笑死,一個(gè)胖子當(dāng)著我的面吹牛嫉你,可吹牛的內(nèi)容都是我干的月帝。 我是一名探鬼主播,決...
    沈念sama閱讀 39,151評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼幽污,長吁一口氣:“原來是場噩夢啊……” “哼嚷辅!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起距误,我...
    開封第一講書人閱讀 37,912評論 0 268
  • 序言:老撾萬榮一對情侶失蹤簸搞,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后准潭,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體趁俊,經(jīng)...
    沈念sama閱讀 44,355評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,666評論 2 327
  • 正文 我和宋清朗相戀三年刑然,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了寺擂。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,809評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡泼掠,死狀恐怖怔软,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情武鲁,我是刑警寧澤爽雄,帶...
    沈念sama閱讀 34,504評論 4 334
  • 正文 年R本政府宣布,位于F島的核電站沐鼠,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜饲梭,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,150評論 3 317
  • 文/蒙蒙 一乘盖、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧憔涉,春花似錦订框、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至国旷,卻和暖如春矛物,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背跪但。 一陣腳步聲響...
    開封第一講書人閱讀 32,121評論 1 267
  • 我被黑心中介騙來泰國打工履羞, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人屡久。 一個(gè)月前我還...
    沈念sama閱讀 46,628評論 2 362
  • 正文 我出身青樓忆首,卻偏偏與公主長得像,于是被迫代替她去往敵國和親被环。 傳聞我的和親對象是個(gè)殘疾皇子糙及,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,724評論 2 351

推薦閱讀更多精彩內(nèi)容