k8s(Kubernetes)快速部署捷徑(3)-Docker-CE安裝及配置

【目錄】
(1)k8s快速介紹
(2)硬件虛擬機(jī)環(huán)境Ubuntu18.10-server安裝
(3)Docker-CE安裝及配置
(4)Kubernetes 安裝及部署
(5)創(chuàng)建企業(yè)Kubernetes多主機(jī)集群環(huán)境
(6)Kubernetes集群mysql應(yīng)用實(shí)例
(7)Kubernetes集群tomcat應(yīng)用集群實(shí)例
(8)Kubernetes集群beego新聞發(fā)布web系統(tǒng)集群實(shí)例
【資源下載】
完整教程markdown下載 提取碼: 92hy
kubernetes(k8s)2小時(shí)快速部署教程視頻 提取碼:dk4i
kubernetes-Master-Node虛擬機(jī)完整鏡像文件 提取碼: 2wf8
課程相關(guān)其他相關(guān)安裝包及鏡像 提取碼: nkfj


3.1 Docker簡(jiǎn)介

3. 1.1 docker介紹

  • docker是什么 ?

    Docker 是一個(gè)開源的應(yīng)用容器引擎巩检,是直接運(yùn)行在宿主操作系統(tǒng)之上的一個(gè)容器屎勘,使用沙箱機(jī)制完全虛擬出一個(gè)完整的操作,容器之間不會(huì)有任何接口仲吏,從而讓容器與宿主機(jī)之間、容器與容器之間隔離的更加徹底蝌焚。每個(gè)容器會(huì)有自己的權(quán)限管理裹唆,獨(dú)立的網(wǎng)絡(luò)與存儲(chǔ)棧,及自己的資源管理能只洒,使同一臺(tái)宿主機(jī)上可以友好的共存多個(gè)容器许帐。

  • docker與虛擬機(jī)對(duì)比

    如果物理機(jī)是一幢住宅樓,虛擬機(jī)就是大樓中的一個(gè)個(gè)套間毕谴,而容器技術(shù)就是套間里的一個(gè)個(gè)隔斷成畦。

    docker1.png

  • 虛擬化技術(shù)不同

    • VMware Workstation距芬、VirtualBoX

    硬件輔助虛擬化:(Hardware-assisted Virtualization)是指通過(guò)硬件輔助支持模擬運(yùn)行環(huán)境,使客戶機(jī)操作系統(tǒng)可以獨(dú)立運(yùn)行循帐,實(shí)現(xiàn)完全虛擬化的功能框仔。

    • Docker

    操作系統(tǒng)層虛擬化:(OS-level virtualization)這種技術(shù)將操作系統(tǒng)內(nèi)核虛擬化,可以允許使用者空間軟件實(shí)例被分割成幾個(gè)獨(dú)立的單元拄养,在內(nèi)核中運(yùn)行离斩,而不是只有一個(gè)單一實(shí)例運(yùn)行。這個(gè)軟件實(shí)例瘪匿,也被稱為是一個(gè)容器(containers)跛梗、虛擬引擎(Virtualization engine)、虛擬專用服務(wù)器(virtual private servers)柿顶。每個(gè)容器的進(jìn)程是獨(dú)立的茄袖,對(duì)于使用者來(lái)說(shuō),就像是在使用自己的專用服務(wù)器嘁锯。

    <font color="red">以上兩種虛擬化技術(shù)都屬于軟件虛擬化宪祥,在現(xiàn)有的物理平臺(tái)上實(shí)現(xiàn)對(duì)物理平臺(tái)訪問(wèn)的截獲和模擬。在軟件虛擬化技術(shù)中家乘,有些技術(shù)不需要硬件支持蝗羊;而有些軟件虛擬化技術(shù),則依賴硬件支持仁锯。</font>

  • 應(yīng)用場(chǎng)景不同

    • 虛擬機(jī)更擅長(zhǎng)于徹底隔離整個(gè)運(yùn)行環(huán)境耀找。如: 云服務(wù)提供商通常采用虛擬機(jī)技術(shù)隔離不同的用戶。
    • Docker通常用于隔離不同的應(yīng)用业崖,例如前端野芒,后端以及數(shù)據(jù)庫(kù)。
  • 資源的使用率不同

    虛擬機(jī)啟動(dòng)需要數(shù)分鐘双炕,而Docker容器可以在數(shù)毫秒內(nèi)啟動(dòng)狞悲。由于沒有臃腫的從操作系統(tǒng),Docker可以節(jié)省大量的磁盤空間以及其他系統(tǒng)資源妇斤。

  • docker的版本

    • Docker-CE -> 社區(qū)版
      • Stable 版
        • 穩(wěn)定版, 一個(gè)季度更新一次
      • Edge 版
        • 一個(gè)月更新一般
    • Docker-EE
      • 企業(yè)版
      • 收費(fèi)的
