docker學習第一天框架學習以及在redhat7.9安裝操作

一.docker是什么。

Docker?是一個開源的容器化平臺,通過將應用程序及其依賴項(如代碼、運行時環境、系統工具等)打包到輕量級、可移植的容器中,實現「一次構建,處處運行」的現代化開發模式。它利用了?Linux?內核特性來創建獨立的工作環境。

基于go語言開發并遵循apache2.0協議開源。

Docker的容器技術,可以在一臺主機上輕松為任何應用創建一個輕量級的、可移植的、自給自足的容器。

通俗的來說就是在主機上,主機上可以有很多相互隔離的容器,每個容器中都包含自己的應用程序。

二.docker的架構

docker各組件的作用:

Docker?客戶端(Docker Client):用戶與?Docker?交互的接口,接收用戶命令并發送給?Docker?守護進程。

Docker?守護進程(Docker Daemon):后臺服務,負責處理客戶端請求,管理鏡像和容器。

Docker?鏡像(Docker Image):只讀模板,包含運行應用所需的文件系統和環境。

Docker?容器(Docker Container):鏡像的運行實例,是獨立、隔離的環境。

Docker?注冊表(Docker Registry):存儲和分發?Docker?鏡像的服務。

架構圖:

架構圖解釋

客戶端與守護進程:用戶通過?Docker?客戶端輸入命令,如?docker build?或?docker run,客戶端將這些命令發送給?Docker?守護進程進行處理。

守護進程與注冊表:Docker?守護進程可以從?Docker?注冊表中拉取鏡像,也可以將本地構建的鏡像推送到注冊表中。

守護進程與鏡像:守護進程負責構建新的?Docker?鏡像,并將其存儲在本地。

守護進程與容器:守護進程根據鏡像創建和管理?Docker?容器,包括啟動、停止和刪除容器。

鏡像與容器:Docker?容器是?Docker?鏡像的運行實例,通過實例化鏡像來創建容器。

三。docker與虛擬機的區別

四.docker的核心概念

鏡像

是創建容器的基礎

是一個只讀的模板文件,里面包含運行容器中的應用程序所需要的所有資料(比如應用程序執行文件、配置文件、動態庫文件、依賴包、系統文件和目錄等)

容器

是用鏡像運行的實例

容器可以被創建、啟動、停止、刪除,每個容器之間默認是相互隔離的

倉庫

是用來集中保存鏡像的地方

有公有倉庫和私鑰倉庫之分

