简介

Focalboard 号称是 TrelloAsanaNotion 的开源替代品。

它是一个项目管理工具,使用看板视图帮助个人和团队对任务进行组织、跟踪和管理。有两个版本:Focalboard 个人桌面版Focalboard 个人服务器版

Github地址

个人服务器安装步骤

1. 下载

1
2
3
wget https://github.com/mattermost/focalboard/releases/download/v7.9.2/focalboard-server-linux-amd64.tar.gz     #请访问Github Release进行下载最新的版本
tar -zxvf focalboard-server-linux-amd64.tar.gz #解压
sudo mv focalboard /var/www #移到你的文件夹

2. 配置nginx

创建站点文件 focalboard.conf

1
sudo vim /etc/nginx/sites-available/focalboard.conf

内容为:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
upstream focalboard {
server localhost:8000;
keepalive 32;
}

server {
listen 80 default_server;

server_name focalboard.example.com;

location ~ /ws/* {
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
client_max_body_size 50M;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Frame-Options SAMEORIGIN;
proxy_buffers 256 16k;
proxy_buffer_size 16k;
client_body_timeout 60;
send_timeout 300;
lingering_timeout 5;
proxy_connect_timeout 1d;
proxy_send_timeout 1d;
proxy_read_timeout 1d;
proxy_pass http://focalboard;
}

location / {
client_max_body_size 50M;
proxy_set_header Connection "";
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Frame-Options SAMEORIGIN;
proxy_buffers 256 16k;
proxy_buffer_size 16k;
proxy_read_timeout 600s;
proxy_cache_revalidate on;
proxy_cache_min_uses 2;
proxy_cache_use_stale timeout;
proxy_cache_lock on;
proxy_http_version 1.1;
proxy_pass http://focalboard;
}
}

启用配置

1
2
3
sudo ln -s /etc/nginx/sites-available/focalboard.conf /etc/nginx/sites-enabled/focalboard.conf
sudo nginx -t
sudo systemctl reload nginx

3. 配置数据库

3.1 Postgresql(推荐)

安装:

1
sudo apt install postgresql postgresql-contrib

创建数据库:

1
2
3
sudo -i -u postgres psql -c "CREATE DATABASE boardsuser;"
sudo -i -u postgres psql -c "CREATE USER boardsuser WITH password 'PASSWORD';"
sudo -i -u postgres psql -c "GRANT ALL privileges ON DATABASE boardsuser TO boardsuser;"

配置:

1
vim /var/www/focalboard/config.json

修改如下内容:

1
2
"dbtype": "postgres",
"dbconfig": "postgres://boardsuser:password@localhost/dbname?sslmode=disable&connect_timeout=10",

boardsuser:数据库用户

password:数据库密码

dbname:数据库名称

3.2 MySQL

安装:

1
sudo apt-get install mysql-server

创建数据库:

1
sudo mysql
1
2
3
CREATE DATABASE boards;
GRANT ALL on boards.* to 'boardsuser'@'localhost' identified by 'boardsuser-password';
exit

配置:

1
vim /var/www/focalboard/config.json

修改如下内容:

1
2
"dbtype": "mysql",
"dbconfig": "boardsuser:boardsuser-password@tcp(127.0.0.1:3306)/boards",

4. 以服务运行

1
vim /lib/systemd/system/focalboard.service

内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
[Unit]
Description=Focalboard server

[Service]
Type=simple
Restart=always
RestartSec=5s
ExecStart=/var/www/focalboard/bin/focalboard-server
WorkingDirectory=/var/www/focalboard

[Install]
WantedBy=multi-user.target

载入服务:

1
2
3
sudo systemctl daemon-reload
sudo systemctl start focalboard.service
sudo systemctl enable focalboard.service

5. 测试

1
2
curl localhost:8000
curl localhost

没有显示502等信息。

或者直接访问网站。

6. 登录

第一次创建用户并进行登录,然后设置中文

使用感受

界面风格还可以,黑暗模式有点不怎么好看。

它也有很多不同的模版针对不同的用途。

每次新建后没有保存,在我的使用习惯上面有点不怎么舒服。

最后

除了个人服务器版外,还有个人桌面版,可以在 Personal Desktop 找到各平台的安装包。

还是比较值得推荐的一款程序。