使用 Jenkins 自动化发布 PHP 项目
文章目录
[隐藏]
- 什么是 Jenkins
- 使用 Docker 安装 Jenkins
- 访问 8080 端口,进入初始化页面
- 配置自动化构建发布
- 配置远程服务器 SSH
- 新建发布项目
- General
- 源码管理
- 构建
- 立即构建
什么是 Jenkins
Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
使用 Docker 安装 Jenkins
避免装环境的折腾, 直接使用 docker-compose 安装,具体如何安装在 Docker 快速搭建 LNMP 环境 已经描述了
docker-compose.yml
jenkins: image: jenkins:latest ports: - "8080:8080" volumes: - ./jenkins:/var/jenkins_home:rw
注意:volumes 配置 jenkins 目录映射到本地
docker-compose up -d # 等待下载镜像,创建容器 Creating dnmp_jenkins_1 ... done # 安装就这么简单
访问 8080 端口,进入初始化页面
访问: http://localhost:8080/
首次打开,需要输入秘钥,根据提示,可以在对应的目录 /jenkins/secrets 找到该文件
设置登录用户名密码后,进入几分钟的初始化过程…
配置自动化构建发布
配置远程服务器 SSH
菜单 -> 系统管理 -> 系统设置 -> SSH Servers
如图,是我配置的内容
Remote Directory 这个配置很关键,表示构建时的相对目录。这里我配置 “/“
配置完成后,最好 Test Configuration , 返回 Success 就表示成功!
新建发布项目
填写项目名称如, test
并选择项目类型,这里我选择”自由风格项目”
General
选择对应项目路径,我使用 GitHub project
源码管理
使用 git 源码仓库管理
构建
这里是最关键的,你可以打包源码发布到对应的服务器之上
- Source files 表示打包好的源文件
- Remote directory 表示你需要将源文件上传的远程路径(这个路径相对于 SSH 配置目录)
- Exec command 上传完成后,执行的命令( hexo g 这个是我发布博客时的构建命令)
立即构建
选择对应的项目,点击立即构建
在构建执行状态中,可以点击 console output 看到构建的过程信息
原文出处:helingfeng -> https://www.helingfeng.com/2018/05/10/%E4%BD%BF%E7%94%A8%20Jenkins%20%E8%87%AA%E5%8A%A8%E5%8C%96%E5%8F%91%E5%B8%83%20PHP%20%E9%A1%B9%E7%9B%AE%20/