docker本質上是一個附加系統,準確來說是一個用於開發,交付和運行應用程式的開放平台;Docker可以使開發者能夠將應用程式與基礎架構分開,從而可以快速交付軟體;借助Docker也可以與管理應用程式相同的方式來管理基礎架構。
本文操作環境:ubuntu 18.04系統、Docker 20.10.11版、Dell G3電腦。
docker 是系統嗎?
Docker在本質上是一個附加系統。
Docker 是一個開源的應用程式容器引擎,基於 Go 語言 並遵循 Apache2.0 協定開源。
Docker 可以讓開發者打包他們的應用程式以及依賴套件到一個輕量級、可移植的容器中,然後發佈到任何流行的 Linux 機器上,也可以實現虛擬化。
容器是完全使用沙箱機制,彼此之間不會有任何介面(類似 iPhone 的 app),更重要的是容器效能開銷極低。
Docker 從 17.03 版本之後分為 CE(Community Edition: 社群版) 和 EE(Enterprise Edition: 企業版)。
Docker 的優點
Docker 是一個用於開發,交付和運行應用程式的開放平台。 Docker 可讓您將應用程式與基礎架構分開,從而快速交付軟體。借助 Docker,您可以與管理應用程式相同的方式來管理基礎架構。透過利用 Docker 的方法來快速交付,測試和部署程式碼,您可以大幅減少編寫程式碼和在生產環境中執行程式碼之間的延遲。
特徵
在docker的網站上提到了docker的典型場景:
Automating the packaging and deployment of applications(使應用的打包與部署自動化)
Creation of lightweight, private PAAS environments(創建輕量、私密的PAAS環境)
Automated testing and continuous integration/deployment(實現自動化測試和持續的整合/部署)
Deploying and scaling web apps, databases and backend services(部署與擴充webapp、資料庫和後台服務)
由於其基於LXC的輕量級虛擬化的特點,docker相比KVM之類最明顯的特點就是啟動快,資源佔用小。因此對於建構隔離的標準化的運作環境,輕量級的PaaS(如dokku), 建構自動化測試和持續整合環境,以及一切可以橫向擴展的應用(尤其是需要快速啟停來應對峰谷的web應用) 。
建構標準化的運行環境,現有的方案大多是在一個baseOS上運行一套puppet/chef,或者一個image文件,其缺點是前者需要base OS許多前提條件,後者幾乎不可以修改(因為copy on write 的文件格式在運行時rootfs是read only的)。而後者檔案體積大,環境管理和版本控製本身也是一個問題。
PaaS環境是不言而喻的,其設計之初和dotcloud的案例都是將其作為PaaS產品的環境基礎
因為其標準化建置方法(buildfile)和良好的REST API,自動化測試和持續整合/部署能夠很好的整合進來
因為LXC輕量級的特點,其啟動快,而且docker能夠只載入每個container變化的部分,這樣資源佔用小,能夠在單機環境下與KVM之類的虛擬化方案相比能夠更加快速和占用更少資源
推薦學習:《docker影片教學》
以上是docker 是系統嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

要拉取 Docker 鏡像,請使用以下步驟:登錄 Docker Hub使用 "docker pull [鏡像名稱]" 命令拉取鏡像可選:指定鏡像版本以拉取特定版本使用 "docker images" 命令檢查已拉取的鏡像

更改 Docker 容器中的命令有兩種方法:使用 Dockerfile,在創建容器時指定命令。使用 docker update 命令,在容器創建後更改命令。更改命令後,需要重新啟動容器才能使新命令生效。

在 Docker 中添加 Redis 的步驟包括:創建 Docker 容器(docker run -d --name my-redis redis:latest)連接到容器(docker exec -it my-redis bash)安裝 Redis 擴展模塊(下載源代碼、編譯模塊、使用 --loadmodule 啟動 Redis)配置 Redis(編輯 /etc/redis/redis.conf 文件)啟動 Redis(service redis start)連接到 Redis(redis-c

退出 Docker 容器的方法:運行 docker stop <容器名稱或 ID> 命令向 Docker 守護進程發送停止請求。守護進程向容器發送 SIGTERM 信號以可控退出,如果 10 秒內未退出,則發送 SIGKILL 信號強制退出。

Docker集群是一種將多個主機連接起來的分佈式容器管理系統,它允許用戶擴展容量、提高可用性和簡化管理。創建Docker集群包括安裝Docker Engine、創建集群網絡、加入集群和部署容器。 Docker Swarm和Kubernetes都是用於管理集群的工具,Swarm適合小型和中型集群,而Kubernetes具有更多高級功能。 Docker集群的好處包括可擴展性、高可用性、簡化管理、資源優化和快速部署。

當 Docker 倉庫掛掉時,您可以採取以下措施:檢查網絡連接和重啟 Docker 服務;使用本地鏡像或嘗試替代倉庫;創建自己的倉庫或聯繫倉庫提供商。

給 Docker 容器打補丁的幾種方法有:使用官方倉庫鏡像、創建自己的鏡像並手動打補丁、使用補丁管理工具。具體步驟包括:識別需要修補的容器、拉取補丁鏡像、替換受影響的容器、驗證補丁。

要刪除 Docker 鏡像文件,可以使用 docker image rm 命令:要刪除單個鏡像,使用其完整或部分名稱(如 docker image rm my-image)。要刪除多個鏡像,使用通配符或空格分隔的鏡像名稱列表(如 docker image rm my-*)。要刪除所有未使用的鏡像,使用 docker image prune 命令。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SublimeText3 Linux新版
SublimeText3 Linux最新版

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中