在 GitLab 上部署 PHP 项目可以通过多种方式实现,以下是其中一种常见的方法:使用 GitLab CI/CD 进行自动化部署。
.gitlab-ci.yml
配置文件,用于定义 CI/CD 流程。在该文件中添加以下内容:image: php:7.4
variables:
GIT_STRATEGY: none
services:
- mysql:5.7
before_script:
- docker-compose up -d --build
stages:
- build
- deploy
build_job:
stage: build
script:
- docker-compose exec php composer install
deploy_job:
stage: deploy
script:
- docker-compose exec php bin/console doctrine:migrations:migrate --env=prod
- docker-compose exec php bin/console cache:clear --env=prod
only:
- master
上述配置文件定义了一个 CI/CD 流程,其中包括两个阶段:构建和部署。在构建阶段,使用 PHP Docker 镜像安装项目依赖;在部署阶段,运行数据库迁移和清除缓存。
.gitlab-ci.yml
文件提交到 GitLab 仓库中,并触发 CI/CD 流程。可以通过 GitLab UI 或命令行工具完成触发。需要注意的是,上述示例仅用于演示目的,实际项目中可能需要根据具体需求进行调整。例如,可能需要配置数据库连接信息、添加防火墙规则等。同时,为了提高安全性,建议使用 GitLab 的 SSH 方式访问仓库,并设置访问权限。