本教程將向您展示如何使用 Docker Compose 在 Docker 容器中運行 WordPress 安裝。
WordPress是世界上最流行的 CMS(內容管理系統(tǒng)),這使其成為構建新站點時最重要的考慮因素。它建立在帶有 PHP 處理的 MySQL 數(shù)據(jù)庫上。
設置本地 WordPress 安裝涉及多個步驟,并且可能是一個耗時的過程。通常,您需要設置本地Web 服務器,配置服務器以執(zhí)行 PHP 代碼,并設置 MySQL 數(shù)據(jù)庫。然而,設置本地 WordPress 環(huán)境的最簡單方法是將容器化與 Docker 結合使用。
如果您剛開始使用 Docker 并且還沒有安裝 Docker,我建議您查看我們的教程《在 Ubuntu 上安裝 Docker 分步圖文指南 》。
1. 安裝 Docker Compose
當廣泛使用 Docker 時,幾個不同容器的管理很快變得繁瑣。Docker Compose 是一個工具,您可以使用它輕松定義和啟動 Docker 中的多容器應用程序。
使用 Compose,您可以在單個 YAML 文件中定義所有服務,并且使用單個命令,可以啟動或拆除所有服務。
在本教程中,我們將使用 Docker Compose 在隔離的容器化環(huán)境中并排運行兩個容器(WordPress 和 MySQL)。
現(xiàn)在讓我向您展示如何安裝最新版本的 Docker Compose 來幫助您管理多容器應用程序。
首先,檢查 當前版本 ,如有必要,在下面的命令中更新它:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
然后將可執(zhí)行權限應用于二進制文件:
linuxmi@linuxmi:~/www.linuxmi.com$ sudo chmod +x /usr/local/bin/docker-compose
最后可以通過檢查版本來驗證安裝是否成功:
linuxmi@linuxmi:~/www.linuxmi.com$ docker-compose --version
顯示
Docker Compose version v2.2.2
更多關于Docker Compose的內容可以參考官方文檔。
2. 準備目錄
您需要創(chuàng)建一個名為wordpressunder的新目錄/srv來存放 WordPress 數(shù)據(jù)。這樣我們就實現(xiàn)了一定的數(shù)據(jù)持久化。
linuxmi@linuxmi:~/www.linuxmi.com$ sudo mkdir -p /srv/wordpress [sudo] linuxmi 的密碼: linuxmi@linuxmi:~/www.linuxmi.com$ cd /srv/wordpress/
大家知道,Docker 容器中的數(shù)據(jù)不是持久的。這意味著如果您停止容器并再次運行它,您將丟失所有數(shù)據(jù),里面將不再有任何數(shù)據(jù)。當然,這可以通過添加 Docker 數(shù)據(jù)卷來避免,您將在本教程后面看
到。
3. 創(chuàng)建 YAML 文件
在 Docker Compose 領域中,運行容器所需的所有資源都必須在名為 .yaml 的 YAML 文件中定義docker-compose.yaml。然后 Docker Compose 將讀取此類文件并與 Docker 守護程序通信以創(chuàng)建、配置或銷毀定義的資源。
在我們的例子中,該docker-compose.yaml文件將包含我們的 dockerized WordPress 設置的服務定義。此外,Docker Compose 允許我們將這些服務與共享網(wǎng)絡和卷鏈接在一起。
因此,讓我們從使用Vim編輯器在/srv/wordpress目錄中創(chuàng)建一個新文件docker-compose.yaml開始 。使用如下內容來填充它:
version: '3' services: mysql: image: mysql:latest restart: always environment: MYSQL_ROOT_PASSWORD: my_password MYSQL_DATABASE: wordpress MYSQL_USER: wordpress_user MYSQL_PASSWORD: wordpress_password volumes: - mysql_data:/var/lib/mysql wordpress: image: wordpress:latest depends_on: - mysql ports: - 8080:80 restart: always environment: WORDPRESS_DB_HOST: mysql:3306 WORDPRESS_DB_USER: wordpress_user WORDPRESS_DB_PASSWORD: wordpress_password volumes: - ./wp-content:/var/www/html/wp-content volumes: mysql_data:
這里稍微解釋一下:
我們定義了兩個自動相互鏈接的服務、mysql和wordpress。
他們使用 Docker鏡像,這將決定使用哪個版本的 MySQL 和 WordPress。在這種情況下,他們的最新版本。
MySQL環(huán)境:WordPress 將使用這些環(huán)境變量連接到 MySQL 容器。
WordPress環(huán)境:要運行 WordPress 容器,您應該設置數(shù)據(jù)庫連接詳細信息。
WordPress 映像基于 Apache,它通過 derfault在端口上運行80。將默認 Apache 端口映射到8080本地計算機的端口。
mysql_data:流入這個數(shù)據(jù)庫的數(shù)據(jù)將被持久化到一個命名卷mysql_data,這樣即使你刪除了容器,數(shù)據(jù)仍然存在于你的機器上,并且可以再次安裝在新的容器中。
另外,下面的volumes參數(shù)wordpress是告訴Dockerwp-content在本地文件系統(tǒng)中顯示目錄。現(xiàn)在,我們?yōu)?WordPress 站點的某些部分(例如wp-content目錄)提供了持久存儲。在wp-content包含所有用戶提供的內容。基本上,您可以上傳到網(wǎng)站的任何內容都會在此處結束。
但是,只要您同時擁有數(shù)據(jù)庫和wp-content文件夾,您就可以隨時恢復您的站點,即使其他所有內容都丟失了。
4. 使用 Docker Compose 運行 WordPress
現(xiàn)在您已準備好運行將構建本地環(huán)境的 Docker 命令。確保您仍在wordpress目錄中。運行以下命令:
linuxmi@linuxmi:~/www.linuxmi.com$ sudo docker-compose up -d
該命令將開始運行腳本,當 Docker 拉入 MySQL 和 WordPress 圖像時,您應該會在終端中看到各種“正在下載”和“正在等待”消息。4-5分鐘即可。
當您密切關注本地文件系統(tǒng)時,您會看到在拉入 Docker 鏡像后,/srv/wordpress/wp-content將創(chuàng)建文件夾,并填充文件和文件夾。
OK,現(xiàn)在帶有 MySQL 容器和 WordPress 容器的 WordPress 安裝已成功。
5. 訪問您的 WordPress 安裝
最后,在我們的容器運行的情況下,我們可以通過 WordPress Web 界面完成安裝。在 Web 瀏覽器中,導航到http://localhost:8080或http://your_ip_address:8080。
您可能需要使用 ifconfig 命令找出您的 IP 地址。
您將看到語言選擇頁面。選擇您的語言,然后單擊繼續(xù)。
?
在下一個屏幕中,填寫必要的信息并單擊安裝 WordPress。
?
最后,當出現(xiàn)提示時,單擊登錄。
?
然后您將看到標準的 WordPress 登錄屏幕。成功通過身份驗證后,您就可以開始使用 WordPress。
額外的 Docker Compose 選項
首先,確保您在/srv/wordpress目錄中。
要查看Docker 應用程序的狀態(tài),請執(zhí)行以下命令:
linuxmi@linuxmi:/srv/wordpress$ sudo docker-compose ps NAME COMMAND SERVICE STATUS PORTS wordpress-mysql-1 "docker-entrypoint.s…" mysql running 33060/tcp wordpress-wordpress-1 "docker-entrypoint.s…" wordpress running 0.0.0.0:8080->80/tcp, :::8080->80/tcp
您可以使用以下命令停止所有正在運行的容器:
linuxmi@linuxmi/srv/wordpress$ sudo docker-compose stop要啟動現(xiàn)有容器中開始與docker-compose up:
linuxmi@linuxmi/srv/wordpress$ sudo docker-compose start下面顯示的命令將停止并刪除容器和所有網(wǎng)絡:
linuxmi@linuxmi/srv/wordpress$ sudo docker-compose down
結論
我們向您介紹了 Docker Compose 背后的概念,您現(xiàn)在應該能夠定義甚至是簡單的多容器應用程序。
在本教程中,您使用 Docker Compose 安裝了帶有 Docker 的 WordPress。您現(xiàn)在已經(jīng)啟動并運行了 WordPress。
我們希望您喜歡這篇關于使用 Docker 安裝 WordPress的指南文章。
審核編輯:湯梓紅
-
數(shù)據(jù)庫
+關注
關注
7文章
3767瀏覽量
64279 -
容器
+關注
關注
0文章
494瀏覽量
22046 -
MySQL
+關注
關注
1文章
802瀏覽量
26452 -
Docker
+關注
關注
0文章
455瀏覽量
11818 -
wordpress
+關注
關注
0文章
34瀏覽量
2863
原文標題:使用 Docker 安裝 WordPress 圖文指南
文章出處:【微信號:Linux迷,微信公眾號:Linux迷】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論