Docker 高級管理-容器通信技術與數據持久化

(1)創建一個叫 my-net 的 bridge 類型的網絡

(2)查看都有哪些網絡

(3)運行一個容器井連接到新建的 my-net 網絡

(4)運行一個容器井加入到 my-net 網絡

2:Host 模式

由于使用了 Host 模式,容器會直接使用宿主機的網絡端口,因此可以直接在宿主機上通過 localhost 訪問容器內的服務,使用 ifconfig 命令可以看到容器的網絡和宿主機的是一致的。

3:container 模式

創建 host2 容器共享 host1 容器的網絡

査詢 host1 容器的網絡

査看 host2 容器的網絡,確認和 host1 容器的網絡一致

4:None 模式

5:0verlay 模式

6:Macvlan 模式

7:自定義網絡模式

二:端口映射

1:端口映射

(1)-P(大寫):指的是容器應用 PORT 隨機映射到宿主機上的 PORT自動綁定所有對外提供服務的容器端口,映射的端口將會從沒有使用的端口池中自動隨機選擇,但是如果連續啟動多個容器的話,則下一個容器的端口默認是當前容器占用端口號+1。生產場景一般不使用隨機映射,好處是由 docker 分配,宿主機端口不會沖突。
(2)-p(小寫):(宿主機 PORT:容器 PORT)
宿主機 IP 不寫表示“0.0.0.8”,宿主機 PORT 不寫表示隨機端口,容器 PORT 必須指定,可以同時對多個端口進行映射綁定。
指定端口映射,在標準化場景下使用頻率高。
端口的取值范圍 32768--61000 之間

2:隨機映射端口

3:指定映射端口

(1)固定端口

(2)宿主機隨機端口

三:容器互聯

1:使用--1ink 選項(已逐漸被棄用)

(1)創建源容器

(2)創建接收容器

(3)測試容器互聯

四:容器間通信實現案例

1:常用選項及解釋
(1)--driver,-d

(2)--subnet

(3)--gateway

(4)--ip-range

(5)--internal

(6)--attachable

2:容器間通信步驟
(1)創建自定義網絡

(2)創建一個不在此自定義網絡的容器

(3)創建兩個容器,并加入自定義網絡

(4)登錄到容器,測試通信結果

第二節:數據持久化技術
一:Docker 的數據管理

1:什么是數據卷

數據卷是一個可供一個或多個容器使用的特殊目錄,它繞過了容器的文件系統,直接將宿主機上的目錄或文件掛載到容器內部。這意味著即使容器被刪除,數據卷中的數據也不會丟失,從而實現了數據的持久化存儲。

2:數據卷的作用
(1)數據持久化

容器的生命周期可能是短暫的,當容器被刪除時,其內部文件系統中的數據也會隨之消失。而數據卷可以將數據存儲在宿主機上,確保數據不會因為容器的刪除而丟失。
(2)數據共享
多個容器可以同時掛載同一個數據卷,從而實現容器之間的數據共享。這對于需要共享配置文件、日志文件或其他數據的應用場景非常有用。
(3)數據備份和恢復
由于數據卷中的數據存儲在宿主機上,因此可以方便地進行備份和恢復操作。
(4)分離數據和應用
將數據存儲在數據卷中,可以使容器的鏡像更加輕量級,只包含應用程序本身,而將數據分離出來,提高了容器的可移植性和可維護性。

2:創建匿名數據卷

3:創建具名數據卷

(1)創建具名數據卷

(2)在創建容器時掛載具名數據卷

4:共享容器數據卷?

5:掛載主機目錄作為數據卷

(1)將宿主機上的/data1 目錄掛載到容器內的/usr/local/apache2/htdocs 目錄

docker run -dit -p 8088:80-v /data1:/usr/local/apache2/htdocs --name webe6 httpd

(2)創建測試文件

echo "ni hao">/data1/index.html

(3)訪問服務

curl 192.168.10.101:8080

(1)在宿主機創建掛載目錄

mkdir -p /www/{conf,html}

(2)準備數據
將編輯好的 nginx 配置文件拷貝到/www/conf
將網站代碼拷貝到/www/html

(3)創建容器

