五芙沥、Docker

1、簡(jiǎn)介

Docker是一個(gè)開源的應(yīng)用容器引擎浊吏;是一個(gè)輕量級(jí)容器技術(shù)而昨;

Docker支持將軟件編譯成一個(gè)鏡像;然后在鏡像中各種軟件做好配置卿捎,將鏡像發(fā)布出去配紫,其他使用者可以直接使用這個(gè)鏡像径密;

運(yùn)行中的這個(gè)鏡像稱為容器午阵,容器啟動(dòng)是非常快速的享扔。


2底桂、核心概念

docker主機(jī)(Host):安裝了Docker程序的機(jī)器(Docker直接安裝在操作系統(tǒng)之上);

docker客戶端(Client):連接docker主機(jī)進(jìn)行操作惧眠;

docker倉(cāng)庫(kù)(Registry):用來(lái)保存各種打包好的軟件鏡像籽懦;

docker鏡像(Images):軟件打包好的鏡像;放在docker倉(cāng)庫(kù)中氛魁;

docker容器(Container):鏡像啟動(dòng)后的實(shí)例稱為一個(gè)容器暮顺;容器是獨(dú)立運(yùn)行的一個(gè)或一組應(yīng)用

搜狗截圖20180303165113.png

使用Docker的步驟:

1)、安裝Docker

2)秀存、去Docker倉(cāng)庫(kù)找到這個(gè)軟件對(duì)應(yīng)的鏡像捶码;

3)、使用Docker運(yùn)行這個(gè)鏡像或链,這個(gè)鏡像就會(huì)生成一個(gè)Docker容器惫恼;

4)、對(duì)容器的啟動(dòng)停止就是對(duì)軟件的啟動(dòng)停止澳盐;

3祈纯、安裝Docker

1)、安裝linux虛擬機(jī)

? 1)叼耙、VMWare腕窥、VirtualBox(安裝);

? 2)筛婉、導(dǎo)入虛擬機(jī)文件centos7-atguigu.ova簇爆;

? 3)、雙擊啟動(dòng)linux虛擬機(jī);使用 root/ 123456登陸

? 4)、使用客戶端連接linux服務(wù)器進(jìn)行命令操作冕碟;

? 5)拦惋、設(shè)置虛擬機(jī)網(wǎng)絡(luò);

? 橋接網(wǎng)絡(luò)===選好網(wǎng)卡====接入網(wǎng)線安寺;

? 6)厕妖、設(shè)置好網(wǎng)絡(luò)以后使用命令重啟虛擬機(jī)的網(wǎng)絡(luò)

service network restart

? 7)、查看linux的ip地址

ip addr

? 8)挑庶、使用客戶端連接linux言秸;

2)、在linux虛擬機(jī)上安裝docker

步驟:

1迎捺、檢查內(nèi)核版本举畸,必須是3.10及以上
uname -r
2、安裝docker
yum install docker
3凳枝、輸入y確認(rèn)安裝
4抄沮、啟動(dòng)docker
[root@localhost ~]# systemctl start docker
[root@localhost ~]# docker -v
Docker version 1.12.6, build 3e8e77d/1.12.6
5、開機(jī)啟動(dòng)docker
[root@localhost ~]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
6岖瑰、停止docker
systemctl stop docker

4叛买、Docker常用命令&操作

1)、鏡像操作

操作 命令 說(shuō)明
檢索 docker search 關(guān)鍵字 eg:docker search redis 我們經(jīng)常去docker hub上檢索鏡像的詳細(xì)信息蹋订,如鏡像的TAG率挣。
拉取 docker pull 鏡像名:tag :tag是可選的,tag表示標(biāo)簽露戒,多為軟件的版本椒功,默認(rèn)是latest
列表 docker images 查看所有本地鏡像
刪除 docker rmi image-id 刪除指定的本地鏡像

https://hub.docker.com/

2)、容器操作

