docker的下載和使用


鏡像與容器

  在web項目開發完成准備上線時,通常采用docker進行容器化管理,這樣當需要新增服務器時,只需要將容器生成鏡像,將鏡像復制到另外的服務器即可,在使用之前我們有必要了解一些什么是鏡像什么是容器

鏡像:就是將操作系統打包成一個文件,這可文件容易傳輸,就想平時使用U盤重裝系統是放在U盤的系統,區別在於鏡像里面一般很純凈,只有一些系統必要的文件,沒有其他文件,所有不像我們安裝系統的文件這么大,像redis鏡像,mysql鏡像等鏡像一般只有100m大小

容器:是已經運行在內存的鏡像文件,內容不能直接復制,就像我們使用的操作系統,所以想要將容器復制一份,需要先將容器打包成鏡像文件,關系圖如下所示:

官網:https://hub.docker.com/

下載

1.更新ubuntu的apt源索引:

sudo apt-get update

2.安裝允許apt通過https使用倉庫:

sudo dpkg --configure -a
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

3.添加Docker官方DPD key

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

4.設置Docker穩定版倉庫

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

5.添加倉庫后,再次更新apt源索引

sudo apt-get update

6.安裝最新版Docker CE(社區版)

sudo apt-get install docker-ce

7.檢測Dcoker CE是否安裝成功(命令是允許hello-world鏡像,由於系統本來沒有hello-world鏡像,docker會自動在官網下載hello-world鏡像)

sudo docker run hello-world

安裝成功則會出現下圖:

docker常命令使用

查看docker當前版本

docker version

啟動docker

sudo service docker start

停止docker

sudo service docker stop

重啟docker

sudo service docker restart

 

關於鏡像

列出所有鏡像

docker image ls --all(課程查看鏡像名,鏡像id等信息)

拉取鏡像(沒有版本號默認拉去最新版本)

docker image pull <鏡像名:版本號>

刪除鏡像(在刪除鏡像前,需要把正在允許的鏡像先停止)

docker image rm <鏡像名或者鏡像id>

把鏡像打包成文件發送給別人

docker save -o 自定義文件名.tar.gz 鏡像名

把鏡像tar.gz文件加載到docker中

docker load -i 文件名.tar.gz

 

關於容器

運行鏡像文件

docker container run -itd -p80:80 -v/home:/home --name=test  鏡像名

container可以省略,-i表示容器啟動后會進入其命令行終端, -t:表示以“交互模式”運行容器,-d:創建一個守護式容器在后台運行(這樣創建容器后不會自動登錄容器,如果只加-i -t 兩個參數,創建后就會自動進去容器),-p:冒號前面是服務器的端口號,即外部訪問的端口號,后面是容器得到端口號,-v:冒號前面是服務端的目錄,后面是容器的目錄,將該目錄生成一個快捷方式到冒號后面的目錄,--name是指定容器名,不寫則系統自動生成

 列出所用容器

docker container ls (列出所用正在運行的容器)

docker container ls --all(列出所用容器)

啟動容器

docker container start <容器名或者容器id>

停止容器(類似於電腦正常關閉)

docker container stop <容器名或者容器id>

殺死容器(類似於拔電腦電源)

docker container kill <容器名或者容器id>

進入正在運行的容器(bash是進入容器的第一個命令)

docker container exec -it 容器名或者容器id bash

刪除容器

docker container rm<容器名或者容器id>

把容器保存成鏡像

docker commit <容器名或容器id> 自定義鏡像名

其他

使用docker命令需要管理員權限,如果希望每次輸入docker相關命令時,不用sudo,可通過以下命令進行設置

sudo usermod -a -G docker $USER
sudo service docker restart
newgrp - docker

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM