日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Docker(一):Docker入门教程

發布時間:2025/3/21 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Docker(一):Docker入门教程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

如今Docker的使用已經非常普遍,特別在一線互聯網公司。使用Docker技術可以幫助企業快速水平擴展服務,從而到達彈性部署業務的能力。在云服務概念興起之后,Docker的使用場景和范圍進一步發展,如今在微服務架構越來越流行的情況下,微服務+Docker的完美組合,更加方便微服務架構運維部署落地。

本文詳細解釋介紹Docker入門相關內容,后期重點關注Docker在微服務體系中的使用。在了解Docker之前我們先考慮幾個問題:1、Docker是什么?2、為什么要使用Docker,它有什么優勢?帶著這些問題我們來看看下面的內容。

什么是Docker?

Docker 是世界領先的軟件容器平臺。開發人員利用 Docker 可以消除協作編碼時“在我的機器上可正常工作”的問題。運維人員利用 Docker 可以在隔離容器中并行運行和管理應用,獲得更好的計算密度。企業利用 Docker 可以構建敏捷的軟件交付管道,以更快的速度、更高的安全性和可靠的信譽為 Linux 和 Windows Server 應用發布新功能。

Docker 屬于 Linux 容器的一種封裝,提供簡單易用的容器使用接口。它是目前最流行的 Linux 容器解決方案。Docker 將應用程序與該程序的依賴,打包在一個文件里面。運行這個文件,就會生成一個虛擬容器。程序在這個虛擬容器里運行,就好像在真實的物理機上運行一樣。有了 Docker,就不用擔心環境問題。

總體來說,Docker 的接口相當簡單,用戶可以方便地創建和使用容器,把自己的應用放入容器。容器還可以進行版本管理、復制、分享、修改,就像管理普通的代碼一樣。

Docker 最初是 dotCloud 公司創始人 Solomon Hykes 在法國期間發起的一個公司內部項目,它是基于 dotCloud 公司多年云服務技術的一次革新,并于 2013 年 3 月以 Apache 2.0 授權協議開源,主要項目代碼在 GitHub 上進行維護。Docker 項目后來還加入了 Linux 基金會,并成立推動 開放容器聯盟(OCI)。

Docker 自開源后受到廣泛的關注和討論,至今其 GitHub 項目已經超過 4 萬 6 千個星標和一萬多個 fork。甚至由于 Docker 項目的火爆,在 2013 年底,dotCloud 公司決定改名為 Docker。Docker 最初是在 Ubuntu 12.04 上開發實現的;Red Hat 則從 RHEL 6.5 開始對 Docker 進行支持;Google 也在其 PaaS 產品中廣泛應用 Docker。

為什么要使用Docker

容器除了運行其中應用外,基本不消耗額外的系統資源,使得應用的性能很高,同時系統的開銷盡量小。傳統虛擬機方式運行 10 個不同的應用就要起 10 個虛擬機,而Docker 只需要啟動 10 個隔離的應用即可。

具體說來,Docker 在如下幾個方面具有較大的優勢。

1、更快速的交付和部署

對開發和運維(devop)人員來說,最希望的就是一次創建或配置,可以在任意地方正常運行。

開發者可以使用一個標準的鏡像來構建一套開發容器,開發完成之后,運維人員可以直接使用這個容器來部署代碼。 Docker 可以快速創建容器,快速迭代應用程序,并讓整個過程全程可見,使團隊中的其他成員更容易理解應用程序是如何創建和工作的。 Docker 容器很輕很快!容器的啟動時間是秒級的,大量地節約開發、測試、部署的時間。

2、更高效的虛擬化

Docker 容器的運行不需要額外的 hypervisor 支持,它是內核級的虛擬化,因此可以實現更高的性能和效率。

3、更輕松的遷移和擴展

Docker 容器幾乎可以在任意的平臺上運行,包括物理機、虛擬機、公有云、私有云、個人電腦、服務器等。 這種兼容性可以讓用戶把一個應用程序從一個平臺直接遷移到另外一個。

4、更簡單的管理

使用 Docker,只需要小小的修改,就可以替代以往大量的更新工作。所有的修改都以增量的方式被分發和更新,從而實現自動化并且高效的管理。

Docker vs VM

從下圖可以看出,VM是一個運行在宿主機之上的完整的操作系統,VM運行自身操作系統會占用較多的CPU、內存、硬盤資源。Docker不同于VM,只包含應用程序以及依賴庫,基于libcontainer運行在宿主機上,并處于一個隔離的環境中,這使得Docker更加輕量高效,啟動容器只需幾秒鐘之內完成。由于Docker輕量、資源占用少,使得Docker可以輕易的應用到構建標準化的應用中。但Docker目前還不夠完善,比如隔離效果不如VM,共享宿主機操作系統的一些基礎庫等;網絡配置功能相對簡單,主要以橋接方式為主;查看日志也不夠方便靈活。

Docker 在容器的基礎上,進行了進一步的封裝,從文件系統、網絡互聯到進程隔離等等,極大的簡化了容器的創建和維護。使得 Docker 技術比虛擬機技術更為輕便、快捷。

作為一種新興的虛擬化方式,Docker 跟傳統的虛擬化方式相比具有眾多的優勢。Docker 容器的啟動可以在秒級實現,這相比傳統的虛擬機方式要快得多;Docker 對系統資源的利用率很高,一臺主機上可以同時運行數千個 Docker 容器。

相關概念

Docker是CS架構,主要有兩個概念:

  • Docker daemon: 運行在宿主機上,Docker守護進程,用戶通過Docker client(Docker命令)與Docker daemon交互
  • Docker client: Docker 命令行工具,是用戶使用Docker的主要方式,Docker client與Docker daemon通信并將結果返回給用戶,Docker client也可以通過socket或者RESTful api訪問遠程的Docker daemon