docker1.png

3.2 配置國(guó)內(nèi)源

3.2.1 基礎(chǔ)準(zhǔn)備

  1. Docker 要求 Ubuntu 系統(tǒng)的內(nèi)核版本高于 3.10 摇锋,查看本頁(yè)面的前提條件來(lái)驗(yàn)證你的 Ubuntu 版本是否支持 Docker。

    uname -r 
    4.18.0-21-generic(主版本必須保持一致)
    
  1. 安裝curl

    apt-get update && apt-get install -y curl telnet wget man \
    apt-transport-https \
    ca-certificates \
    software-properties-common vim 
    
    
  1. 查看新版本號(hào)

    • Ubuntu 18.10
    $ lsb_release -c
    Codename:    cosmic
    
  1. 查看確認(rèn)國(guó)內(nèi)源

     $ cp /etc/apt/sources.list /etc/apt/sources.list.bak
     $ cat /etc/apt/sources.list
    

3.2.2 在線安裝Docker-ce(本教程不推薦)

(建議下面的手動(dòng)安裝方式站超,因?yàn)樵诰€可能會(huì)出現(xiàn)版本不一致)

注意: 該國(guó)內(nèi)源目前提供 18.09版本荸恕,與k8s不符。k8s推薦安裝Docker ce 18.06

  1. 安裝GPG秘鑰和添加國(guó)內(nèi)鏡像

    $ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
    

    添加國(guó)內(nèi)源頭

    $ add-apt-repository \
        "deb https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \
        $(lsb_release -cs) \
        stable"
    
docker2.jpg
  1. 更新國(guó)內(nèi)源路徑
apt update

3.安裝查看版本指令

apt-get install -y apt-show-versions

4.查看docker-ce版本號(hào)

apt-show-versions -a docker-ce
  1. 在線安裝Docker-ce
    sudo apt-get update && apt-get install -y docker-ce
注意到當(dāng)前安裝的版本是 `docker-ce_5%3a18.09.6~3-0~ubuntu-cosmic_amd64.deb`

3.2.3 手動(dòng)安裝Docker(離線安裝)

  1. 下載docker-ce_18.06.1\~ce\~3-0\~ubuntu_amd64.deb
    或者
    課程相關(guān)其他相關(guān)安裝包及鏡像 提取碼: nkfj
    也提供死相。

  2. 上傳到上述文件到待安裝服務(wù)器master

  3. 登錄待安裝服務(wù)器融求,切換到root賬戶

  4. dpkg -i docker-ce_18.06.1\~ce\~3-0\~ubuntu_amd64.deb

如果提示錯(cuò)誤

dpkg: error: dpkg frontend is locked by another process

說(shuō)明已經(jīng)有其他進(jìn)程在使用dpkg安裝程序

sudo rm /var/lib/dpkg/lock

即可。

如果提示錯(cuò)誤

itcast@master:~/package$ sudo dpkg -i docker-ce_18.06.1~ce~3-0~ubuntu_amd64.deb
 