軟件鏡像(QQ安裝程序)----運(yùn)行鏡像----產(chǎn)生一個(gè)容器(正在運(yùn)行的軟件智什,運(yùn)行的QQ)动漾;

步驟:

1、搜索鏡像
[root@localhost ~]# docker search tomcat
2撩鹿、拉取鏡像
[root@localhost ~]# docker pull tomcat
3谦炬、根據(jù)鏡像啟動(dòng)容器
docker run --name mytomcat -d tomcat:latest
4、docker ps  
查看運(yùn)行中的容器
5节沦、 停止運(yùn)行中的容器
docker stop  容器的id
6键思、查看所有的容器
docker ps -a
7、啟動(dòng)容器
docker start 容器id
8甫贯、刪除一個(gè)容器
 docker rm 容器id
9吼鳞、啟動(dòng)一個(gè)做了端口映射的tomcat
[root@localhost ~]# docker run -d -p 8888:8080 tomcat
-d:后臺(tái)運(yùn)行
-p: 將主機(jī)的端口映射到容器的一個(gè)端口    主機(jī)端口:容器內(nèi)部的端口

10、為了演示簡(jiǎn)單關(guān)閉了linux的防火墻
service firewalld status 叫搁;查看防火墻狀態(tài)
service firewalld stop:關(guān)閉防火墻
11赔桌、查看容器的日志
docker logs container-name/container-id

更多命令參看
https://docs.docker.com/engine/reference/commandline/docker/
可以參考每一個(gè)鏡像的文檔

3)供炎、安裝MySQL示例

docker pull mysql

錯(cuò)誤的啟動(dòng)

[root@localhost ~]# docker run --name mysql01 -d mysql
42f09819908bb72dd99ae19e792e0a5d03c48638421fa64cce5f8ba0f40f5846

mysql退出了
[root@localhost ~]# docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                           PORTS               NAMES
42f09819908b        mysql               "docker-entrypoint.sh"   34 seconds ago      Exited (1) 33 seconds ago                            mysql01
538bde63e500        tomcat              "catalina.sh run"        About an hour ago   Exited (143) About an hour ago                       compassionate_
goldstine
c4f1ac60b3fc        tomcat              "catalina.sh run"        About an hour ago   Exited (143) About an hour ago                       lonely_fermi
81ec743a5271        tomcat              "catalina.sh run"        About an hour ago   Exited (143) About an hour ago                       sick_ramanujan


//錯(cuò)誤日志
[root@localhost ~]# docker logs 42f09819908b
error: database is uninitialized and password option is not specified 
  You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD;這個(gè)三個(gè)參數(shù)必須指定一個(gè)

正確的啟動(dòng)

