iT邦幫忙

2021 iThome 鐵人賽

DAY 29
0
DevOps

以 Docker 為始的多種開源服務初探系列 第 29

Day 29 使用 docker-compose 來安裝 Wordpress

使用 docker 安裝 Wordpress 這個相當熱門的 CMP 內容管理平台,可以省去不少過往架設 LAMP 伺服器的一系列設定困難度。可惜的是,若依照 Wordpress 官方的 docker 版本直接在遠端的伺服器運行,還是會遇上一些狀況的。這篇筆記下過程和處理方法。

前置條件

uploads.ini

對於 Wordpress 官方的 docker 映像檔,你需要先給定 wordpress 設定檔,來讓 Wordpress 得以上傳檔案、分配到可使用的最大記憶體數量...等。否則你會發現當你完成初步設定後,光要登入後台就出現「連線已重設」等一連串錯誤。

file_uploads = On
memory_limit = 64M
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 600

docker-compose.yml

version: '3'
 
services:
   db:
     image: mysql:5.7
     container_name: mysql_wordpress
     volumes:
       - /user/wordpress/db_data:/var/lib/mysql
     restart: always
     ports:
       - "3307:3306"
     environment:
       MYSQL_ROOT_PASSWORD: wordpress_root_password
       MYSQL_DATABASE: wordpress_db
       MYSQL_USER: wordpress_user
       MYSQL_PASSWORD: wordpress_password
 
   wordpress:
     container_name: wordpress
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8888:80"
     restart: always
     volumes:
       - /user/wordpress/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress_user
       WORDPRESS_DB_PASSWORD: wordpress_password
       WORDPRESS_DB_NAME: wordpress_db
volumes:
    db_data: {}

安裝

  1. 將上述的 docker-compose.ymluploads.ini 上傳到遠端伺服器內的 /user/wordpress 資料夾內

  2. 執行 docker-compose up -d

  3. 在網址列中輸入:http://<遠端伺服器 IP 位置>:<對外埠號>,你就會看到熟悉的安裝畫面
    wordpress-demo-1

  4. 輸入你的網站的資料後,按下「安裝 Wordpress」
    wordpress-demo-2

  5. 接著用方才的資料登入後台
    wordpress-demo-3

  6. 你就會看到後台畫面
    wordpress-demo-4

  7. 此時若直接輸入 http://<遠端伺服器 IP 位置>:<對外埠號>,會導入到網誌的首頁
    wordpress-demo-5

參考資料

  1. 用nginx + docker配置多個WordPress站的基本設定
  2. 使用 Docker Compose 架設 WordPress 環境

上一篇
Day 28 Docker Portainer 圖像化容器管理工具
下一篇
Day 30 Docker 的使用安全
系列文
以 Docker 為始的多種開源服務初探30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言