五一没事做,用 Go 写了个简单实用的部署工具,大伙来看看吧

Goal-Piplin

这是一款基于 Go 和 Goal Framework 开发的前后端分离的部署工具。
前端:https://github.com/qbhy/goal-piplin-views
后端:https://github.com/qbhy/goal-piplin

疯狂求 star ✨✨✨

前言

以前部署工具一直用的都是基于 laravel 开发的 Piplin ,但是由于它已经好久没更新了,甚至 PR 也没有处理,显然已经被荒废了,而 PHP 生态一直在更新,最终导致我放弃了 Piplin。而且我自己开发了一个 Golang 框架,刚好可以写一个 Go 版本的 Piplin 来丰富 Goal 的生态,于是乎我写了个这个项目。

有啥功能

一般的部署工具有的功能都有,项目分组、自定义脚本、配置文件、共享文件等都是支持的。

  • 一键部署(调用 POST 接口部署)
  • 服务器组(服务器组和项目是多对多的关系)
  • 支持协作(就是项目和分组可以邀请别人一起操作和部署)

安装

克隆代码

git clone https://github.com/qbhy/goal-piplin.git

使用docker compose启动服务(包括mysql、redis、views和server)

docker compose up -d

执行迁移

docker compose exec server /var/www/piplin migrate

初始化用户和密钥

docker compose exec server /var/www/piplin init

默认账号为piplin,密码为password

nginx配置

cp nginx.conf /etc/nginx/site-enabled/piplin.conf

这一步可以根据自己的需要修改路径和piplin.conf

更新

如果 Goal-Piplin 有更新,会自动打包和推送最新镜像到 docker 仓库中,此时您只需要在你的 Goal-Piplin 目录执行以下命令即可

make update

使用

创建项目

可以选择已有密钥或者新建密钥

将公钥上传到 git 仓库中

通常添加到部署公钥中即可

五一没事做,用 Go 写了个简单实用的部署工具,大伙来看看吧

github 举例
五一没事做,用 Go 写了个简单实用的部署工具,大伙来看看吧

添加环境

五一没事做,用 Go 写了个简单实用的部署工具,大伙来看看吧

添加环境后需要配置环境对应的服务器或者机柜
五一没事做,用 Go 写了个简单实用的部署工具,大伙来看看吧

将公钥添加到对应的服务器中

配置好服务器后,要把项目公钥添加到所有服务器的 ~/.ssh/authorized_keys

echo '公钥' >> ~/.ssh/authorized_keys

其他配置

根据需求配置脚本、配置文件、共享目录等配置。

五一没事做,用 Go 写了个简单实用的部署工具,大伙来看看吧

五一没事做,用 Go 写了个简单实用的部署工具,大伙来看看吧

五一没事做,用 Go 写了个简单实用的部署工具,大伙来看看吧

开始部署

选择环境和分支(或者tag、commit)即可进行部署,还可以一键复制 curl 命令进行部署
五一没事做,用 Go 写了个简单实用的部署工具,大伙来看看吧

参与项目

您可以直接给项目提交 PR 或者 issue 参与到项目中来,也可以直接QQ 扫码加入到交流群中提出你宝贵的建议或者意见。
五一没事做,用 Go 写了个简单实用的部署工具,大伙来看看吧

如果加群失败可以加我微信 qbhy0715 拉你进群

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值