LoginSignup
1
0

More than 3 years have passed since last update.

用 Docker Compose 快速生成一個 WordPress 網站(筆記,無細節說明)

Last updated at Posted at 2018-12-07

根據這個頁面嘗試

https://docs.docker.com/compose/wordpress/#define-the-project

環境

  • macOS 10.14
  • Docker version 18.09.0
  • iTerm

手順

  1. 建立資料夾
  2. docker-compose.yml
  3. 執行
  4. 停止執行
  5. 更新 WordPress
  6. 清除 Volume

建立資料夾

在這裡檔案名稱就先用 wordpress

// 在終端機
mkdir wordpress
cd wordpress

docker-compose.yml

因為會需要用到多個服務,
所以用 Docker Compose 會比較好
因此先在根目錄新增 docker-compose.yml 這個檔案之後
加入以下的內容

version: '3.3'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8000:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
volumes:
    db_data:

執行

docker-compose up -d

還沒有安裝過的話就會需要等他下載映像檔和配置資料庫,
成功安裝之後,就可以透過 http://localhost:8000 這個網址來存取剛裝好的 WordPress

就會看到像是這樣的畫面,也就是 WordPress 的初始畫面

image.png

剛安裝好之後直接存取 http://localhost:8000 可能不會直接有頁面,我的情況需要等幾秒鐘,瀏覽器才會自動重新整理出現這個畫面。

停止執行

要停止 wordpress 和資料庫的服務的話可以透過這個指令停止即可

docker-composer down

更新 WordPress

透過 Docker 安裝的 WordPress 在更新的時候,會有無資料夾權限的問題
因此勢必要透過 Docker 的指令來更新。

更新的時候請先把 Docker 停止執行

docker-composer down

接著再進行這樣的指令,先請 Docker Compose先去拉看看有沒有新的映像檔版本,再來執行:

docker-compose pull && docker-compose up -d

清除 Volume

停止執行之後,期望把資料庫的容器(db_data)清除掉的話
可以先以這個指令來確認有哪些容器

docker volume ls -q

找到前綴是資料夾名稱,後半是 db_data 的容器實體
以這邊的範例來說的話,就是這個:

wordpress_db_data

所以在清除的時候可以下這個指令就可以清除了

docker volume rm wordpress_db_data

如果沒有其他容器的話,也可以這樣刪除

docker volume rm $(docker volume ls -q)

這樣就完整清除了。

結語

以上,這樣就可以快速的透過 docker compose 生成 WordPress 來用了! :tada:

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0