使用 Docker Compose 進行開發

使用 Docker Compose 進行主題開發和站點構建。

贊助

成為我們的資助者或贊助商,以支持我們的工作。

贊助商

你首先需要為你的主題和站點選擇適當的鏡像標籤,本文以 hugomods/hugo:exts-non-root 為例。

創建 Docker Compose 文件

接著於項目根目錄下創建 docker-compose.yml

docker-compose.yml
 1name: mysite
 2
 3services:
 4  server:
 5    image: hugomods/hugo:exts-non-root
 6    command: server -D
 7    volumes:
 8      - ./:/src
 9      - ~/hugo_cache:/tmp/hugo_cache
10    ports:
11      - 1313:1313
  1. -v ./:/src 將當前目錄掛載到容器的默認工作目錄/src)。
  2. -v ~/hugo_cache:/tmp/hugo_cache$HOME/hugo_cache 掛載到默認的 cacheDir/tmp/hugo_cache)以提高構建性能。

安裝依賴(可選)

你或許需要在啟動 Hugo 服務器前安裝依賴,比如通過 NPM 安裝依賴。

1docker compose run server npm i
  1. npm inpm install 的快捷方式,其替換了 server 服務的默認命令。

啟動 Hugo 服務器

1docker compose up server

啟動交互式 Shell

1docker compose run server /bin/sh