🚧 持續施工中的技術筆記區

這裡是我的軟體工程筆記,主要記錄開發中遇到的問題、解決方案,以及偶爾的技術碎念。寫給未來的自己,也分享給需要的人。

使用 Docker 無依賴部署 Hugo PaperMod 主題

Hugo 是一款流行的靜態網站生成器,而 PaperMod 是其中一個廣受歡迎的主題。然而,在本地機器上安裝 Hugo 和各種依賴可能會造成環境污染。本文將介紹如何使用 Docker 容器技術,在完全隔離的環境中運行 Hugo 與 PaperMod 主題,無需在宿主機上安裝任何依賴。 前置需求 已安裝 Docker 和 Docker Compose 基本的命令行操作能力 步驟 1: 創建項目目錄結構 首先,我們需要創建一個項目目錄,用於存放 Docker 相關配置和 Hugo 網站內容: mkdir hugo-papermod-docker cd hugo-papermod-docker 步驟 2: 創建 Dockerfile 在項目目錄中創建一個 Dockerfile,用於定義 Docker 映像: FROM alpine:latest # 安裝 Hugo、git 和其他必要工具 RUN apk add --no-cache hugo git curl bash # 設置工作目錄 WORKDIR /site # 設置環境變數 ENV HUGO_ENV=production # 安裝 PaperMod 主題的腳本 COPY ./scripts/setup.sh /setup.sh RUN chmod +x /setup.sh # 暴露 Hugo 服務器端口 EXPOSE 1313 # 容器啟動命令 ENTRYPOINT ["/bin/bash", "/setup.sh"] 這個 Dockerfile 基於 Alpine Linux 映像,安裝了 Hugo 和必要的工具,並設置了容器啟動時執行的腳本。 ...

2025-04-04 · 網站管理員

使用 Docker 快速部署 Laravel 12

Laravel 是現今最受歡迎的 PHP 框架之一,而 Docker 則是容器化技術的領導者。將兩者結合,我們可以輕鬆地在任何環境中部署一致的 Laravel 應用。本文將詳細介紹如何使用 Docker 建立一個全新的 Laravel 12 專案,且不需要在本機安裝 PHP、Composer 或其他依賴。 環境要求 在開始之前,請確保您的系統已安裝: Docker Docker Compose 這是唯一的要求!我們會在容器內處理所有其他依賴項。 專案結構 我們將建立以下檔案和目錄結構: laravel12-project/ ├── docker/ │ └── nginx/ │ └── conf.d/ │ └── app.conf ├── docker-compose.yml └── Dockerfile 第一步:建立專案目錄 首先,創建一個新的專案目錄: mkdir laravel12-project cd laravel12-project 第二步:建立 Docker 配置檔案 docker-compose.yml 這個檔案定義了我們需要的PHP 應用服務。 version: '3' services: app: build: context: . dockerfile: Dockerfile container_name: laravel12_installer volumes: - .:/app working_dir: /app ports: - "8000:8000" entrypoint: ["tail", "-f", "/dev/null"] Dockerfile 此檔案定義了 PHP 應用容器的建構過程: ...

2025-04-03 · Moses