01-Docker基礎入門

Docker容器概念

  • Docker容器的基礎為Linux容器(LXC)技術入偷,輕量化級別的技術廓译。Docker為C/S架構沙绝。
  • DevOps的優(yōu)勢:更快速的交付和部署捌归,更高效的資源利用,更輕松的遷移和擴展告喊,更簡單的更新管理麸拄。
  • 與傳統(tǒng)虛擬機的比較:很快,對系統(tǒng)資源需求很少黔姜,虛擬技術在操作系統(tǒng)層面拢切。
  • Docker中的幾個概念:
    • 鏡像(image):類似于虛擬機鏡像,為一個面向Docker引擎的只讀模板秆吵,包含子文件系統(tǒng)淮椰。
    • 容器(Container):輕量化的沙箱,Docker利用容器來運行和隔離應用纳寂,從鏡像創(chuàng)建实苞。
    • Docker倉庫:存放鏡像的地方,需要與注冊服務器區(qū)分(存放倉庫的地方)烈疚。

Docker容器安裝

  • CentOS 7 安裝過程如下:

    yjf@vbox:~$ uname -r        #確保內核版本大于3.10,確定.CentOS7滿足
    yjf@vbox:~$ sudo yum update  #更新源
    yjf@vbox:~$ sudo yum remove docker docker-common docker-selinux docker-engine  #卸載已安裝的相關docker產(chǎn)品
    yjf@vbox:~$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2   #安裝驅動
    yjf@vbox:~$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo    #設置yum源
    yjf@vbox:~$ yum list docker-ce --showduplicates | sort -r  #列出可用的docker版本
    yjf@vbox:~$ sodu yum install docker-ce  #默認安裝最新版
    新建文件:/etc/docker/daemon.json 配置國內鏡像:{ "registry-mirrors":["https://registry.docker-cn.com"]}
    yjf@vbox:~$ sudo gpasswd -a yjf docker   #當前用戶加入docker組 輸入docker相關命令無需要sudo
    yjf@vbox:~$ systemctl start docker
    yjf@vbox:~$ systemctl enable docker   //啟動并設置跟隨系統(tǒng)啟動
    
  • Ubuntu 18.04安裝過程如下:

    yjf@vbox:~$ sudo apt install docker.io
    
  • 配置國內鏡像,為使docker容器鏡像下載速度快聪轿,需要配置國內鏡像源爷肝,配置如下(/etc/docker/目錄下新建文件daemon.json):

    {
        "registry-mirrors": ["https://registry.docker-cn.com"]
    }
    
  • 配置完成后使用sudo service docker restart重啟docker服務。

IDEA配置Docker遠程連接

  • 確保IDEA安裝Docker intergration插件。

  • 修改/lib/systemd/system/docker.service文件灯抛,其中ExecReload開頭的行修改為如下:

    ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
    
  • 運行命令sudo systemctl daemon-reload和命令sudo systemctl restart docker進行服務的重啟金赦。

  • 在IDEA的File->Settings->Build,Execution,Deployment->Docker進行配置如下:

    2019-08-27_093134.jpg