五.在虛擬機上安裝:(可以參考官方的安裝步驟:鏈接:

https://docs.docker.com/engine/install/centos/)

  1. 首先移除舊版本的docker?

[root@zhangjiarong local]# ?yum remove docker \

> docker-client \ docker-client-latest \

> docker-common \

> docker-latest \

> docker-latest-logrotate \ docker-logrotate \

> ?docker-engine

  1. 添加docker的下載源、

[root@zhangjiarong local]# mv /etc/yum.repos.d/docker-ce.repo /etc/yum.repos.d/docker-ce.repo.bak

[root@zhangjiarong local]# cat <<EOF > /etc/yum.repos.d/docker-ce.repo

> [docker-ce-stable]

> name=Docker CE Stable - \$basearch

> baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/\$basearch/stable

> enabled=1

> gpgcheck=1

> gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg

> EOF

[root@zhangjiarong local]# yum clean all

[root@zhangjiarong local]# yum makecache

安裝

[root@zhangjiarong local]# sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

完成

啟動docker

[root@zhangjiarong local]# sudo systemctl start docker

[root@zhangjiarong local]# docker -v ? ? ? ? #查看docker的版本信息

Docker version 26.1.4, build 5650f9b

可以自啟動docker(也就是下一次開機時,docker會自啟動)

[root@zhangjiarong local]# systemctl enable docker

為docker配置加速器

#首先

[root@zhangjiarong zhangjiarong]# vim /etc/docker/daemon.json
?

/etc/docker/daemon.json文件內容

{
? "registry-mirrors": ["https://docker.m.daocloud.io"],
? "debug": true,
? "allow-nondistributable-artifacts": ["docker.m.daocloud.io"]
}

重啟docker

[root@zhangjiarong zhangjiarong]# systemctl daemon-reload
[root@zhangjiarong zhangjiarong]# systemctl restart docker
?

查看docker具體信息

測試是否可以拉取鏡像

可以,表明docker已經安裝并且配置成功

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/913019.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/913019.shtml
英文地址,請注明出處:http://en.pswp.cn/news/913019.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

QT控件 使用Font Awesome開源圖標庫修改QWidget和QML兩種界面框架的控件圖標

又一個月快要結束了&#xff0c;在這里總結下分別在QWidget和QML兩種界面設計模式中應用Font Awesome開源圖標庫&#xff0c;修改界面的顯示圖標效果&#xff0c; AriaNg是aria2的可視化web界面工具,其中的圖標大都是Font AWesome中的字體圖標&#xff0c;某位曾經嘗試將AriaNg…

Qt Quick 與 QML(四)qml中的Delegate系列委托組件

一、概念 在QML中&#xff0c;Delegate是一種非常重要的組件&#xff0c;特別是在使用ListView、GridView、PathView等視圖組件時。Delegate用于定義每個列表或網格中的項目是如何展示的。通過自定義Delegate&#xff0c;你可以控制每個項目的外觀和行為。 Delegate通常是一個…

android圖片優化

在 Android 中加載大圖時&#xff0c;如果不進行優化處理&#xff0c;很容易導致內存溢出&#xff08;OOM&#xff09;和應用卡頓。以下是幾種高效處理大圖加載的方法和最佳實踐&#xff1a; 1. 使用圖片加載庫&#xff08;推薦&#xff09; 成熟的第三方庫已經處理了內存管理…

【機器人】復現 DOV-SG 機器人導航 | 動態開放詞匯 | 3D 場景圖

DOV-SG 建了動態 3D 場景圖&#xff0c;并使用LLM大型語言模型進行任務分解&#xff0c;從而能夠在交互式探索過程中對 3D 場景圖進行局部更新。 來自RA-L 2025&#xff0c;適合長時間的 語言引導移動操作&#xff0c;動態開放詞匯 3D 場景圖。 論文地址&#xff1a;Dynamic …

mongodb 中dbs 時,local代表的是什么

在 MongoDB 中&#xff0c;local 是一個內置的系統數據庫&#xff0c;用于存儲當前 MongoDB 實例&#xff08;或副本集節點&#xff09;的元數據和內部數據&#xff0c;與其他數據庫不同&#xff0c;local 數據庫的數據不會被復制到副本集的其他成員。 local 數據庫的核心作用 …

Spring Cloud(微服務部署與監控)

&#x1f4cc; 摘要 在微服務架構中&#xff0c;隨著服務數量的增長和部署復雜度的提升&#xff0c;如何高效部署、持續監控、快速定位問題并實現自動化運維成為保障系統穩定性的關鍵。 本文將圍繞 Spring Cloud 微服務的部署與監控 展開&#xff0c;深入講解&#xff1a; 微…

音頻動態壓縮算法曲線實現

Juce實現動態壓縮曲線繪制 動態范圍壓縮算法&#xff08;Dynamic Range Compression&#xff0c;DRC&#xff09;是將音頻信號的動態范圍映射到一個較小的范圍內的過程&#xff0c;即降低較高的峰值的信號電平&#xff0c;而不處理較安靜的部分。DRC被廣泛用于音頻錄制、制作工…

技術視界 | OpenLoong 控制框架:打造通用人形機器人智能系統的中樞基座

在人形機器人向通用性、智能化方向加速演進的當下&#xff0c;控制系統的角色正在發生根本變化&#xff1a;它不再只是底層驅動的接口適配層&#xff0c;也不只是策略調用的轉譯引擎&#xff0c;而是成為連接具身模型、異構本體與多樣化任務的“中樞神經系統”。 在 2025 年張…

IOS 藍牙連接

最近做一個硬件設備&#xff0c;寫IOS相應的數據連接/分析代碼時&#xff1b;發現一個問題&#xff0c;如果是開機&#xff0c;每次都能連接上。連接斷開后&#xff0c;發現再也掃描不到了。通過第三方工具LightBlue&#xff0c;發現信號是-127。 此時進入設置查看藍牙設備&am…

【硬核數學 · LLM篇】3.1 Transformer之心:自注意力機制的線性代數解構《從零構建機器學習、深度學習到LLM的數學認知》

我們已經完成了對機器學習和深度學習核心數學理論的全面探索。我們從第一階段的經典機器學習理論&#xff0c;走到了第二階段的深度學習“黑盒”內部&#xff0c;用線性代數、微積分、概率論、優化理論等一系列數學工具&#xff0c;將神經網絡的每一個部件都拆解得淋漓盡致。 …

flutter封裝vlcplayer的控制器

import dart:async;import package:flutter_vlc_player/flutter_vlc_player.dart; import package:flutter/material.dart;class GlobalVlcController extends ChangeNotifier {//設置單例/*static final GlobalVlcController _instance GlobalVlcController._internal();fact…

SEO-濫用元機器人、規范或 hreflang 標簽

&#x1f9f1; 一、濫用 Meta Robots 標簽 ? 常見問題&#xff1a; 問題描述設置了 noindex 不該屏蔽的頁面比如產品頁、分類頁被意外 noindex&#xff0c;導致不被收錄設置 nofollow 導致內鏈失效所有鏈接都被 nofollow&#xff0c;影響爬蟲抓取路徑在 <meta> 標簽和…

笨方法學python -練習14

程序&#xff1a; from sys import argv script, user_name argv prompt > print(f"Hi {user_name}, Im the {script} script.") print("Id like to ask you a few questions.") print(f"Do you like me {user_name}?") likes in…

Frida:配置自動補全 in VSCode

1. 前言 編寫 frida JavaScript 腳本是一件 very 普遍的事情在 Android Reverse 中。為了方便編寫&#xff0c;配置相關的環境使其能夠自動補全是很關鍵的&#xff0c;即通過類名就能夠獲取該類的所有對外接口信息&#xff0c;這是面向對象編程的核心優勢&#xff0c;可惜我沒…

FPGA矩陣算法實現

簡介 現如今設計上對速度的要求越來越高&#xff0c;而矩陣相乘含有大量的乘法和加法計算&#xff0c;造成計算時間長從而影響性能&#xff0c;本章節利用FPGA實現浮點型矩陣運算&#xff0c;可在極短時間內完成矩陣運算。 知識介紹 矩陣計算公式如下&#xff1a; 需要保證A的…

C#可空類型詳解:從基礎到高級應用

C#可空類型詳解&#xff1a;從基礎到高級應用 在C#編程中&#xff0c;可空類型是一個非常重要的概念&#xff0c;它允許我們為值類型&#xff08;如int、bool、DateTime等&#xff09;分配null值&#xff0c;從而增強了代碼的表達能力和靈活性。本文將詳細介紹C#中可空類型的各…

Elasticsearch:異常檢測入門

在我之前的文章里&#xff0c;我有講述很多有關使用機器學習來針對數據做異常監測的文章。你可以在 “開發者上手指南” 里的 “機器學習” 章節中找到。在今天的練習中&#xff0c;我將使用最新的 Elastic Stack 9.0.2 來展示如何在 Elasticsearch 中使用機器學習的方法來進行…

ARuler3.1.3 | 高級版測量應用,利用AR技術測量所有

ARuler是一款非常便捷的測量應用程序&#xff0c;專為需要精確測量的用戶設計。它不僅具備強大的3D測量功能&#xff0c;還利用增強現實&#xff08;AR&#xff09;技術&#xff0c;為用戶提供多種測量選項&#xff0c;包括角度、長度、寬度、高度、面積和體積等。無論是日常生…

MapReduce分布式計算框架:從原理到實戰

大家好&#xff01;今天我們來聊聊大數據處理領域的一個重要框架——MapReduce。作為Google提出的經典分布式計算模型&#xff0c;MapReduce極大地簡化了海量數據的處理流程。無論你是大數據新手還是有一定經驗的開發者&#xff0c;這篇文章都會讓你對MapReduce有更深入的理解。…

Redis 7 及更高版本的腳本化方案

一、背景與動機 傳統的 Redis 腳本機制依賴于客戶端加載 EVAL 腳本&#xff0c;存在以下局限&#xff1a; 網絡與編譯開銷 每次調用都要傳輸腳本源碼或重新加載 SHA1。緩存失效風險 重啟、主從切換、SCRIPT FLUSH 后腳本緩存丟失&#xff0c;事務易失敗。調試與運維困難 SHA1…