實(shí)戰(zhàn):阿里云ecs上部署mongoDB的docker容器


title: docker基本使用
tags:

  • 學(xué)習(xí)筆記
  • docker
  • linux

以下的命令有的需要root權(quán)限,如果報(bào)錯(cuò)請(qǐng)使用root蔓钟,或加sudo

1永票、添加yum源卵贱。

yum install epel-release –y
yum clean all# yum list

2滥沫、安裝并運(yùn)行Docker。

yum install docker-io –y
systemctl start docker

3键俱、檢查安裝結(jié)果兰绣。

docker info 

出現(xiàn)以下xin說(shuō)明信息則表明安裝成功。

2

docker基本用法

1编振、Docker守護(hù)進(jìn)程管理缀辩。

systemctl start docker    #運(yùn)行Docker守護(hù)進(jìn)程
systemctl stop docker      #停止Docker守護(hù)進(jìn)程
systemctl restart docker   #重啟Docker守護(hù)進(jìn)程

2、鏡像管理踪央。

下載基礎(chǔ)鏡像臀玄,具體操作可參考如何下載docker鏡像膘螟,本文使用的是來(lái)自阿里云倉(cāng)庫(kù)的Apache鏡像竿痰。您可在阿里云docker市場(chǎng)搜索更多鏡像吭露。

# docker pull registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5

修改標(biāo)簽崭歧,由于阿里云倉(cāng)庫(kù)鏡像的鏡像名稱很長(zhǎng)潭苞,可以修改鏡像標(biāo)簽以便記憶區(qū)分混萝。

# docker tag  registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5:latest aliweb:v1

查看已有鏡像狱杰。

# docker images

強(qiáng)制刪除鏡像屹耐。

# docker  rmi  –f  registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5

3少漆、容器管理臼膏。e121d5f99e1e是執(zhí)行docker images命令查詢到的IMAGE ID,使用docker run命令進(jìn)入容器示损。

# docker run –ti e121d5f99e1e /bin/bash

使用exit可以退出當(dāng)前容器渗磅。run命令加上–d參數(shù)可以在后臺(tái)運(yùn)行容器,—name指定容器命名為apache检访。

# docker run -d --name apache e121d5f99e1e

進(jìn)入后臺(tái)運(yùn)行的容器夺溢。

# docker exec -ti apache /bin/bash

將容器做成鏡像。

# docker commit containerID/containerName  newImageName:tag

為了方便測(cè)試和恢復(fù)烛谊,先將源鏡像運(yùn)行起來(lái)后再做一個(gè)命名簡(jiǎn)單的鏡像做測(cè)試风响。

# docker commit 4c8066cd8c01 apachephp:v1

運(yùn)行容器并將宿主機(jī)的8080端口映射到容器里去。

# docker run -d -p 8080:80 apachephp:v1

在瀏覽器輸入宿主機(jī)ip加8080端口訪問(wèn)測(cè)試丹禀,出現(xiàn)以下內(nèi)容則說(shuō)明運(yùn)行成功状勤。

1

鏡像制作

1鞋怀、準(zhǔn)備dockerfile內(nèi)容。

# vim Dockerfile FROM apachephp:v1  #聲明基礎(chǔ)鏡像來(lái)源MAINTAINER DTSTACK #聲明鏡像擁有者RUN mkdir /dtstact #RUN后面接容器運(yùn)行前需要執(zhí)行的命令持搜,由于Dockerfile文件不能超過(guò)127行密似,因此當(dāng)命令較多時(shí)建議寫(xiě)到腳本中執(zhí)行ENTRYPOINT ping www.aliyun.com #開(kāi)機(jī)啟動(dòng)命令,此處最后一個(gè)命令需要是可在前臺(tái)持續(xù)執(zhí)行的命令葫盼,否則容器后臺(tái)運(yùn)行時(shí)會(huì)因?yàn)槊顖?zhí)行完而退出残腌。

2、構(gòu)建鏡像贫导。

docker build -t webcentos:v1 .   # . 是Dockerfile文件的路徑抛猫,不能忽略docker images                    #查看是否創(chuàng)建成功docker run –d webcentos:v1       #后臺(tái)運(yùn)行容器docker ps                        #查看當(dāng)前運(yùn)行中的容器docker ps –a                     #查看所有容器,包括未運(yùn)行中的docker logs CONTAINER ID/IMAGE   #如未查看到剛才運(yùn)行的容器孩灯,則用容器id或者名字查看啟動(dòng)日志排錯(cuò)docker commit fb2844b6c070 dtstackweb:v1 #commit 后接容器id 和構(gòu)建新鏡像的名稱和版本號(hào)闺金。docker images                    #列出本地(已下載的和本地創(chuàng)建的)鏡像docker push                      #將鏡像推送至遠(yuǎn)程倉(cāng)庫(kù),默認(rèn)為 Docker Hub

