Docker常用命令怎么使用-創(chuàng)新互聯(lián)

本篇內(nèi)容主要講解“Docker常用命令怎么使用”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“Docker常用命令怎么使用”吧!

創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供墨江網(wǎng)站建設(shè)、墨江做網(wǎng)站、墨江網(wǎng)站設(shè)計、墨江網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、墨江企業(yè)網(wǎng)站模板建站服務(wù),十余年墨江做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。

什么是 Docker

Docker 是開源的應(yīng)用容器引擎。

Docker 可以讓你將所有應(yīng)用軟件以及它的以來打包成軟件開發(fā)的標準化單元。

Docker 容器將軟件以及它運行安裝所需的一切文件(代碼、運行時、系統(tǒng)工具、系統(tǒng)庫)打包到一起,這就保證了不管是在什么樣的運行環(huán)境,總是能以相同的方式運行。就好像 Java 虛擬機一樣,“一次編寫,到處運行(Write once, run anywhere)”,而 Docker 是“一次構(gòu)建,到處運行(Build once,run anywhere)”。

    Docker 是一種“容器即服務(wù)”(Docker Containers as a Service ,簡稱 CaaS),使得開發(fā)和IT運營團隊可以對于應(yīng)用的構(gòu)建、發(fā)布、運行更加敏捷和可控。

    概括的說: Docker 是為開發(fā)人員和系統(tǒng)管理員用于構(gòu)建、發(fā)布、并運行分布式應(yīng)用程序的開放式平臺。該平臺由 Docker 引擎(一個便攜、輕巧的運行時和打包工具) 和 Docker Hub (一個共享應(yīng)用程序和自動化工作流的云服務(wù))等組成。Docker 可以使應(yīng)用程序從組件迅速組裝并消除了開發(fā)、質(zhì)量保證和生產(chǎn)環(huán)境之間的摩擦問題。這樣一來,IT部門可以更快地發(fā)布,而這些應(yīng)用程序不管是運行在筆記本電腦、數(shù)據(jù)中心的虛擬機,還是任何的云,其運行過程和結(jié)果都是一致的。

    我們再來看下 Docker 的 Logo 。很明顯,這是一只鯨魚,它托著許多集裝箱。我們可以把宿主機可當(dāng)做這只鯨魚,把相互隔離的容器可看成集裝箱,每個集裝箱中都包含自己的應(yīng)用程序。這 Logo 簡直的太形象了!

Docker 的優(yōu)點

  • 輕量級:所有容器在一臺機器上共享同一個操作系統(tǒng)內(nèi)核,這樣他們立即開始,并更有效地利用內(nèi)存。Image 是從分層文件系統(tǒng)的構(gòu)建,這樣他們能夠共享公共文件,使得磁盤使用率和 Image 的下載更加高效。

  • 開放:Docker 容器是基于開發(fā)的標準,允許容器運行在主流的 Linux 發(fā)布版和 Microsoft 操作系統(tǒng)作為所有的基礎(chǔ)設(shè)施。

  • 安全:容器使得應(yīng)用程序彼此隔離,而基礎(chǔ)架構(gòu)同時為應(yīng)用程序提供了額外的保護層。

Docker 與 虛擬機的區(qū)別

    容器與虛擬機有著類似的資源隔離和分配的優(yōu)點,但不同的架構(gòu)方法使容器能夠更加便攜,高效等。

虛擬機的架構(gòu)

每個虛擬機都包括應(yīng)用程序、必要的二進制文件和庫以及一個完整的客戶操作系統(tǒng)(Guest OS),盡管它們被分離,它們共享并利用主機的硬件資源,將近需要十幾個 GB 的大小。

容器的架構(gòu)

容器包括應(yīng)用程序及其所有的依賴,但與其他容器共享內(nèi)核。它們以獨立的用戶空間進程形式運行在主機操作系統(tǒng)上。他們也不依賴于任何特定的基礎(chǔ)設(shè)施,Docker 容器可以運行在任何計算機上,任何基礎(chǔ)設(shè)施和任何云上。

Docker 的容器利用了 LXC,管理利用了 namespaces 來做權(quán)限的控制和隔離,cgroups 來進行資源的配置,并且還通過 aufs 來進一步提高文件系統(tǒng)的資源利用率,而這些技術(shù)都不是 Docker 獨創(chuàng)。

LXC

LXC 與虛擬機的不同之處在于,它是一個操作系統(tǒng)級別的虛擬化環(huán)境,而不是硬件虛擬化環(huán)境。他們都做同樣的事情,但 LXC 是操作系統(tǒng)級別的虛擬化環(huán)境,虛擬環(huán)境有它自己的進程和網(wǎng)絡(luò)空間,而不是創(chuàng)建一個完整成熟的虛擬機。因此,一個 LXC 虛擬操作系統(tǒng)具有最小的資源需求,并啟動只需幾秒鐘。

正如你可以在下圖中看到的,左側(cè)是 LXC 虛擬的 Ubuntu ,默認安裝使用 11 MB 大小。

Docker常用命令怎么使用

Docker 與 Microservices 的關(guān)系

