Docker于2013 年底推出,與 Web 應用程序開(kāi)發(fā)人員使用的其他一些技術(shù)相比,這并不是很久以前的事。盡管如此,它現在已安裝在數千臺服務(wù)器和虛擬機上,數以百萬(wàn)計的應用程序依賴(lài)它運行。通過(guò)今天的文章,我們將了解為什么 Docker 已被證明在開(kāi)發(fā)人員中如此成功,我們還將了解如何將其部署在自己的VPS上。
什么是 Docker?
Docker 是指一組使用操作系統級虛擬化來(lái)創(chuàng )建稱(chēng)為容器的子系統的工具。容器充當隔離環(huán)境,并擁有自己的 CPU、內存和網(wǎng)絡(luò )資源份額。 部署容器時(shí),您可以從一系列軟件包 (稱(chēng)為映像)中進(jìn)行選擇,以便立即安裝并開(kāi)始使用。有數百個(gè)可用圖像,您可以創(chuàng )建自己的圖像以滿(mǎn)足您的特定要求。
您可以在運行Linux、macOS和Windows的物理服務(wù)器和虛擬機上部署 Docker。原始項目作為開(kāi)源軟件發(fā)布,并且繼續完全免費使用。對于大多數用例來(lái)說(shuō),它已經(jīng)足夠強大了。
不過(guò),如果項目需要額外的功能,例如多個(gè)私有存儲庫、運行多個(gè)并行構建、審計日志或更強大的訪(fǎng)問(wèn)控制系統 - 您需要選擇一個(gè)高級計劃,起價(jià)為每月 5 美元。但是你會(huì )在虛擬專(zhuān)用服務(wù)器上使用 Docker 做什么呢?
為什么要在 VPS 上使用 Docker?
希望建立一個(gè)簡(jiǎn)單的 WordPress 博客的用戶(hù)可能不會(huì )過(guò)多地使用 Docker。然而,對于從事多個(gè)不同項目的開(kāi)發(fā)人員來(lái)說(shuō),它可能是無(wú)價(jià)的。
以下是 Docker 的一些好處:
您將擁有一個(gè)更干凈的主機操作系統
通過(guò)將所有內容放入容器中,您可以減少 VPS 主操作系統上的混亂程度。因此,您可以為您的應用程序提供更安全、可靠和更清潔的托管環(huán)境。
你可以犯錯而不用擔心后果
VPS 操作系統上的編碼錯誤可能會(huì )導致崩潰,并且通常,處理該問(wèn)題可能會(huì )導致代價(jià)高昂的延遲和停機時(shí)間。通過(guò)將應用程序置于 Docker 容器的封閉環(huán)境中,您無(wú)需擔心任何影響 VPS 整體性能的錯誤。
您可以在同一個(gè) VPS 上托管多個(gè)獨立的應用程序
借助 Docker 容器,您可以使用單個(gè) VPS 托管兩個(gè)或多個(gè)在不同軟件堆棧之上運行的網(wǎng)站或應用程序。這是一個(gè)巨大的靈活性提升,特別是對于同時(shí)處理多個(gè)項目的開(kāi)發(fā)人員。
您將能夠完美地復制生產(chǎn)環(huán)境
Docker 容器允許您設置與生產(chǎn)服務(wù)器相同的暫存環(huán)境。這樣,您可以確保在部署代碼時(shí)一切正常。
應用程序相互隔離
如果您的應用程序位于主機操作系統上,其中單個(gè)應用程序的錯誤或崩潰可能會(huì )破壞整個(gè) VPS 及其上托管的所有內容的性能。Docker 容器的安全隔離意味著(zhù)即使一個(gè)應用程序正在運行,其他應用程序也不會(huì )受到影響。
容器提供更好的應用安全性
通過(guò)將應用程序隔離到不同的容器中,Docker 減少了對一個(gè)應用程序的攻擊機會(huì ),讓黑客控制了其余的應用程序。
您可以輕松地在多個(gè) VPS 上部署相同的應用程序
Docker 映像允許您制作您在一個(gè) VPS 上開(kāi)發(fā)的網(wǎng)站或應用程序的完整副本,將其部署到另一臺機器上,并將其用作故障轉移。
簡(jiǎn)化備份
通過(guò)將 Docker 容器轉換為映像,您還可以備份應用程序以及為其提供支持的所有軟件,如果發(fā)生可怕的事情,您可以快速恢復。
安裝 Docker 需要什么?
Docker 可以在 Windows、相當多的 Linux 發(fā)行版和 macOS 上運行。這些是完全不同的環(huán)境,并沒(méi)有適用于所有環(huán)境的單一系統要求。以下是每個(gè)主機操作系統的先決條件:
視窗
如果你要在 Windows 上運行 Docker,你需要:
- 具有二級地址轉換的 64 位 CPU
- 4GB 內存
- 在 BIOS 設置中啟用 BIOS 級硬件虛擬化
將 Docker 與適用于 Linux 2 ( WSL2 ) 的 Windows 子系統一起使用,您需要啟用 WSL 2 功能和 Linux 內核更新包的Windows 10 64 位家庭版、專(zhuān)業(yè)版、企業(yè)版或教育版 1903 (內部版本 18362 或更高版本)安裝。
需要在 Hyper-V 的后端和 Windows 容器上運行 Docker 的用戶(hù)需要啟用 Hyper-V 和容器功能的Windows 10 64 位專(zhuān)業(yè)版、企業(yè)版或教育版(Build 17134 或更高版本)。
Linux
Docker for Linux 兼容多種不同的 CPU 架構和幾乎所有流行的發(fā)行版,包括CentOS、Debian、Fedora、Raspbian和Ubuntu。這些容器具有對開(kāi)源操作系統的原生支持,這意味著(zhù)您可以使用更少的配置設置來(lái)讓 Docker 運行。
您需要的另一件事是運行內核版本 3.10 或更高版本的系統, 因為舊內核與 Docker 容器不兼容。Linux 用戶(hù)還需要至少 512MB 的 RAM,不過(guò)建議在至少有 2GB隨機存取內存的系統上安裝 Docker。在存儲空間和 CPU 能力方面,要求嚴格取決于您需要創(chuàng )建的容器數量以及您將在其中存儲的應用程序的性質(zhì)。
蘋(píng)果系統
使用Intel 芯片的 Mac 機器的用戶(hù)需要:
- 運行 macOS 版本 10.14 或更高版本
- 至少有 4GB 的 RAM
- 確保未安裝早于 4.3.30 的 VirtualBox 版本,因為它們可能會(huì )導致兼容性問(wèn)題
使用Apple CPU的 Mac 機器的用戶(hù)需要確保已安裝Rosetta 2。
如何安裝 Docker?
盡管 Windows 在桌面操作系統市場(chǎng)上占據主導地位,但 Linux 為大多數 Web 托管服務(wù)器提供支持。它使服務(wù)更具成本效益,并且包括 Docker 在內的許多工具在 Linux 上的性能比在任何其他平臺上都好。
CentOS是最流行的用于托管服務(wù)器的 Linux 發(fā)行版之一,它與 Docker 非常容易集成。讓我們看一下安裝它所需的步驟。
1.以root或sudo權限登錄
安裝和運行 Docker 需要 root 或超級用戶(hù)訪(fǎng)問(wèn)權限。如果您以 root 身份登錄,則可以在命令中省略sudo前綴。
2.更新系統
在繼續安裝新應用程序之前,必須更新所有軟件包。要更新您的 CentOS 系統,您需要以下命令:
須藤百勝更新 -y
-y選項會(huì )自動(dòng)回答 Linux 在檢查更新后將出現的提示。
3.設置Docker存儲庫
Docker 不是 CentOS 的默認軟件存儲庫的一部分,因此您需要自己設置它。您可以使用以下命令通過(guò)yum-utils 包來(lái)完成:
sudo yum install yum-utils -y
sudo yum-config-manager –add-repo https://download.docker.com/linux/centos/docker-ce.repo
4.安裝Docker引擎
已設置存儲庫后,您可以使用以下命令安裝最新版本的 Docker 和 Containerd:
sudo yum install docker-ce docker-ce-cli containerd.io
5.啟動(dòng) Docker 并驗證它是否正在運行
運行 Docker 所需的所有組件現在都安裝在您的 CentOS 系統上。是時(shí)候激活它并測試它是否有效。
要啟用 Docker,請使用:
sudo systemctl 啟動(dòng)泊塢窗
因為沒(méi)有視覺(jué)指示告訴您 Docker 是否正在運行,所以平臺的文檔建議您在第一次設置 Docker 時(shí)運行以下命令:
sudo docker run hello-world
它告訴 Docker 下載一個(gè)測試鏡像,在容器中運行它,并打印出一條消息,告訴您安裝成功。
如果您需要使用Docker 容器,我們的自我管理 VPS是您的完美解決方案。有了它們,您可以從一開(kāi)始就完全控制虛擬服務(wù)器。您首先要選擇它將運行的操作系統。
選項包括:
- CentOS 7
- CentOS 8
- Ubuntu 18
- Ubuntu 16
- Debian 10
- Debian 9
- OpenSUSE 15
- 視窗 2019
您還可以決定您的 VPS 將擁有什么樣的硬件資源。您有四個(gè)預設計劃,但也可以選擇您將獲得的 CPU 功率、RAM和SSD 存儲的確切數量。如果您的項目超出初始設置,您可以隨時(shí)輕松添加更多資源。您需要選擇的最后一件事是虛擬服務(wù)器的位置。您可以在美國的幾個(gè)數據中心和歐洲的另一個(gè)數據中心之間進(jìn)行選擇。
在自我管理的 VPS 上,您可以在 Linux 上獲得root 訪(fǎng)問(wèn)權限,在Windows上獲得管理員權限,因此您對服務(wù)器的使用方式?jīng)]有任何限制。我們的虛擬服務(wù)器是使用KVM Linux 虛擬化構建的,它保證了可靠的性能、完全隔離的環(huán)境和更好的安全性。您的 VPS 將在您購買(mǎi)后立即設置好,您幾乎可以立即開(kāi)始處理您的應用程序。
結論
毫無(wú)疑問(wèn)——Docker 是一個(gè)非常強大的解決方案。該技術(shù)是可靠的,它為開(kāi)發(fā)人員提供了構建和配置應用程序以獲得最佳性能和安全性所需的靈活環(huán)境。將此與VPS 托管的優(yōu)勢相結合,您將很快明白為什么此設置位于如此多項目的核心。