How to build a Ghost blog with Docker? / 如何利用Docker搭建Ghost部落格

Easiest way to build ghost blog system

How to build a Ghost blog with Docker? / 如何利用Docker搭建Ghost部落格
Photo by Glenn Carstens-Peters / Unsplash

一般常見的Blog安裝即用平台有WordPress與Ghost較為常見,相信應該有相當多人都有WordPress經驗,我去過也曾經用過WordPress好一段時間,不過優缺點也相當明顯,近一兩年在關注Ghost,Ghost屬於一個相當輕量化且簡潔的平台。而這次來挑戰看看使用較為工程師的做法,使用Docker來搭建Ghost。


創建docker-compose.yml

在建立Ghost Blog時,必須同時建立多項服務,除了Blog系統外,還需要加入資料庫,這邊使用MySQL作為資料庫系統。

version: '3.8'

services:
  ghost:
    image: ghost:latest
    container_name: ghost-blog
    restart: always
    ports:
      - "2368:2368"
    volumes:
      - ghost-data:/var/lib/ghost/content
    environment:
      url: http://localhost
      database__client: mysql
      database__connection__host: db
      database__connection__user: root
      database__connection__password: example
      database__connection__database: ghost

  db:
    image: mysql:8.0
    container_name: ghost-db
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: example
      MYSQL_DATABASE: ghost
    volumes:
      - mysql-data:/var/lib/mysql

volumes:
  ghost-data:
  mysql-data:

docker-compse.yml

建立完docker-compose.yml後,就可在相同路徑下,輸入以下指令,就會依據文件中的指令去包裝,建立完成後,就會自動啟動執行。

docker compose up -d