前言
Docker 是一個開源的應用容器引擎,基於 Go 語言 並遵從 Apache2.0 協議開源。
Docker 可以讓開發者打包他們的應用以及依賴包到一個輕量級、可移植的容器中,然后發布到任何流行的 Linux 機器上,也可以實現虛擬化。
容器是完全使用沙箱機制,相互之間不會有任何接口(類似 iPhone 的 app),更重要的是容器性能開銷極低。
Docker 從 17.03 版本之后分為 CE(Community Edition: 社區版) 和 EE(Enterprise Edition: 企業版),我們用社區版就可以了。
Docker 的優點
Docker 是一個用於開發,交付和運行應用程序的開放平台。Docker 使您能夠將應用程序與基礎架構分開,從而可以快速交付軟件。借助 Docker,您可以與管理應用程序相同的方式來管理基礎架構。通過利用 Docker 的方法來快速交付,測試和部署代碼,您可以大大減少編寫代碼和在生產環境中運行代碼之間的延遲。
快速,一致地交付您的應用程序
Docker 允許開發人員使用您提供的應用程序或服務的本地容器在標准化環境中工作,從而簡化了開發的生命周期。
響應式部署和擴展
Docker 是基於容器的平台,允許高度可移植的工作負載。Docker 容器可以在開發人員的本機上,數據中心的物理或虛擬機上,雲服務上或混合環境中運行。
在同一硬件上運行更多工作負載
Docker 輕巧快速。它為基於虛擬機管理程序的虛擬機提供了可行、經濟、高效的替代方案,因此您可以利用更多的計算能力來實現業務目標。Docker 非常適合於高密度環境以及中小型部署,而您可以用更少的資源做更多的事情。
安裝 Docker
單獨主機
官方指南
最近 Docker 更新了 Docker-CE 2.0 ,提供了更新、更快、更全面的服務。同時,Docker 還更新的 Blog ,提供了更明確簡介的說明,疑問或錯誤之處請參閱 Docker 官網。
openEuler
基於 樹莓派 4B 安裝 openEuler ,系統版本為 21.03 。
[root@openEuler ~]# hostnamectl
Static hostname: openEuler
Icon name: computer
Machine ID: c20d5624a1a1440fbb1cea8b00e94039
Boot ID: f673760ec6254bd7a4eac29560a9d1a9
Operating System: openEuler 21.03
Kernel: Linux 5.10.0-4.17.0.8.oe1.raspi.aarch64
Architecture: arm64
對於 openEuler 來說,它使用 dnf 來進行包管理。
dnf 是新一代的rpm軟件包管理器。首次出現在 Fedora 18 這個發行版中。而最近,它取代了 yum ,正式成為 Fedora 22 的包管理器。
dnf 包管理器克服了yum包管理器的一些瓶頸,提升了包括用戶體驗、內存占用、依賴分析、運行速度等多方面的內容。 dnf 使用 RPM、libsolv 和 hawkey 庫進行包管理操作。
dnf update
dnf install docker
dnf install docker-compose
其他參考
以下為之前 Docker-CE 版本的操作,部分文章還可參考:
- 我對官方安裝文檔的譯文: 為 Debian 獲取 Docker Engine - Community
- 如果下載安裝官方 Docker 軟件包時存在網絡問題,請參考:Debian/Ubuntu Docker CE 換清華源
- 更換 Docker Hub 國內源: Docker Hub 鏡像加速
- 根據個人習慣進行可選設置: Linux 安裝 docker 后的步驟
雲服務器
目前阿里雲、騰訊雲等雲服務商都提供雲服務器 ECS 、輕量應用服務器等服務。如果讀者身份是某服務商新用戶或者學生,那么都提供優惠,一年份的1(或2)核2G服務器約為100元左右。
購買的服務器可以選擇 Ubuntu 等系統再通過,也可選擇現有的基於 Centos 系統的 Docker 鏡像。
容器加速
通過注冊的阿里雲賬號訪問 容器鏡像服務 -> 鏡像加速器 ,按照步驟來即可。
相關鏈接
Docker 官網:https://www.docker.com
Github Docker 源碼:https://github.com/docker/docker-ce