當前位置: 首頁> 最新文章列表> Docker 容器化部署Yii 框架應用全攻略

Docker 容器化部署Yii 框架應用全攻略

M66 2025-10-13

使用Docker 容器化和部署Yii 框架應用

前言

Docker 是一種輕量級的容器化平台,它可以將應用及其依賴環境一起打包,從而在不同環境中實現快速、穩定的部署。本文將為你講解如何使用Docker 容器化並部署Yii 框架應用,讓你的開發與上線流程更高效、更一致。

先決條件

  • Docker 版本19.03 或更高
  • 已經搭建好的Yii 框架應用
  • Composer 包管理器

創建Dockerfile

首先,在項目的根目錄下新建一個名為Dockerfile的文件,並寫入以下內容:

 FROM php:7.4-fpm

WORKDIR /var/www

COPY composer.json .
RUN composer install

COPY . .

EXPOSE 80
CMD ["php", "-S", "0.0.0.0:80"]

該文件定義了PHP 環境的基礎鏡像,安裝了項目依賴,並設置了容器的工作目錄與啟動命令。

構建Docker 鏡像

在終端中進入項目根目錄,執行以下命令構建鏡像:

 <span class="fun">docker build -t yii-app .</span>

此命令會根據Dockerfile 中的配置生成名為yii-app的鏡像。

運行Docker 容器

鏡像構建完成後,可以通過以下命令運行容器:

 <span class="fun">docker run -p 8080:80 yii-app</span>

運行後,你可以通過訪問http://localhost:8080查看Yii 應用是否正常啟動。

部署到遠程服務器

當應用本地測試完成後,就可以部署到遠程服務器。首先,將構建好的鏡像推送到Docker Hub 或私有鏡像倉庫,然後在服務器上執行以下操作:

拉取鏡像:

 <span class="fun">docker pull <registry>/<namespace>/yii-app</span>

運行容器:

 <span class="fun">docker run -p 80:80 <registry>/<namespace>/yii-app</span>

替換為你的鏡像倉庫地址與命名空間。

使用Docker Compose 管理多個容器

如果你的Yii 項目需要數據庫、緩存等服務,可以使用Docker Compose 來統一管理多個容器。在項目根目錄下創建一個docker-compose.yml文件,示例如下:

 version: '3'

services:
  web:
    build: .
    ports:
      - "8080:80"
    volumes:
      - ./:/var/www

然後在終端運行以下命令啟動應用:

 <span class="fun">docker-compose up -d</span>

Docker Compose 會自動構建鏡像並啟動所需容器,使你的Yii 應用與依賴服務能夠協同運行。

總結

通過Docker 對Yii 框架應用進行容器化部署,不僅能簡化環境配置,還能在開發、測試、生產環境中保持一致性。無論是單容器部署還是多容器編排,Docker 都為Yii 項目的持續集成和交付提供了高效的解決方案。