国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Docker: 改變?nèi)萜骰澜绲母锩约夹g(shù)

這篇具有很好參考價值的文章主要介紹了Docker: 改變?nèi)萜骰澜绲母锩约夹g(shù)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

1.1什么是虛擬化

1.2什么是Docker

1.3容器與虛擬機的比較

1.4Docker組建

2、Docker安裝

2.2設(shè)置ustc的鏡像

2.3Docker的啟動與停止

3、docker常用命令

3.1鏡像

3.2容器相關(guān)命令


1.1什么是虛擬化

在計算機中,虛擬化(Vitualization)是一種資源管理技術(shù),是將計算機的各種實體資源,比如服務(wù)器、網(wǎng)絡(luò)、內(nèi)存及存儲等,予以抽象,轉(zhuǎn)換后呈現(xiàn)出來,打破實體結(jié)構(gòu)間的不可分割的障礙,使用戶可以比原來的組態(tài)更好的方式來用用這些資源。這些資源的新虛擬部分是不受現(xiàn)有資源的架設(shè)方式,地域或者物理組態(tài)所限制。一般所指的虛擬化資源包括計算能力和資料存儲。

在實際的生產(chǎn)環(huán)境中,虛擬化技術(shù)主要用來解決高性能的物理硬件產(chǎn)能過剩和老的舊的硬件產(chǎn)能過低的重組重用,透明化底層物理硬件,從而最大化的利用物理硬件對資源充分利用虛擬化技術(shù)種類很多,例如:軟件虛擬化、硬件虛擬化、內(nèi)存虛擬化、網(wǎng)絡(luò)虛擬化(VIP)、桌面虛擬化、服務(wù)虛擬化、虛擬機等。

1.2什么是Docker

Docker是一個開源項目,誕生于2013年初,最初是doCloud公司內(nèi)部的一個業(yè)余項目。它基于Google公司退出的Go語言實現(xiàn)的。項目后來加入了Linux基金會,遵循了Apache2.0協(xié)議。

Docker: 改變?nèi)萜骰澜绲母锩约夹g(shù)

?

為什么選擇Docker

  • 更高效的利用系統(tǒng)資源

由于容器不需要進行硬件虛擬以及運行完整操作系統(tǒng)等額外開銷,Docker對系統(tǒng)資源的利用率更高。無論是應(yīng)用執(zhí)行速度、內(nèi)存損耗或者文件的存儲速度,都是比傳統(tǒng)虛擬機技術(shù)更高效。因此,相比虛擬機技術(shù),一個相同配置的主機,往往可以運行更多數(shù)量的應(yīng)用。

  • 更快速的啟動事件

傳統(tǒng)的虛擬機技術(shù)啟動應(yīng)用服務(wù)往往虛擬需要數(shù)分鐘,而Docker容器應(yīng)用,由于直接運行于宿主內(nèi)核,無需啟動完整的操作系統(tǒng),因此可以做到秒級。甚至毫秒級的啟動時間。大大的節(jié)約了開發(fā)、測試、部署的時間

  • 一致的運行環(huán)境

開發(fā)環(huán)境中一個常見的問題是環(huán)境的一致性問題,由于開發(fā)環(huán)境、測試環(huán)境、生產(chǎn)環(huán)境不一致,導(dǎo)致有些Bug并未在開發(fā)過程中被發(fā)現(xiàn),而Docker的鏡像提供了除了內(nèi)核外完整的運行時環(huán)境,確保了應(yīng)用運行環(huán)境的一致性,從而不會再出現(xiàn)[這段代碼在我的機器上運行沒有問題]這類的問題!

  • 持續(xù)交付和部署

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

使用Docker可以通過定制應(yīng)用鏡像來實現(xiàn)持續(xù)集成、持續(xù)交付、部署。開發(fā)人員可以通過Dockerfile來進行鏡像的構(gòu)建,并且結(jié)合持續(xù)集成系統(tǒng)進行集成測試,而運維人員則可以直接在生產(chǎn)環(huán)境中快速的部署該鏡像,甚至結(jié)合持續(xù)部署系統(tǒng)進行自動部署。

