搭建plane服务

2023-10-24 17:19:08 浏览数 (1)

此前,澳大利亚软件服务商Atlassian宣布 ,从2021年2月2日起,将正式全面停售旗下 Jira、Confluence 等系列产品的 Server 版。即 最新的Jira不支持私有化部署了,必须购买其云服务。 一些开源替代品纷纷出现。

其中,Plane[1]是一个开源的项目规划/管理工具,可以认为是Jira的开源替代品,还可以与GitHub同步的选项。

Plane既可以使用其Cloud托管解决方案,也可以自行部署。

不过处于快速迭代中,可能有bug。不要用最新的代码,而选用其中一个release版本。

前端用的TypeScript,后端用的Python(Django框架),数据库用的PostgreSQL,使用docker compose部署。

代码语言:javascript复制
git clone https://github.com/makeplane/plane
cd plane
chmod  x setup.sh


./setup.sh

# 然后相应修改几个.env文件

docker compose up -d

如果想停掉,修改.env重新启动

代码语言:javascript复制
docker compose down 

vim apiserver/.env
docker compose up -d

如果想全面清理掉重新部署(这样数据啥的也都清空了,当有用户正常使用时,不要执行以下操作)

代码语言:javascript复制
docker compose down
docker volume ls |sed 1d |awk '{print $2}' |xargs  docker volume rm
docker images |sed 1d |awk '{print $3}' |xargs  docker rmi
ls
docker network ls
vim apiserver/.env
docker compose up -d

其中有很多坑,较大的一个是发送邮件有问题,相关issue, [bug]: Cannot send registration email for new member [2]

注意: 163邮箱好像有问题,不要使用。gmail可用,注意 EMAIL_USE_TLS="1"EMAIL_USE_SSL="0"两个值的设置

申请gmail的EMAIL_HOST_PASSWORD:

https://myaccount.google.com/ 左侧菜单,选择安全性,开启两步验证

然后在该页面上方输入框搜索 应用专用密码,点击会跳转到 https://myaccount.google.com/apppasswords

可参考 Gmail邮箱怎么获取授权码[3]

另外还需要将 apiserver/.env 中的ENABLE_MAGIC_LINK_LOGIN="1",否则被邀请的用户收到了邮件,也无法登陆(没有密码)。用这种方式,会往用户的邮箱发送验证码

还需要相应修改配置中的NGINX_PORT的值,要和nginx那边关联起来。

这样本机已经能访问通了,即 telnet 127.0.0.1 81 正常。

接下来需要暴露到公网(和Docker已经没什么关系了)

在这里是通过nginx(如果是K8s而不是Docker-compose部署,则可以直接通过k8s的NodePort暴露出去,其实也是通过nginx-ingress)

cat /etc/nginx/conf.d/xxxx.conf 可以看到nginx的相关配置

接着去域名服务商那里新增一条A记录即可

更详细的官方文档: https://docs.plane.so/

参考资料

[1]

Plane: https://github.com/makeplane/plane

[2]

[bug]: Cannot send registration email for new member : https://github.com/makeplane/plane/issues/1131

[3]

Gmail邮箱怎么获取授权码: https://blog.csdn.net/shenenhua/article/details/127700594

0 人点赞