[sudo] password for itcast: 
Selecting previously unselected package docker-ce.
(Reading database ... 100647 files and directories currently installed.)
Preparing to unpack docker-ce_18.06.1~ce~3-0~ubuntu_amd64.deb ...
Unpacking docker-ce (18.06.1~ce~3-0~ubuntu) ...
dpkg: dependency problems prevent configuration of docker-ce:
 docker-ce depends on libltdl7 (>= 2.4.6); however:
  Package libltdl7 is not installed.

dpkg: error processing package docker-ce (--install):
 dependency problems - leaving unconfigured
Processing triggers for man-db (2.8.4-2) ...
Processing triggers for systemd (239-7ubuntu10) ...
Errors were encountered while processing:
 docker-ce

表示當(dāng)前docker-ce 依賴系統(tǒng)libltd17庫(kù)算撮,安裝就可以了

$ apt-get install -y libltdl7
  1. docker version
Client:
 Version:           18.06.1-ce
 API version:       1.38
 Go version:        go1.10.3
 Git commit:        e68fc7a
 Built:             Tue Aug 21 17:24:56 2018
 OS/Arch:           linux/amd64
 Experimental:      false

Server:
 Engine:
  Version:          18.06.1-ce
  API version:      1.38 (minimum version 1.12)
  Go version:       go1.10.3
  Git commit:       e68fc7a
  Built:            Tue Aug 21 17:23:21 2018
  OS/Arch:          linux/amd64
  Experimental:     false

確保版本號(hào)是 18.06

