阅读量:1
在CentOS服务器上实现Laravel的自动部署,可以通过以下几个步骤来完成:
1. 准备工作
-
安装必要的软件:
- Nginx 或 Apache
- PHP(建议使用PHP 7.2或更高版本)
- Composer
- Git
-
配置Nginx/Apache:
- 确保Nginx/Apache已经正确配置,能够处理PHP请求。
2. 设置Web服务器
Nginx配置示例
server {
listen 80;
server_name yourdomain.com;
root /path/to/your/laravel/project/public;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}
Apache配置示例
:80 >
ServerName yourdomain.com
DocumentRoot /path/to/your/laravel/project/public
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
SetHandler application/x-httpd-php
3. 配置SSH访问
确保你可以通过SSH访问服务器,并且有足够的权限来执行部署操作。
4. 使用Git进行版本控制
在服务器上克隆你的Laravel项目仓库:
git clone https://github.com/yourusername/your-laravel-project.git /path/to/your/laravel/project
cd /path/to/your/laravel/project
5. 设置自动部署脚本
创建一个自动部署脚本,例如deploy.sh:
#!/bin/bash
# 设置项目路径
PROJECT_PATH="/path/to/your/laravel/project"
# 进入项目目录
cd $PROJECT_PATH
# 拉取最新代码
git pull origin main
# 安装依赖
composer install --no-interaction --prefer-dist --optimize-autoloader
# 生成应用密钥
php artisan key:generate --force
# 运行迁移
php artisan migrate --force
# 清理缓存
php artisan config:clear
php artisan cache:clear
php artisan view:clear
# 重启Web服务器
systemctl restart nginx # 或者 systemctl restart httpd
6. 设置定时任务
使用cron设置定时任务,定期执行部署脚本:
crontab -e
添加以下行,每天凌晨2点执行部署脚本:
0 2 * * * /path/to/deploy.sh >> /var/log/laravel_deploy.log 2>&1
7. 使用CI/CD工具(可选)
如果你希望更高级的自动化和持续集成/持续部署(CI/CD),可以考虑使用Jenkins、GitLab CI、GitHub Actions等工具。
Jenkins示例
-
安装Jenkins:
sudo yum install jenkins sudo systemctl start jenkins sudo systemctl enable jenkins -
配置Jenkins Job:
- 创建一个新的Freestyle项目。
- 在“源码管理”部分选择Git,并填写你的仓库URL和凭证。
- 在“构建触发器”部分选择“Poll SCM”,并设置定时任务(例如
H/5 * * * *表示每5分钟检查一次)。 - 在“构建”部分添加一个“执行Shell”步骤,输入你的部署脚本路径(例如
/path/to/deploy.sh)。
通过以上步骤,你可以在CentOS服务器上实现Laravel的自动部署。
以上就是关于“centos服务器上laravel如何实现自动部署”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm