# Goal-Piplin 这是一款基于 Go 和 Goal Framework 开发的前后端分离的部署工具。 前端: https://github.com/qbhy/goal-piplin-views 后端: https://github.com/qbhy/goal-piplin > 疯狂求 star ✨✨✨ ## 前言 以前部署工具一直用的都是基于 laravel 开发的 [Piplin]( https://github.com/piplin/piplin) ,但是由于它已经好久没更新了,甚至 PR 也没有处理,显然已经被荒废了,而 PHP 生态一直在更新,最终导致我放弃了 Piplin 。而且我自己开发了一个 Golang 框架,刚好可以写一个 Go 版本的 Piplin 来丰富 Goal 的生态,于是乎我写了个这个项目。 ## 有啥功能 一般的部署工具有的功能都有,项目分组、自定义脚本、配置文件、共享文件等都是支持的。 * 一键部署(调用 POST 接口部署) * 服务器组(服务器组和项目是多对多的关系) * 支持协作(就是项目和分组可以邀请别人一起操作和部署) ## 安装 克隆代码 ````bash git clone https://github.com/qbhy/goal-piplin.git ```` 使用 docker compose 启动服务(包括 mysql 、redis 、views 和 server ) ````bash docker compose up -d ```` 执行迁移 ````bash docker compose exec server /var/www/piplin migrate ```` 初始化用户和密钥 ````bash docker compose exec server /var/www/piplin init ```` > 默认账号为 piplin ,密码为 password nginx 配置 ````bash cp nginx.conf /etc/nginx/site-enabled/piplin.conf ```` > 这一步可以根据自己的需要修改路径和 piplin.conf ## 更新 如果 Goal-Piplin 有更新,会自动打包和推送最新镜像到 docker 仓库中,此时您只需要在你的 Goal-Piplin 目录执行以下命令即可 ```bash make update ``` ## 使用 #### 创建项目 可以选择已有密钥或者新建密钥  ### 将公钥上传到 git 仓库中 通常添加到部署公钥中即可  github 举例  ### 添加环境  添加环境后需要配置环境对应的服务器或者机柜  ### 将公钥添加到对应的服务器中 配置好服务器后,要把项目公钥添加到所有服务器的 `~/.ssh/authorized_keys` 中 ```bash echo '公钥' >> ~/.ssh/authorized_keys ``` ### 其他配置 根据需求配置脚本、配置文件、共享目录等配置。    ### 开始部署 选择环境和分支(或者 tag 、commit )即可进行部署,还可以一键复制 curl 命令进行部署  ## 参与项目 您可以直接给项目提交 PR 或者 issue 参与到项目中来,也可以直接 QQ 扫码加入到交流群中提出你宝贵的建议或者意见。  > 如果加群失败可以加我微信 qbhy0715 拉你进群
有疑问加站长微信联系(非本文作者))