而且使用Dockerfile使鏡像構(gòu)建透明化,不僅僅開發(fā)團隊可以理解應(yīng)用運行環(huán)境,也方便運維團隊理解應(yīng)用運維所需條件,幫助更好的生產(chǎn)環(huán)境部署該鏡像。

  • 更輕松的遷移

    由于Docker確保了執(zhí)行環(huán)境的一致性,使得應(yīng)用的遷移更加容易。Docker可以在很多平臺上運行,無論是物理機還是虛擬機、公有云。私有云。甚至是筆記本,其運行結(jié)果是一致性的。因此用戶可以很輕松的將在一個平臺上運行的應(yīng)用,遷移到另外一個平臺上,而不用擔(dān)心運行環(huán)境的變化導(dǎo)致應(yīng)用無法正常運行的情況

  • 更輕松的維護和擴展

Docker使用的分層存儲以及鏡像的技術(shù),使得應(yīng)用重復(fù)部分的復(fù)用更加的容易,也使得應(yīng)用的維護更新變得更加簡單,基于基礎(chǔ)鏡像進一步擴展鏡像也變得非常簡單,此外,Docker團隊各個開源項目團隊一起維護了一大批高質(zhì)量的官方鏡像,既可以直接在生產(chǎn)環(huán)境中使用,又可以作為基礎(chǔ)進一步定制,大大的降低了應(yīng)用服務(wù)的鏡像制作成本。

1.3容器與虛擬機的比較

下面的圖片Docker和傳統(tǒng)虛擬化方式的不同之處,可見容器是在操作系統(tǒng)層面上實現(xiàn)虛擬化,直接復(fù)用本地主機的操作系統(tǒng),而傳統(tǒng)的方式則是在硬件層面實現(xiàn)的。

與傳統(tǒng)的虛擬機相比,Docker優(yōu)勢體現(xiàn)在啟動速度快、占用體積小

特性 容器 虛擬機
啟動 秒級 分鐘級
硬盤使用 一般為MB 一般為GB
性能 接近原生 弱于
系統(tǒng)支持量 單機支持上千個容器 一般為幾十個

1.4Docker組建

1.4.1Docker服務(wù)器與客戶端

Docker是一個客戶端-服務(wù)器(C/S)架構(gòu)程序。Docker客戶端只需要向Docker服務(wù)器或者守護進程發(fā)出請求,服務(wù)器或者守護進程將完成所有工作并返回結(jié)果。Docker也提供了一個命令行工具Docker以及一整套RESful API。亦可以在同一臺宿主機上運行Docker守護進程和客戶端,也可以從本地的Docker客戶端連接到另外一臺宿主機的遠(yuǎn)程Docker守護進程

1.4.2Docker鏡像與容器

鏡像是架構(gòu)Docker的基石。用戶基于鏡像來運行自己的容器。鏡像也是Docker生命周期中“構(gòu)建”部分。鏡像是基于聯(lián)合文件系統(tǒng)的一種層式結(jié)構(gòu),由一系列指令一步一步的構(gòu)建出來的:例如:

  • 添加一個文件;

  • 執(zhí)行一個命令;

  • 打開一個窗口;

也可以將鏡像當(dāng)做容器的“源代碼”。鏡像體積很小,非?!氨銛y”,抑郁分享、存儲和更新。

Docker借鑒了標(biāo)準(zhǔn)集裝箱的概念。標(biāo)準(zhǔn)集裝箱將貨物運往世界各地,Docker將這個模型運用到自己的設(shè)計中,唯一不同的是:集裝箱運輸貨物,而Docker運輸軟件。

和集裝箱一樣,Docker在執(zhí)行上述操作時,并不會關(guān)心容器中到底裝了什么,它不管是web服務(wù)器,還是數(shù)據(jù)庫,或者是應(yīng)用程序服務(wù)器什么的。所有的容器都按照相同的方式將內(nèi)容“裝載”進去。