`

3.3 啟動(dòng)Docker-ce

  1. 開機(jī)并啟動(dòng)docker
sudo systemctl enable docker 
sudo systemctl start docker 
  1. 重啟生宛,登錄確認(rèn)docker已經(jīng)運(yùn)行
itcast@ubuntu:~$ sudo docker ps 
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
  1. 下載Alpine鏡像熱身一下 Docker
~$ sudo docker run -it --rm alpine:latest sh 

輸出內(nèi)容如下施掏,我們?cè)?code>Docker容器中測(cè)試三個(gè)命令,分別是

- `date`
- `time`
- `uname -r`
itcast@ubuntu:~$ sudo docker run -it --rm alpine:latest sh 
Unable to find image 'alpine:latest' locally
latest: Pulling from library/alpine
e7c96db7181b: Pull complete 
Digest: sha256:769fddc7cc2f0a1c35abb2f91432e8beecf83916c421420e6a6da9f8975464b6
Status: Downloaded newer image for alpine:latest
/ # date
Mon Jun 10 07:56:01 UTC 2019
/ # time
BusyBox v1.29.3 (2019-01-24 07:45:07 UTC) multi-call binary.

Usage: time [-vpa] [-o FILE] PROG ARGS

Run PROG, display resource usage when it exits

    -v  Verbose
    -p  POSIX output format
    -f FMT  Custom format
    -o FILE Write result to FILE
    -a  Append (else overwrite)
/ # uname -r 
4.18.0-10-generic

docker3.jpg

3.4 創(chuàng)建Docker用戶組并添加當(dāng)前用戶

使用您的用戶登錄Linux然后執(zhí)行如下操作茅糜,用戶組docker可能已經(jīng)存在。

如果使用普通用戶目前是無(wú)法使用docker指令的

itcast@master:~$ docker ps
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.38/containers/json: dial unix /var/run/docker.sock: connect: permission denied

我們需要將當(dāng)前的普通用戶添加到當(dāng)前的docker用戶組中

sudo groupadd docker
sudo usermod -aG docker $USER
exit

重新登錄使用普通用戶登錄:

itcast@master:~$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

就可以使用了素挽。

3.5 申請(qǐng)阿里云鏡像加速器

如果不申請(qǐng)阿里云私人專屬鏡像加速器蔑赘,鼓勵(lì)復(fù)制如下本人申請(qǐng)的私人專屬鏡像加速器,直接使用即可预明。

https://ozcouv1b.mirror.aliyuncs.com

申請(qǐng)步驟如下

在阿里云注冊(cè)自己賬戶

找到容器鏡像服務(wù)缩赛,參考網(wǎng)址如下

https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

點(diǎn)開左側(cè)菜單鏡像中心—>鏡像加速器

右側(cè)加速器地址,即使私人專屬的鏡像加速器地址撰糠,點(diǎn)擊復(fù)制

粘貼到一個(gè)文本文件留存

docker4.jpg

3.6 docker配置國(guó)內(nèi)鏡像加速器

目的 : 為了下載docker鏡像更快

您可以通過(guò)修改daemon配置文件/etc/docker/daemon.json來(lái)使用加速器酥馍。

創(chuàng)建/etc/docker/daemon.json文件,內(nèi)容如下:

{
  "registry-mirrors": ["https://ozcouv1b.mirror.aliyuncs.com"]
}

重啟docker服務(wù)

# 重載所有修改過(guò)的配置文件
sudo systemctl daemon-reload
# 重啟Docker服務(wù)
sudo systemctl restart docker

關(guān)于作者:

作者:Aceld(劉丹冰)

簡(jiǎn)書號(hào):IT無(wú)崖子

mail: danbing.at@gmail.com

github: https://github.com/aceld

原創(chuàng)書籍gitbook: http://legacy.gitbook.com/@aceld

原創(chuàng)聲明:未經(jīng)作者允許請(qǐng)勿轉(zhuǎn)載, 如果轉(zhuǎn)載請(qǐng)注明出處

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末阅酪,一起剝皮案震驚了整個(gè)濱河市旨袒,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌术辐,老刑警劉巖砚尽,帶你破解...
    沈念sama閱讀 217,185評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異辉词,居然都是意外死亡必孤,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門瑞躺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)敷搪,“玉大人,你說(shuō)我怎么就攤上這事幢哨∩目保” “怎么了?”我有些...
    開封第一講書人閱讀 163,524評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵嘱么,是天一觀的道長(zhǎng)狮含。 經(jīng)常有香客問(wèn)我,道長(zhǎng)曼振,這世上最難降的妖魔是什么几迄? 我笑而不...
    開封第一講書人閱讀 58,339評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮冰评,結(jié)果婚禮上映胁,老公的妹妹穿的比我還像新娘。我一直安慰自己甲雅,他們只是感情好解孙,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,387評(píng)論 6 391
  • 文/花漫 我一把揭開白布坑填。 她就那樣靜靜地躺著,像睡著了一般弛姜。 火紅的嫁衣襯著肌膚如雪脐瑰。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,287評(píng)論 1 301
  • 那天廷臼,我揣著相機(jī)與錄音苍在,去河邊找鬼。 笑死荠商,一個(gè)胖子當(dāng)著我的面吹牛寂恬,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播莱没,決...
    沈念sama閱讀 40,130評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼初肉,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了饰躲?” 一聲冷哼從身側(cè)響起牙咏,我...
    開封第一講書人閱讀 38,985評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎嘹裂,沒想到半個(gè)月后眠寿,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,420評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡焦蘑,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,617評(píng)論 3 334
  • 正文 我和宋清朗相戀三年盯拱,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片例嘱。...
    茶點(diǎn)故事閱讀 39,779評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡狡逢,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出拼卵,到底是詐尸還是另有隱情奢浑,我是刑警寧澤,帶...
    沈念sama閱讀 35,477評(píng)論 5 345
  • 正文 年R本政府宣布腋腮,位于F島的核電站雀彼,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏即寡。R本人自食惡果不足惜徊哑,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,088評(píng)論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望聪富。 院中可真熱鬧莺丑,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至昏名,卻和暖如春涮雷,著一層夾襖步出監(jiān)牢的瞬間豌蟋,已是汗流浹背铆帽。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工域蜗, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留拧额,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,876評(píng)論 2 370
  • 正文 我出身青樓花颗,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子夫壁,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,700評(píng)論 2 354

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