Microservices(微服務(wù)) 依賴于“基礎(chǔ)設(shè)施自動化”,而 Docker 正是“基礎(chǔ)設(shè)施自動化”的利器??梢哉f Docker 的火爆,一定程度上也帶動了微服務(wù)架構(gòu)的興起,而微服務(wù)的廣泛應(yīng)用也促進了 Docker 繁榮??梢哉f兩者相輔相成。

為什么要用 Docker

  • 開發(fā)更加敏捷:Docker 讓開發(fā)人員可以自由定義環(huán)境,創(chuàng)建和部署的應(yīng)用程序更快、更容易,IT 運維人員快速應(yīng)對變化也更加靈活性。

  • 更加可控:Docker 使得開發(fā)人員保存從基礎(chǔ)設(shè)施到應(yīng)用的代碼,幫助 IT 運維人管理擁有標準的、安全的、可擴展的操作環(huán)境。

  • 高可移植性:Docker 允許自由選擇,可以是從筆記本電腦到一個團隊,從私人基礎(chǔ)設(shè)施到公共云提供商。

這樣,你可以專注于開發(fā)應(yīng)用,其他的繁瑣事交給 Docker 去做吧。

如何使用 Docker

這可真是一個大話題,如果完整闡述足夠?qū)懸槐緯恕:迷谖覀兊哪康氖亲鋈腴T普及,因此我們就簡單講一下 Docker 的安裝、基本使用和常用命令。

Docker安裝

建議在linux環(huán)境下安裝Docker,window環(huán)境搭建比較復(fù)雜且容易出錯,使用Centos7+yum來安裝Docker環(huán)境很方便。

Docker 軟件包已經(jīng)包括在默認的 CentOS-Extras 軟件源里。因此想要安裝 docker,只需要運行下面的 yum 命令:

yum install docker

安裝完成后,使用下面的命令來啟動 docker 服務(wù),并將其設(shè)置為開機啟動:

service docker start
chkconfig docker on

LCTT 譯注:此處采用了舊式的 sysv 語法,如采用CentOS 7中支持的新式 systemd 語法,如下:

service docker start
chkconfig docker on

測試

docker version

輸入上述命令,返回docker的版本相關(guān)信息,證明docker安裝成功。

Hello World

下面,我們通過最簡單的 image 文件"hello world",感受一下 Docker。

因為國內(nèi)連接 Docker 的官方倉庫很慢,因此我們在日常使用中會使用Docker 中國加速器。通過 Docker 官方鏡像加速,中國區(qū)用戶能夠快速訪問最流行的 Docker 鏡像。該鏡像托管于中國大陸,本地用戶現(xiàn)在將會享受到更快的下載速度和更強的穩(wěn)定性,從而能夠更敏捷地開發(fā)和交付 Docker 化應(yīng)用。

Docker 中國官方鏡像加速可通過 registry.docker-cn.com訪問。該鏡像庫只包含流行的公有鏡像,私有鏡像仍需要從美國鏡像庫中拉取。

修改系統(tǒng)中docker對應(yīng)的配置文件即可,如下:

vi /etc/docker/daemon.json
#添加后
{
"registry-mirrors": ["https://registry.docker-cn.com"],
"live-restore": true
}

運行下面的命令,將 image 文件從倉庫抓取到本地。

docker pull library/hello-world

上面代碼中,docker image pull是抓取 image 文件的命令。library/hello-world是 image 文件在倉庫里面的位置,其中l(wèi)ibrary是 image 文件所在的組,hello-world是 image 文件的名字。

抓取成功以后,就可以在本機看到這個 image 文件了。

docker images
#顯示結(jié)果
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/hello-world latest f2a91732366c 3 months ago 1.848 kB

現(xiàn)在,運行這個 image 文件。

docker run hello-world
#顯示結(jié)果
Hello from Docker!
This message shows that your installation appears to be working correctly.
...

輸出這段提示以后,hello world就會停止運行,容器自動終止。有些容器不會自動終止,因為提供的是服務(wù),比如Mysql鏡像等。

常用命令

除過以上我們使用的Docker命令外,Docker還有一些其它常用的命令。

拉取docker鏡像

docker pull image_name

查看宿主機上的鏡像,Docker鏡像保存在/var/lib/docker目錄下:

docker images

刪除鏡像

docker rmi docker.io/tomcat:7.0.77-jre7 或者 docker rmi b39c68b7af30

查看當(dāng)前有哪些容器正在運行

docker ps

查看所有容器

docker ps -a

啟動、停止、重啟容器命令:

docker start container_name/container_id
docker stop container_name/container_id
docker restart container_name/container_id

后臺啟動一個容器后,如果想進入到這個容器,可以使用attach命令:

docker attach container_name/container_id

刪除容器的命令

docker rm container_name/container_id

查看當(dāng)前系統(tǒng)Docker信息

docker info

從Docker hub上下載某個鏡像:

docker pull centos:latest
docker pull centos:latest

執(zhí)行docker pull centos會將Centos這個倉庫下面的所有鏡像下載到本地repository。

到此,相信大家對“Docker常用命令怎么使用”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

網(wǎng)站標題:Docker常用命令怎么使用-創(chuàng)新互聯(lián)
當(dāng)前網(wǎng)址:http://muchs.cn/article40/dshcho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、網(wǎng)頁設(shè)計公司、建站公司、域名注冊定制開發(fā)、手機網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司