docker run -d -p 9090:80
-v /www/conf/nginx.conf:/etc/nginx/nginx.conf
-v/www/html:/www/html
-v/www/nginx/log:/var/log/nginx
--name webo8 nginx "nginx"

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

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

相關文章

在 Ubuntu 24.04 中安裝 Python 2.7、pip 及 mysqlclient==1.4.6 的完整指南

在 Ubuntu 24.04 中安裝 Python 2.7、pip 及 mysqlclient1.4.6 的完整指南 前言 隨著 Ubuntu 24.04 的發布,許多舊的軟件包已被移除或更新,但老項目需要 Python 2 。本文將詳細介紹自己如何在 Ubuntu 24.04 中成功安裝 Python 2.7、pip 以及 mysqlclient…

doker以及網站案例

一.docker搭建1.安裝dockerapt-get install docker.io docker-compose2.編寫配置文件(注意路徑正確)vim /etc/systemd/system/docker.service.d/http-proxy.conf[Service] Environment"HTTP_PROXYhttp://科學上網訪問的ip:端口" Environment&q…

【HarmonyOS Next之旅】DevEco Studio使用指南(四十一) -> 獲取自定義編譯參數

目錄 1 -> HAP/HSP運行時獲取編譯構建參數 1.1 -> 生成BuildProfile類文件 1.2 -> 在代碼中獲取構建參數 1.3 -> 默認參數 1.4 -> 自定義參數 2 -> HAR運行時獲取編譯構建參數 2.1 -> 生成BuildProfile類文件 2.2 -> 在代碼中獲取構建參數 2.…

NGINX系統基于PHP部署應用

目錄 部署 配置 部署 準備三臺主機,一臺服務端,兩臺客戶端; 1.在兩臺客戶端主機上分別安裝 MySQL; [rootmaster /]#yum install -y mysql nginx; [rootmaster /]#yum install -y nginx PHP; [rootmaster /]#yum install -y php PHP-m…

ip地址可以精確到什么級別?如何獲取/更改ip地址