了解了Docker的組成,再來了解一下Docker的三個主要概念:

  • Docker image:鏡像是只讀的,鏡像中包含有需要運行的文件。鏡像用來創建container,一個鏡像可以運行多個container;鏡像可以通過Dockerfile創建,也可以從Docker hub/registry上下載。
  • Docker container:容器是Docker的運行組件,啟動一個鏡像就是一個容器,容器是一個隔離環境,多個容器之間不會相互影響,保證容器中的程序運行在一個相對安全的環境中。
  • Docker hub/registry: 共享和管理Docker鏡像,用戶可以上傳或者下載上面的鏡像,官方地址為https://registry.hub.docker.com/,也可以搭建自己私有的Docker registry。

鏡像就相當于打包好的版本,鏡像啟動之后運行在容器中,倉庫就是裝存儲鏡像的地方。

Docker安裝

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

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

yum install docker
  • 1

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

service docker start chkconfig docker on
  • 1
  • 2

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

systemctl start docker.service systemctl enable docker.service
  • 1
  • 2

測試

docker version
  • 1

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

Hello World

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

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

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

修改系統中docker對應的配置文件即可,如下:

vi /etc/docker/daemon.json #添加后 {"registry-mirrors": ["https://registry.docker-cn.com"],"live-restore": true }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

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

docker pull library/hello-world
  • 1

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

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

docker images #顯示結果 REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/hello-world latest f2a91732366c 3 months ago 1.848 kB
  • 1
  • 2
  • 3
  • 4

現在,運行這個 image 文件。

docker run hello-world#顯示結果 Hello from Docker! This message shows that your installation appears to be working correctly. ...
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

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

常用命令

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

拉取docker鏡像

docker pull image_name
  • 1

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

docker images
  • 1

刪除鏡像

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

查看當前有哪些容器正在運行

docker ps
  • 1

查看所有容器

docker ps -a
  • 1

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

docker start container_name/container_id docker stop container_name/container_id docker restart container_name/container_id
  • 1
  • 2
  • 3

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

docker attach container_name/container_id
  • 1

刪除容器的命令:

docker rm container_name/container_id
  • 1

查看當前系統Docker信息

docker info
  • 1

從Docker hub上下載某個鏡像:

docker pull centos:latest docker pull centos:latest
  • 1
  • 2

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

總結

以上是生活随笔為你收集整理的Docker(一):Docker入门教程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日韩精品成人 | 国产精品一二 | 手机在线观看av网站 | 亚洲欧美在线播放 | 中文字幕在线视频播放 | 日韩一级片在线观看 | 一卡二卡三卡四卡五卡 | 亚洲精品网站在线观看 | 91大神精品在线 | 成人精品福利 | 超级乱淫视频 | 欧美日韩不卡合集视频 | a一级网站 | 久久精品视频在线 | 美女免费视频网站 | 9人人澡人人爽人人精品 | 精品无码一区二区三区在线 | 91视频免费看片 | 超碰伊人久久 | av鲁丝一区鲁丝二区鲁丝 | 精品动漫一区 | 91在线亚洲 | 国产在线1 | 天天干夜夜撸 | 亚洲日本欧美精品 | 日韩视频专区 | 丰满熟妇人妻av无码区 | 欧美一级淫片免费视频黄 | 亚洲第一天堂 | 免费观看nba乐趣影院 | 久久99精品国产麻豆婷婷洗澡 | 一本大道熟女人妻中文字幕在线 | 中文字幕日韩三级 | 三年大全国语中文版免费播放 | 亚洲精品国偷拍自产在线观看蜜桃 | 黄色操人| 99在线精品视频免费观看软件 | 日韩av手机在线免费观看 | 亚洲av无一区二区三区久久 | 亚洲精品久久久狠狠狠爱 | 日本超碰 | 蜜臀99久久精品久久久久小说 | 国产精品天美传媒沈樵 | 国产鲁鲁视频在线观看免费 | 免费看片网站91 | 天天操天| 成人18视频免费69 | 26uuu欧美日本| 日本黄色片 | 国产国语videosex另类 | 私人av | 中文字幕在线观看网址 | 91极品视频 | wwwxxxx国产| 97欧美| 夜夜操夜夜 | 精品国产一区二区三区性色av | 国产 日韩 欧美 成人 | 三级黄网 | v片在线看 | 91精品国产自产精品男人的天堂 | 后入内射无码人妻一区 | 中文字幕综合网 | 久操中文 | 日本黄网站色大片免费观看 | 一区二区在线免费观看视频 | 一级成人黄色片 | 日韩孕交 | 粉嫩av一区二区白浆 | 91精品推荐 | 在线观看免费高清 | 在线观看亚洲专区 | 黄色片网站在线免费观看 | 欧美亚洲中文精品字幕 | 日韩免费毛片 | 亚洲国产成人一区二区精品区 | 雨宫琴音一区二区三区 | 一区二区在线精品 | 亚洲av永久无码精品 | 国产成人午夜 | 金鱼妻日剧免费观看完整版全集 | 欧美男女交配视频 | 欧美亚洲少妇 | 天天干夜夜 | 国产免费专区 | 亚洲17p| 亚洲欧洲一区二区三区 | 香蕉视频在线观看免费 | 国产成人精品亚洲男人的天堂 | 狠狠干免费视频 | 欧美乱三级 | 欧美性受xxxx黑人xyx性 | 剧情av在线| 天天精品视频 | 可以在线观看的黄色 | 中文字幕欧美专区 | 午夜激情亚洲 | 黄色一机片 | 91九色论坛 |