3峰档、將鏡像推送到registry败匹。

docker login --username=dtstack_plus registry.cn-shanghai.aliyuncs.com #執(zhí)行后輸入鏡像倉(cāng)庫(kù)密碼docker tag [ImageId] registry.cn-shanghai.aliyuncs.com/dtstack123/test:[鏡像版本號(hào)]docker push registry.cn-shanghai.aliyuncs.com/dtstack123/test:[鏡像版本號(hào)]

在鏡像倉(cāng)庫(kù)能查看到鏡像版本信息則說(shuō)明push成功

其中[ImageId],[鏡像版本號(hào)]請(qǐng)您根據(jù)自己的鏡像信息進(jìn)行填寫(xiě)。

Cannot connect to the Docker daemon. Is the docker daemon running on this host?


title: docker中運(yùn)行mongoDB
tags:

  • 學(xué)習(xí)筆記
  • docker
  • linux
  • mongoDB

在docker中使用MongoDB

通過(guò)Docker運(yùn)行Mongo

docker run --name [name] -p 27017:27017 -v /data/db:/data/db -d mongo 
  • -v/data/db:/data/db 將主機(jī)的/data/db文件夾掛載在容器內(nèi)的/data/db

    在docker容器中運(yùn)行MongoDB所產(chǎn)生的數(shù)據(jù)會(huì)保存在容器內(nèi)部讥巡,容器停止后數(shù)據(jù)也將隨之消失無(wú)法得到保存掀亩。所以為了將容器中的數(shù)據(jù)持久化,需要使用docker的數(shù)據(jù)卷欢顷,將主機(jī)上的文件夾映射到容器內(nèi)部槽棍。這樣容器運(yùn)行時(shí)所產(chǎn)生的數(shù)據(jù)將會(huì)保存在主機(jī)的文件中。

    NOTE: mac os 需要在Docker -> Preferences... -> File Sharing中添加共享的目錄
  • -p 27017:27017將容器內(nèi)mongo的默認(rèn)27017端口映射至主機(jī)的27017端口

  • -d后臺(tái)運(yùn)行

  • —auth開(kāi)啟Mongo的驗(yàn)證

進(jìn)入Mongo shell

在主機(jī)上進(jìn)入

docker exec -it <YOUR-NAME> mongo 

設(shè)置管理員/用戶

{
  user:'testUser',
  pwd:'testPass',
  roles:[{role:'readWrite',db:'test'}]
};

end for ;

驗(yàn)證

通過(guò)本地mongo shell 連接遠(yuǎn)程服務(wù)器的mongoDB

mongo  xx.xx.xx.xx:xxx/test -u "admin" -p "adminPass" 
問(wèn)題

在阿里云上通過(guò)docker運(yùn)行mongo吱涉,在本地使用mongo嘗試連接刹泄,連接不上

MongoDB shell version v3.4.0
connecting to: mongodb://xx.xx.xx.xx:xxxx
2017-09-08T16:16:28.584+0800 W NETWORK  [main] Failed to connect to 47.52.30.225:25714 after 5000 milliseconds, giving up.
2017-09-08T16:16:28.587+0800 E QUERY    [main] Error: couldn't connect to server xx.xx.xx.xx:xxxx, connection attempt failed :
connect@src/mongo/shell/mongo.js:234:13
@(connect):1:6
exception: connect failed
解決

在本地連接不上遠(yuǎn)程的數(shù)據(jù)庫(kù)是因?yàn)槲覍ocker端口和服務(wù)器端口映射寫(xiě)反了。

出現(xiàn)類似的問(wèn)題應(yīng)該如何排查

  1. 檢查端口號(hào)配置
  2. 檢查賬號(hào)密碼設(shè)置
  3. 檢查阿里云安全組設(shè)置