[root@localhost ~]# docker run --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
b874c56bec49fb43024b3805ab51e9097da779f2f572c22c695305dedd684c5f
[root@localhost ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
b874c56bec49        mysql               "docker-entrypoint.sh"   4 seconds ago       Up 3 seconds        3306/tcp            mysql01

做了端口映射

[root@localhost ~]# docker run -p 3306:3306 --name mysql02 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
ad10e4bc5c6a0f61cbad43898de71d366117d120e39db651844c0e73863b9434
[root@localhost ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
ad10e4bc5c6a        mysql               "docker-entrypoint.sh"   4 seconds ago       Up 2 seconds        0.0.0.0:3306->3306/tcp   mysql02

幾個(gè)其他的高級(jí)操作

docker run --name mysql03 -v /conf/mysql:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
把主機(jī)的/conf/mysql文件夾掛載到 mysqldocker容器的/etc/mysql/conf.d文件夾里面
改mysql的配置文件就只需要把mysql配置文件放在自定義的文件夾下(/conf/mysql)

docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
指定mysql的一些配置參數(shù)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末疾党,一起剝皮案震驚了整個(gè)濱河市音诫,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌雪位,老刑警劉巖竭钝,帶你破解...
    沈念sama閱讀 218,941評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異雹洗,居然都是意外死亡香罐,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門时肿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)庇茫,“玉大人,你說(shuō)我怎么就攤上這事螃成〉┣” “怎么了?”我有些...
    開封第一講書人閱讀 165,345評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵锈颗,是天一觀的道長(zhǎng)顷霹。 經(jīng)常有香客問(wèn)我咪惠,道長(zhǎng)击吱,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,851評(píng)論 1 295
  • 正文 為了忘掉前任遥昧,我火速辦了婚禮覆醇,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘炭臭。我一直安慰自己永脓,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,868評(píng)論 6 392
  • 文/花漫 我一把揭開白布鞋仍。 她就那樣靜靜地躺著常摧,像睡著了一般。 火紅的嫁衣襯著肌膚如雪威创。 梳的紋絲不亂的頭發(fā)上落午,一...
    開封第一講書人閱讀 51,688評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音肚豺,去河邊找鬼溃斋。 笑死,一個(gè)胖子當(dāng)著我的面吹牛吸申,可吹牛的內(nèi)容都是我干的梗劫。 我是一名探鬼主播享甸,決...
    沈念sama閱讀 40,414評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼梳侨!你這毒婦竟也來(lái)了蛉威?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,319評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤走哺,失蹤者是張志新(化名)和其女友劉穎瓷翻,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體割坠,經(jīng)...
    沈念sama閱讀 45,775評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡齐帚,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了彼哼。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片对妄。...
    茶點(diǎn)故事閱讀 40,096評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖敢朱,靈堂內(nèi)的尸體忽然破棺而出剪菱,到底是詐尸還是另有隱情,我是刑警寧澤拴签,帶...
    沈念sama閱讀 35,789評(píng)論 5 346
  • 正文 年R本政府宣布孝常,位于F島的核電站,受9級(jí)特大地震影響蚓哩,放射性物質(zhì)發(fā)生泄漏构灸。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,437評(píng)論 3 331
  • 文/蒙蒙 一岸梨、第九天 我趴在偏房一處隱蔽的房頂上張望喜颁。 院中可真熱鬧,春花似錦曹阔、人聲如沸半开。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)寂拆。三九已至,卻和暖如春抓韩,著一層夾襖步出監(jiān)牢的瞬間纠永,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工园蝠, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留渺蒿,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,308評(píng)論 3 372
  • 正文 我出身青樓彪薛,卻偏偏與公主長(zhǎng)得像茂装,于是被迫代替她去往敵國(guó)和親怠蹂。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,037評(píng)論 2 355

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

  • Docker — 云時(shí)代的程序分發(fā)方式 要說(shuō)最近一年云計(jì)算業(yè)界有什么大事件少态?Google Compute Engi...
    ahohoho閱讀 15,535評(píng)論 15 147
  • 轉(zhuǎn)載自 http://blog.opskumu.com/docker.html 一城侧、Docker 簡(jiǎn)介 Docke...
    極客圈閱讀 10,501評(píng)論 0 120
  • 《Docker從入門到實(shí)踐》閱讀筆記 原書地址: https://yeasy.gitbooks.io/docker...
    GuoYuebo閱讀 11,382評(píng)論 1 39
  • 寫這篇文章主要是為了今后畢業(yè)論文素材上的整理,同時(shí)對(duì)docker進(jìn)行鞏固溫習(xí)彼妻。大綱: docker簡(jiǎn)介docker...
    胡圖仙人閱讀 7,435評(píng)論 2 96
  • 今天聽到兩個(gè)故事嫌佑,挺好,就想記錄下來(lái)侨歉,結(jié)果此時(shí)想記的時(shí)候卻發(fā)現(xiàn)能記住的都很模糊了屋摇,因此就又聽了一遍。 故事是這樣的...
    奔跑fjn閱讀 250評(píng)論 0 1