将免费开源看板软件Wekan部署到树莓派4B
上篇文章讲了如何利用Docker将Wekan部署在服务器上以及一些Wekan的基本操作。(如果你还不知道Wekan是啥,请看:链接)同时,也提到了在Wekan的官方文档里,无论是用Docker还是Snap部署Wekan,如果安全问题是很重要的,都不建议将Wekan暴露到外网(与内网相对)上。不想让服务器变成肉鸡或者暴露在危险下,正好Wekan也支持部署在树莓派上。那么,开始吧。
本文将分三部分:
- 在树莓派上部署Wekan
- 导出Wekan数据(从docker)
- 导入Wekan数据(到树莓派)
在树莓派上安装Wekan
参考链接:install-wekan-to-raspi3-raspi4-or-any-arm64-server
系统需求
1 | README |
简单地说,需要装ubuntu64位的系统
笔者树莓派的配置:
1 | Raspberrypi4b 4gb |
安装过程
下载和安装wekan所需要的
用浏览器打开: https://releases.wekan.team/raspi3/
查看README.txt
文件如:
1 | README |
安装下列软件:
1 | sudo apt-get update |
官方文档写的是:
1 | sudo apt-get install npm mongodb-server mongodb-clients mongodb-tools zip unzip |
但是笔者在实际安装过程中提示E: Unable to locate package mongodb-tools
,经过笔者的搜索(不一定对)觉得应该是mongodb-tools
于是就做了替换,在后续的安装过程中也没有出现问题。
于是笔者用蹩脚的英语提了一个issue,目前正在等待回应。
接下来:
1 | sudo npm -g install npm |
在前文提到的README.txt
文件查看Node版本,然后安装。比如此时,Node 的版本是12.16.2:
1 | sudo n 12.16.2 |
接下来切换到你想储存wekan的目录,比如笔者习惯放在repo/xxx
目录下:
1 | cd ~/repo/wekan |
查看上文让你打开的网站,下载Wekan(名字类似wekan-x.xx-arm64.zip
),可以鼠标右键点击然后选择复制链接,比如笔者安装时是wekan-4.01-arm64.zip
:
1 | wget https://releases.wekan.team/raspi3/wekan-4.01-arm64.zip |
接下来下载最新的start-wekan.sh
:
1 | wget https://raw.githubusercontent.com/wekan/wekan/master/start-wekan.sh |
解压之前下载wekan压缩包:
1 | unzip wekan-4.01-arm64.zip |
解压完成后,你的wekan目录应如:
1 | bundle start-wekan.sh wekan-4.01-arm64.zip |
以服务的方式运行wekan
如果你想以非root用户将node运行在80端口:
首先,查看node的安装位置:
1 | which node |
赋予权限,比如笔者上一步得到的结果是/usr/local/bin/node
:
1 | sudo setcap cap_net_bind_service=+ep /usr/local/bin/node |
编辑/etc/systemd/system/wekan.service
:
1 | sudo nano /etc/systemd/system/wekan.service |
添加下列内容:(注意WorkingDirectory
后面的值应为前面解压的wekan-4.01-arm64.zip
得到的bundle
目录,比如/home/ubuntu/repo/wekan/bundle
)
1 | [Unit] |
查看你树莓派的ip地址:
1 | ip address |
记住你的ip地址形如192.168.x.x
,下面呢以192.168.1.20
为例子。
接下来编辑wekan的配置文件/etc/default/wekan
,添加下列内容:(ROOT_URL
改为树莓派的ip地址,为了更加方便,推荐在路由器上设置给你的树莓派分配固定ip)
1 | NODE_ENV=production |
启动wekan:
1 | sudo systemctl start wekan |
设置开机自启:
1 | sudo systemctl enable wekan |
查看wekan运行状况:
1 | sudo systemctl status wekan |
打开浏览器访问之前设设置的ROOT_URL
(比如笔者设置的是http://192.168.1.20
)看到登陆界面就大功告成了。第一个注册的为管理员账户。如果你想知道更多的wekan操作,可以查看上一篇文章:免费开源看板软件Wekan安装与使用记录。
如果你还需要还原wekan数据,请不要着急,继续往下看。
导出Wekan数据(从docker)
本文将介绍如何从docker导出wekan的数据,参考Export-Docker-Mongo-Data。其他安装方式安装的wekan数据的备份和还原请参考 Wekan-Wiki-Backup。
停止运行wekan
这一步十分重要!
查看当前的docker进程:
1 | docker ps |
然后你将看到wekan-app
和wekan-db
,关闭wekan-app
1 | docker stop wekan-app |
再次查看当前的docker进程确保wekan-app
已经停止运行:
1 | docker ps |
导出数据
进入mongo容器:
1 | docker exec -it wekan-db bash |
切换到容器的根目录:
1 | cd / |
将数据导出到容器内的目录下:
1 | mongodump -o /dump/ |
退出容器:
1 | exit |
将导出的数据保存当前目录:
1 | docker cp wekan-db:/dump . |
导入数据
停止本地运行wekan
为了避免不可预计的问题,请先停止本地运行的wekan!
1 | sudo systemctl stop wekan |
导入数据
从服务器上下载导出数据:(这里笔者用scp下载,你也可用其他方法,关于scp的用法可以参考:从Linux服务器下载文件到本地)
1 | scp -r [email protected]:~/repo/wekan/dump /home/ubuntu/repo/wekan/ |
将数据还原到wekan的数据库:
1 | mongorestore --drop --db wekan /home/ubuntu/repo/wekan/dump/wekan/ |
重新打开wekan:
1 | sudo systemctl restart wekan |
重新访问wekan,就可以直接用之前的账号登陆并且使用原来的看板了!
将免费开源看板软件Wekan部署到树莓派4B