返回
通过 frp 实现 Jenkins 内网穿透,实现自动化部署前端项目至阿里云 OSS
前端
2023-09-20 21:38:45
内网 jenkins+frp 内网穿透+部署前端项目至阿里云 oss 的详细过程和方法
我们经常遇到这样的场景:
- 内网的 Jenkins 无法直接访问外网的阿里云 OSS。
- 当代码提交到阿里云 Code 某个分支时,需要触发 Jenkins 自动拉取代码并发布到阿里云 OSS。
要解决以上问题,可以使用 frp 实现内网穿透,使内网的 Jenkins 可以直接访问外网的阿里云 OSS。同时,可以通过配置 Jenkins 的构建任务,当代码提交到阿里云 Code 某个分支时,触发 Jenkins 自动拉取代码并发布到阿里云 OSS。
一、安装 frp
- 下载 frp 并解压。
- 进入 frp 解压后的目录,执行以下命令安装 frp。
sudo apt-get update
sudo apt-get install -y make gcc
make
sudo make install
二、配置 frp
- 创建 frp 配置文件
/etc/frp/frpc.ini
。 - 在
/etc/frp/frpc.ini
文件中写入以下内容。
[common]
server_addr = your_server_ip:7000
server_port = 7000
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 22
[web]
type = http
local_ip = 127.0.0.1
local_port = 80
remote_port = 80
其中:
server_addr
为 frp 服务端的地址。server_port
为 frp 服务端的端口。ssh
为 ssh 服务的配置。web
为 web 服务的配置。
三、启动 frp
sudo service frp start
四、配置 Jenkins
- 登录 Jenkins,进入系统管理 > 插件管理 > 可选插件,搜索并安装
Alibaba Cloud Plugin
和Publish Over SSH Plugin
插件。 - 配置阿里云 OSS 插件。进入系统管理 > 全局工具配置,点击阿里云 OSS,在弹出窗口中填写阿里云 OSS 的 AccessKey ID、AccessKey Secret、Bucket 名称和 Endpoint。
- 配置 SSH 服务器。进入系统管理 > 管理节点,点击配置 SSH 服务器,在弹出窗口中填写 SSH 服务器的地址、端口、用户名和密码。
- 创建构建任务。进入构建任务,点击新建任务,填写任务名称、代码仓库地址、构建触发器等信息。在构建步骤中,添加
Publish Over SSH
和Alibaba Cloud OSS Upload
步骤。
五、测试
- 将代码提交到阿里云 Code 某个分支。
- 等待 Jenkins 构建任务执行完成。
- 登录阿里云 OSS,查看前端项目是否已经发布到指定 Bucket。
结语
通过以上步骤,我们已经成功实现通过 frp 实现 Jenkins 内网穿透,实现自动化部署前端项目至阿里云 OSS。希望本文对您有所帮助。