購(gòu)買的云主機(jī)服務(wù)怎爵,初始的時(shí)候除了ssh外的端口特石,所有對(duì)外的端口都是被屏蔽的。需要去手動(dòng)去阿里云的安全組中將需要用到的端口配置打開(kāi)鳖链,在外網(wǎng)才能訪問(wèn)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末姆蘸,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子芙委,更是在濱河造成了極大的恐慌逞敷,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,183評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件灌侣,死亡現(xiàn)場(chǎng)離奇詭異推捐,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)侧啼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)牛柒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)堪簿,“玉大人,你說(shuō)我怎么就攤上這事皮壁⊥指” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,766評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵蛾魄,是天一觀的道長(zhǎng)虑瀑。 經(jīng)常有香客問(wèn)我,道長(zhǎng)滴须,這世上最難降的妖魔是什么舌狗? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,854評(píng)論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮描馅,結(jié)果婚禮上把夸,老公的妹妹穿的比我還像新娘而线。我一直安慰自己铭污,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,871評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布膀篮。 她就那樣靜靜地躺著嘹狞,像睡著了一般。 火紅的嫁衣襯著肌膚如雪誓竿。 梳的紋絲不亂的頭發(fā)上磅网,一...
    開(kāi)封第一講書(shū)人閱讀 52,457評(píng)論 1 311
  • 那天,我揣著相機(jī)與錄音筷屡,去河邊找鬼涧偷。 笑死,一個(gè)胖子當(dāng)著我的面吹牛毙死,可吹牛的內(nèi)容都是我干的燎潮。 我是一名探鬼主播,決...
    沈念sama閱讀 40,999評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼扼倘,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼确封!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起再菊,我...
    開(kāi)封第一講書(shū)人閱讀 39,914評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤爪喘,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后纠拔,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體秉剑,經(jīng)...
    沈念sama閱讀 46,465評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,543評(píng)論 3 342
  • 正文 我和宋清朗相戀三年稠诲,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了侦鹏。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片候址。...
    茶點(diǎn)故事閱讀 40,675評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖种柑,靈堂內(nèi)的尸體忽然破棺而出岗仑,到底是詐尸還是另有隱情,我是刑警寧澤聚请,帶...
    沈念sama閱讀 36,354評(píng)論 5 351
  • 正文 年R本政府宣布荠雕,位于F島的核電站,受9級(jí)特大地震影響驶赏,放射性物質(zhì)發(fā)生泄漏炸卑。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,029評(píng)論 3 335
  • 文/蒙蒙 一煤傍、第九天 我趴在偏房一處隱蔽的房頂上張望盖文。 院中可真熱鬧,春花似錦蚯姆、人聲如沸五续。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,514評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)疙驾。三九已至,卻和暖如春郭毕,著一層夾襖步出監(jiān)牢的瞬間它碎,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,616評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工显押, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留扳肛,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,091評(píng)論 3 378
  • 正文 我出身青樓乘碑,卻偏偏與公主長(zhǎng)得像挖息,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蝉仇,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,685評(píng)論 2 360

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

  • 0. 前言 docker是什么旋讹?docker是用GO語(yǔ)言開(kāi)發(fā)的應(yīng)用容器引擎,基于容器化轿衔,沙箱機(jī)制的應(yīng)用部署技術(shù)沉迹。可...
    sessionboy閱讀 3,862評(píng)論 2 49
  • Docker — 云時(shí)代的程序分發(fā)方式 要說(shuō)最近一年云計(jì)算業(yè)界有什么大事件害驹?Google Compute Engi...
    ahohoho閱讀 15,547評(píng)論 15 147
  • 本篇是《使用Spring Boot和Docker構(gòu)建微服務(wù)架構(gòu)》系列的第二篇鞭呕,本篇我們將會(huì)利用工具進(jìn)行設(shè)置,深入探...
    新強(qiáng)吖閱讀 802評(píng)論 0 2
  • 風(fēng)雨清秋滌洗宛官,桂菊競(jìng)獻(xiàn)馨香葫松。雞鳴夜半欲折腸瓦糕,鏡月偏懸天上。 桑梓風(fēng)俗依舊腋么,山清水綠情長(zhǎng)咕娄。夢(mèng)回爭(zhēng)坐話離傷,笑問(wèn)客何去向珊擂。
    晴鶴1閱讀 284評(píng)論 0 1
  • 1圣勒、孩子、家人和自己的健康摧扇、成長(zhǎng)圣贸; 2、工作(收入的來(lái)源)扛稽; 3吁峻、自我(想做的事);
    千語(yǔ)千竹閱讀 134評(píng)論 0 0