Docker基本使用

  • 鏡像相關命令:

    yjf@vbox:~$ sudo docker search tomcat    //表示在hub.docker.com搜索tomcat的相關鏡像.建議上hub.docker.com上搜索 因為在該網(wǎng)站上會有該鏡像的詳細操作
    
    #列出本機上目前已存在的鏡像 重要概念tag標簽 類似于版本號之類
    yjf@vbox:~$ sudo docker images           //列出本機上目前已存在的鏡像
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    maven               latest              0e88a56d4d2e        2 days ago          634MB
    
    #從docker上拉取ubuntu鏡像.未帶:后字符表示拉取的是latest版本 可通過ubuntu:14.04 拉取指定tag的版本
    yjf@vbox:~$ sudo docker pull ubuntu     
    
    #從本機電腦上刪除指定的鏡像,image可以指定鏡像名或者imageId
    yjf@vbox:~$ sudo docker rmi maven     
    
    #獲取指定鏡像的詳細信息
    yjf@vbox:~$ sudo docker inspect maven      
    
  • 容器的相關操作:

    • 容器的運行对嚼,使用docker run命令夹抗。

      # 容器的運行 通用命令:docker run 鏡像名 [command] [args]  一次運行 之后容器就關閉
      yjf@vbox:~ sudo docker run ubuntu echo "HelloWorld" 
      
      # 容器的交互運行 -i:表示保持標準的輸入輸出打開 -t: 為容器分配一個偽終端 --name:表示為容器取名
      # 在容器運行后會分配一個終端進行容器操作 在容器內終端鍵入命令exit后則會退出該容器
      yjf@vbox:~ sudo docker run -ti --name u1 ubuntu /bin/bash  
      
      # 容器的停止和刪除等操作
      # 查看容器運行狀態(tài) sudo docker ps 列出運行中的容器 -a參數(shù)表示所有的容器 包括已停止的容器.
      yjf@vbox:~ sudo docker ps 
      yjf@vbox:~ sudo docker ps -a
      CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                     PORTS               NAMES
      a52cf5cb2433        ubuntu              "/bin/bash"         8 seconds ago       Exited (0) 4 seconds ago                       u1
      
      # 停止容器,針對運行的容器 sudo docker stop 容器id/容器名
      # 刪除容器纵竖,只能對已停止的容器執(zhí)行刪除操作 sudo docker rm 容器id/容器名
      # 啟動容器漠烧,針對已停止的容器可以執(zhí)行sudo docker start 容器id/容器名重新啟動
      yjf@vbox:~ sudo docker start u1   #啟動
      yjf@vbox:~ sudo docker stop u1    #停止
      yjf@vbox:~ sudo docker rm u1      #刪除
      
    • 容器的守護態(tài)運行,-d選項靡砌。

      # 守護運行會轉入后臺運行 返回容器的id 使用docker ps查看會顯示運行狀態(tài)
      yjf@vbox:~ sudo docker run --name=yuan -d ubuntu /bin/sh -c "while true; do echo hello world;sleep 1; done"
      
      # docker logs 命令用于顯示容器內部的日志 支持以下選項:
      # -f選項顯示日志 使用CTRL+C終止 --tail n 顯示最近的n行日志 0表示最新的日志
      yjf@vbox:~ sudo docker logs -f yuan
      yjf@vbox:~ sudo docker logs -f --tail 0 yuan
      
      # 查看容器內的進程 docker top 容器id/容器名
      yjf@vbox:~ sudo docker top yuan
      
      # 守護容器內部運行進程,可運行后臺任務和交互式任務已脓,交互式任務經(jīng)常使用終端進入容器內部的一種方式
      yjf@vbox:~ sudo docker exec -ti yuan /bin/bash
      
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市通殃,隨后出現(xiàn)的幾起案子度液,更是在濱河造成了極大的恐慌,老刑警劉巖画舌,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件堕担,死亡現(xiàn)場離奇詭異,居然都是意外死亡曲聂,警方通過查閱死者的電腦和手機霹购,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來句葵,“玉大人厕鹃,你說我怎么就攤上這事≌д桑” “怎么了剂碴?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長轻专。 經(jīng)常有香客問我忆矛,道長,這世上最難降的妖魔是什么请垛? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任催训,我火速辦了婚禮,結果婚禮上宗收,老公的妹妹穿的比我還像新娘漫拭。我一直安慰自己,他們只是感情好混稽,可當我...
    茶點故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布采驻。 她就那樣靜靜地躺著审胚,像睡著了一般。 火紅的嫁衣襯著肌膚如雪礼旅。 梳的紋絲不亂的頭發(fā)上膳叨,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天,我揣著相機與錄音痘系,去河邊找鬼菲嘴。 笑死,一個胖子當著我的面吹牛汰翠,可吹牛的內容都是我干的龄坪。 我是一名探鬼主播,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼奴璃,長吁一口氣:“原來是場噩夢啊……” “哼悉默!你這毒婦竟也來了?” 一聲冷哼從身側響起苟穆,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤抄课,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后雳旅,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體跟磨,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年攒盈,在試婚紗的時候發(fā)現(xiàn)自己被綠了抵拘。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡型豁,死狀恐怖僵蛛,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情迎变,我是刑警寧澤充尉,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站衣形,受9級特大地震影響驼侠,放射性物質發(fā)生泄漏。R本人自食惡果不足惜谆吴,卻給世界環(huán)境...
    茶點故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一倒源、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧句狼,春花似錦笋熬、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽苫拍。三九已至,卻和暖如春旺隙,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背骏令。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工蔬捷, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人榔袋。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓周拐,卻偏偏與公主長得像,于是被迫代替她去往敵國和親凰兑。 傳聞我的和親對象是個殘疾皇子妥粟,可洞房花燭夜當晚...
    茶點故事閱讀 42,802評論 2 345

推薦閱讀更多精彩內容