Docker也不關(guān)心你要把容器運到何方:我們可以在自己的筆記本中構(gòu)建容器,上傳到Refistry,然后下載到另一個物理的或者虛擬的服務(wù)器來測試,在把容器部署到具體的主機中,像標(biāo)準(zhǔn)集裝箱一樣,Docker容器方便替換,可以疊加,易于分發(fā),并且盡量通用。

1.4.3Registry(注冊中心)

Docker用Registry來保存用戶構(gòu)建的鏡像。Registry分為共有和私有兩種。Docker公司運行公共的Refistry叫做Docker Hub。用戶可以在Docker Hub注冊賬號,分享并且保存自己的鏡像(在Docker HUb 下載鏡像巨慢,可以自己構(gòu)建私有的Registry)。

2、Docker安裝

Docker官方建議在ubuntu1中安裝,因為Dock而是基于Ubuntu發(fā)布的,而且一般Docker出現(xiàn)問題Ubuntu是最先更新或者打補丁的,在很多版本的center os中是不支持更新最新的一些補丁包的。

1、yum包更新到最新

yum update 

2、安裝需要的軟件包,yum-util提供yum-config-manager功能,另外兩個是devicemappper驅(qū)動依賴的

yum install -y yum-utils device-mapper-persistent-data lvm2

3、設(shè)置yum源為阿里云

yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

4、安裝docker

yum install -y docker-ce

5、查看是否安裝成功

[root@centos7 ~]# docker -v
Docker version 24.0.2, build cb74dfc

2.2設(shè)置ustc的鏡像

ustc是老牌的linux鏡像服務(wù)提供者了,還在遙遠(yuǎn)的utuntu5.04版本的時候就在用,ustc的docker鏡像加速器速度很快。ustc docker mirrror的優(yōu)勢之一就是不需要注冊,是真正的公共服務(wù)。

http://lug.ustc.edu/wiki/mirrors/help/docker

編輯該文件

[root@centos7 ~]# mkdir -p /etc/docker/
[root@centos7 ~]# vim /etc/docker/daemon.json

在文件中輸入如下內(nèi)容

{
"registry-mirrors":["https://docker.mirrors.ustc.edu.cn"]
}

2.3Docker的啟動與停止

啟動docker:

systemctl start docker

停止docker:

systemctl stop docker.socket 

查看docker運行狀態(tài)

systemctl status docker

設(shè)置docker開機自啟:

systemctl enable docker

3、docker常用命令

3.1鏡像

查看鏡像:

docker images
REPOSITORY ? TAG ? ? ? IMAGE ID ? CREATED ? SIZE

搜索鏡像:

docker search php

拉取鏡像:

docker pull centos:7

刪除鏡像:

docker rmi 鏡像id

3.2容器相關(guān)命令

3.2.1查看容器

查看正在運行的容器:

[root@centos7 ~]# docker ps

查看所有容器:

[root@centos7 ~]# docker ps -a

3.2.2創(chuàng)建與啟動容器

創(chuàng)建容器命令

docker run

-i:表示運行容器

-t:表示容器啟動后會進入其命令行,加入這兩個參數(shù)后,容器創(chuàng)建愛你就能登錄進去。即分配一個偽終端。

--name:為創(chuàng)建的容器命名。

-v:表示目錄映射關(guān)系(前者是宿主機目錄,后者為映射到宿主機上的目錄),可以使用多個v做多個目錄或者文件映射。

注意:最好做目錄映射,在宿主機上做修改,然后共享到容器上。

-d:在run后面加上一個-d參數(shù),則會創(chuàng)建一個守護式容器在后臺運行(這樣創(chuàng)建容器后就不會自動登錄容器,如果只加-i,-t兩個參數(shù),創(chuàng)建后就會自動進入到容器中)。

-p:表示端口映射,前者是宿主主機端口,后者是容器內(nèi)的映射端口。可以使用多個-p做多個端口映射

1、交互式方式創(chuàng)建容器

docker run -it --name=mycentos centos:7 /bin/bash

2、守護式方式創(chuàng)建容器

docker run -di --name=mycentos2 centos:7

登錄容器:

docker exec  -it mycentos2 /bin/bash

停止容器:

docker stop f7f6b0dbd985

啟動容器

docker start mycentos2
mycentos2
?

3.2.3容器的文件操作

將宿主機中的文件拷貝到容器中:

docker cp anaconda-ks.cfg mycentos2:/usr/local
Successfully copied 3.58kB to mycentos2:/usr/local

進入mycentos容器中進行查看:

docker exec  -it mycentos2 /bin/bash
?
ls
anaconda-post.log

將容器中的文件拷貝到宿主機中

docker cp mycentos2:/usr/local/anaconda-ks.cfg anaconda-ks2.cfg
Successfully copied 3.58kB to /root/anaconda-ks2.cfg

3.2.4目錄掛載

創(chuàng)建一個新的容器:

[root@centos7 ~]# docker run  -di -v /usr/local/mydata/:/usr/local/mydata --name=mycentos3 centos:7
cd0247073e3ff747fd68ada87a26e432f77446b069bea84cbe94109f63a69182

在該目錄下創(chuàng)建文件:

vim /usr/local/mydata/test
寫入內(nèi)容:abcddd

進入mycentos中查看:

docker exec  -it mycentos3 /bin/bash
cd /usr/local/mydata/
cat test
abcddd

3.2.5查看容器IP地址

查看容器的全部信息:

docker inspect mycentos3

查看指定信息:

docker rm cd0247073e3f
cd0247073e3f

刪除某容器:文章來源地址http://www.zghlxwxcb.cn/news/detail-494295.html

docker rm cd0247073e3f
cd0247073e3f