IP地址的精確級別和獲取/更改方式取決于其類型(公網IP vs 內網IP),以下是詳細解答: 一、IP地址的精確級別 1. 公網IP地址(互聯網可見) 定位級別精度范圍說明國家/地區級約95%準確通過IP數據庫(…

Linux(Centos 7.6)命令詳解:useradd

1.命令作用創建新用戶或更新默認的新用戶信息(create a new user or update default new user information)2.命令語法Usage: useradd [options] LOGINuseradd -Duseradd -D [options]3.參數詳解OPTION:-b, --base-dir BASE_DIR,新帳戶的主目錄的基本目錄&#xff1…

異步I/O庫:libuv、libev、libevent與libeio

異步I/O編程是現代高性能網絡服務的核心,而libuv、libev、libevent、libeio這四個庫則是這一領域的常青樹。它們雖同屬事件驅動模型,卻在設計哲學、適用場景和實現細節上各具特色。本文將深入剖析其異同。 一、共同點:異步事件驅動 事件循環&…

go go go 出發咯 - go web開發入門系列(四) 數據庫ORM框架集成與解讀

go go go 出發咯 - go web開發入門系列(四) 數據庫ORM框架集成與解讀 往期回顧 go go go 出發咯 - go web開發入門系列(一) helloworldgo go go 出發咯 - go web開發入門系列(二) Gin 框架實戰指南go go g…

CD47.【C++ Dev】list的模擬實現(2)

目錄 1.const修飾的迭代器的實現 方法1:分成兩個類 完整代碼 方法2:STL庫的寫法 2.STL庫的第三個模版參數T*的解釋 ->->的簡寫語法 3.其他成員函數 insert erase push_back、push_front、pop_front、pop_back size clear 析構函數~list() 拷貝構造函數(★…

UI前端與數字孿生融合新領域拓展:智慧教育的虛擬實驗室建設

hello寶子們...我們是艾斯視覺擅長ui設計、前端開發、數字孿生、大數據、三維建模、三維動畫10年經驗!希望我的分享能幫助到您!如需幫助可以評論關注私信我們一起探討!致敬感謝感恩!一、引言:虛擬實驗室 —— 打破教育邊界的技術革命傳統實驗教學正面臨 “設備昂貴、…

7. TCP 和 UDP 的區別

總結 TCP 面向連接,需要三次握手建立連接,UDP 無連接,不需要握手,直接發送數據。UDP 有較好的實時性,效率比 TCP 高。TCP 面向字節流,實際上是 TCP 把數據看成一連串無結構的字節流,UDP 是面向報…

iOS Widget 開發-7:TimelineProvider 機制全解析:構建未來時間線

在 WidgetKit 中,TimelineProvider 是小組件生命周期的核心機制之一。它控制著 數據獲取時機、展示內容 與 刷新策略,是實現時間驅動內容更新的基礎。 本文將介紹 TimelineProvider 的工作原理、設計模式、常見場景與高級用法,幫助大家構建智…

基于PHP/MySQL的企業培訓考試系統源碼,高并發、穩定運行,源碼開源可二開

溫馨提示:文末有資源獲取方式這是一款專為企業設計的開源培訓考試系統,采用PHPMySQL技術棧開發,具有高并發處理能力和穩定運行特性。系統源碼完全開放,支持二次開發,可滿足各類企業的培訓考核需求。核心功能特點1. 高性…

時序數據庫InfluxDB

一.定義 時序數據庫 是一種專門用于高效存儲和查詢帶有時間戳的數據的數據庫。如果你的數據是隨著時間變化而不斷產生,并且你想知道過去某一時刻發生了什么,那么你應該用時序數據庫。 這類數據通常具有以下特征: 數據點按時間順序不斷寫入…

2025.07.09華為機考真題解析-第三題300分

?? 點擊直達筆試專欄 ??《大廠筆試突圍》 ?? 春秋招筆試突圍在線OJ ?? 筆試突圍OJ 03. 博物館安保攝像頭配置 問題描述 A先生負責為一家新開的博物館設計安保監控系統。博物館有多個展廳需要監控,每個展廳都有不同的面積。現在有多種型號的監控攝像頭可供選擇,每…

存儲過程封裝:復雜業務邏輯的性能優化

存儲過程作為數據庫層面的重要功能,能夠顯著提升復雜業務邏輯的執行效率。以下是存儲過程在性能優化中的核心優勢、實現策略和實際應用場景。一、存儲過程的核心優勢?網絡傳輸壓縮?存儲過程將多條SQL語句封裝為單次調用,相比應用層多次請求可減少60%-8…

逗號分隔字段統計秘籍:一條SQL實現逗號分割字段的數量分析

一、問題場景與痛點 在數據庫設計中,經常會遇到統計某一些數據的最大數量最小數量等,特別是**逗號分隔字段 **的統計會顯得非常困難 下面以我生產上遇到的一個問題講解: 有個需求是在o_work_order表中統計sn字段中哪個工單號的數量最多&#…

數據庫性能優化指南:解決ORDER BY導致的查詢性能問題( SQL Server )

數據庫性能優化指南:解決ORDER BY導致的查詢性能問題 問題描述 在300萬行的INTERFACE_INTERACTION_LOG表中執行以下查詢: SELECT TOP 1 * FROM INTERFACE_INTERACTION_LOG WHERE 1 1AND (SENDSTATUS 0 OR SENDSTATUS -1)AND SENDMETHOD POSTAND ERRO…

Centos 7下使用C++使用Rdkafka庫實現生產者消費者

1. 了解 Kafka Apache Kafka 是一個分布式流處理平臺,核心功能包括: 發布/訂閱消息系統:解耦生產者和消費者 分布式存儲:持久化、容錯的消息存儲 流處理:實時處理數據流 核心概念: 概念說明BrokerKaf…

UE5多人MOBA+GAS 13、添加死亡、復活邏輯以及布娃娃含物理資產的修改調整

文章目錄使用GE為角色添加定時的Tag控制死亡時間1、添加死亡Tag2、創建死亡GE,并完成相關配置3、在AbilitySystemComponent中監聽屬性的變化,調用GE來添加Tag到角色上4、在角色中監聽ASC傳入的Tag以及Tag的層數,來響應不同的函數添加死亡、復…