到了這里,關(guān)于Docker: 改變?nèi)萜骰澜绲母锩约夹g(shù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 視頻生成可以無限長?谷歌VideoPoet大模型上線,網(wǎng)友:革命性技術(shù)

    視頻生成可以無限長?谷歌VideoPoet大模型上線,網(wǎng)友:革命性技術(shù)

    蒙娜麗莎打哈欠,小雞學(xué)會舉鐵……谷歌VideoPoet大模型表現(xiàn)很亮眼。 2023 年底,科技公司都在沖擊生成式 AI 的最后一個關(guān)卡 —— 視頻生成。 本周二,谷歌提出的視頻生成大模型上線,立刻獲得了人們的關(guān)注。這款名為 VideoPoet 的大語言模型,被人們認(rèn)為是革命性的 zero-sho

    2024年02月02日
    瀏覽(17)
  • 什么是革命性技術(shù)eBPF?為什么可觀測性領(lǐng)域都得用它

    如果有一種技術(shù)可以監(jiān)控和采集任何應(yīng)用信息,支持任何語言,并且應(yīng)用完全無感知,零侵入,想想是不是很激動,那么這個技術(shù)是什么呢?就是eBPF,它應(yīng)該是最近一兩年非常熱門的技術(shù)名詞,我相信你或多或少都看到過,但可能不知道它能做什么,今天我們來講講這個革命

    2024年02月04日
    瀏覽(16)
  • 掌握C++20的革命性特性:Concepts

    C++20 引入了 Concepts,這是一種用于限制類和函數(shù)模板的模板類型和非類型參數(shù)的命名要求。Concepts 是作為編譯時評估的謂詞,用于驗證傳遞給模板的模板參數(shù)。Concepts 的主要目的是使模板相關(guān)的編譯器錯誤更易于人類閱讀。 我們都遇到過這樣的情況:當(dāng)為類或函數(shù)模板提供錯

    2024年01月20日
    瀏覽(20)
  • ChatGPT:人工智能語言模型的革命性進步

    ChatGPT:人工智能語言模型的革命性進步

    ???? 博主 libin9iOak帶您 Go to New World.??? ?? 個人主頁——libin9iOak的博客?? ?? 《面試題大全》 文章圖文并茂??生動形象??簡單易學(xué)!歡迎大家來踩踩~?? ?? 《IDEA開發(fā)秘籍》學(xué)會IDEA常用操作,工作效率翻倍~?? ???? 希望本文能夠給您帶來一定的幫助??文章粗淺,敬

    2024年02月16日
    瀏覽(22)
  • ChatGPT-4 Alpha:OpenAI的革命性升級

    近日,OpenAI公司發(fā)布了備受矚目的GPT-4 Alpha版本,這是一次革命性的升級。以下將為您詳細(xì)介紹這一重大突破,并解釋為何它引起了廣泛關(guān)注。 GPT-4 Alpha是OpenAI公司最新推出的人工智能語言模型,它基于GPT-4.0架構(gòu)開發(fā),擁有更強大的處理能力和更出色的表現(xiàn)。該模型經(jīng)過大規(guī)

    2024年02月20日
    瀏覽(15)
  • 加速軟件開發(fā)和交付的革命性方法-DevOps

    加速軟件開發(fā)和交付的革命性方法-DevOps

    “ 隨著信息技術(shù)的快速發(fā)展,現(xiàn)代軟件開發(fā)和交付已經(jīng)經(jīng)歷了巨大的變革。DevOps(Development和Operations的結(jié)合)已經(jīng)成為這一變革的關(guān)鍵推動力,讓開發(fā)團隊和運維團隊之間的界限變得模糊,以加速軟件的開發(fā)、測試和部署過程。本文將介紹DevOps的核心概念、原則和優(yōu)勢,以及

    2024年02月06日
    瀏覽(21)
  • Transformer模型簡介:一種革命性的深度學(xué)習(xí)模型

    Transformer模型是一種革命性的深度學(xué)習(xí)模型,最初用于自然語言處理任務(wù),如機器翻譯和語言建模。與傳統(tǒng)的序列模型相比,如循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)和卷積神經(jīng)網(wǎng)絡(luò)(CNN),Transformer模型采用一種全新的方式來處理序列數(shù)據(jù),即通過注意力機制來學(xué)習(xí)序列中的關(guān)系。 在傳統(tǒng)的序列模

    2024年02月15日
    瀏覽(54)
  • 機器學(xué)習(xí)與人工智能:一場革命性的變革

    機器學(xué)習(xí)與人工智能:一場革命性的變革

    1956年8月,在美國漢諾斯小鎮(zhèn)寧靜的達特茅斯學(xué)院中,約翰·麥卡錫(John McCarthy)、馬文·閔斯基(MarvinMinsky,人工智能與認(rèn)知學(xué)專家)、克勞德·香農(nóng)(Claude Shannon,信息論的創(chuàng)始人)、艾倫·紐厄爾(AllenNewell,計算機科學(xué)家)、赫伯特·西蒙(Herbert Simon,諾貝爾經(jīng)濟學(xué)獎得

    2024年02月04日
    瀏覽(24)
  • GPT-3.5:ChatGPT的奇妙之處和革命性進步

    GPT-3.5:ChatGPT的奇妙之處和革命性進步

    ???? 博主 libin9iOak帶您 Go to New World.??? ?? 個人主頁——libin9iOak的博客?? ?? 《面試題大全》 文章圖文并茂??生動形象??簡單易學(xué)!歡迎大家來踩踩~?? ?? 《IDEA開發(fā)秘籍》學(xué)會IDEA常用操作,工作效率翻倍~?? ???? 希望本文能夠給您帶來一定的幫助??文章粗淺,敬

    2024年02月15日
    瀏覽(19)
  • 如何將區(qū)塊鏈與大數(shù)據(jù)結(jié)合,為行業(yè)帶來革命性變革

    區(qū)塊鏈技術(shù)和大數(shù)據(jù)技術(shù)都是21世紀(jì)的熱門話題之一,它們各自具有獨特的優(yōu)勢,如果將它們結(jié)合起來,將會為各行業(yè)帶來革命性變革。區(qū)塊鏈技術(shù)可以提供一個安全、透明、去中心化的數(shù)據(jù)共享平臺,而大數(shù)據(jù)技術(shù)則可以提供海量、多樣化的數(shù)據(jù)源,這兩者的結(jié)合將有望解

    2024年04月09日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包