Wekan的配置与安装
Wekan是什么
Wekan是一个开源的看板软件,看板是一种生产管理系统,1940年代丰田汽车公司参考超市的运行方式而发明。
在软件开发生产中,看板可以说是敏捷开发流程当中一个重要的组成部分。
作为个人使用,可以用来当作个人任务计划系统。
环境
Ubuntu 20.04.1 (GNU/Linux 5.4.0-54-generic x86_64)
CentOS 7 (Linux 3.10.0 x86_64)
安装Docker
使用官方脚本安装,需要注意的是,如果使用CentOS,需要Linux内核版本>= 3.10
1 |
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun |
如果需使用Docker作为非root用户,可以使用以下命令将用户添加到docker组。
1 |
sudo usermod -aG docker your-user |
例如用户名为abc,则:
1 |
sudo usermod -aG docker abc |
1 2 3 4 5 |
# Ubuntu sudo apt install docker-compose # 其他系统可以参考 https://github.com/docker/compose/releases/latest curl -L https://github.com/docker/compose/releases/download/1.27.4/docker-compose-`uname -s`-`uname -m` -o /usr/bin/docker-compose chmod +x /usr/bin/docker-compose |
安装Wekan
获取docker-compose.yml
1 |
wget https://raw.githubusercontent.com/wekan/wekan/master/docker-compose.yml |
修改docker-compose.yml
需要注意的是,该文件是YAML文件,修改时务必注意语法格式。
由于是内网运行的,所以这里仅修改以下几个参数。
端口
1 2 3 4 5 6 7 |
wekan: ports: # Docker outsideport:insideport. Do not add anything extra here. # For example, if you want to have wekan on port 3001, # use 3001:8080 . Do not add any extra address etc here, that way it does not work. # remove port mapping if you use nginx reverse proxy, port 8080 is already exposed to wekan-tier network - 80:8080 |
- 80:8080
这里是运行端口,语法为 外部端口:内部端口
外部端口为Docker映射到宿主机的端口。
内部端口为Docker容器内使用的端口。
根地址
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
wekan: environment: #--------------------------------------------------------------- # ==== ROOT_URL SETTING ==== # Change ROOT_URL to your real Wekan URL, for example: # If you have Caddy/Nginx/Apache providing SSL # - https://example.com # - https://boards.example.com # This can be problematic with avatars https://github.com/wekan/wekan/issues/1776 # - https://example.com/wekan # If without https, can be only wekan node, no need for Caddy/Nginx/Apache if you don't need them # - http://example.com # - http://boards.example.com # - http://192.168.1.100 <=== using at local LAN - ROOT_URL=http://localhost # <=== using only at same laptop/desktop where Wekan is installed |
- ROOT_URL=http://localhost
,该参数是根地址,如果安装在本地,保持默认就可以了。可以使用IP地址、域名等多种方式。
邮箱
1 2 3 4 5 6 7 8 9 10 11 |
wekan: environment: # ==== EMAIL SETTINGS ==== # Email settings are required in both MAIL_URL and Admin Panel, # see https://github.com/wekan/wekan/wiki/Troubleshooting-Mail # For SSL in email, change smtp:// to smtps:// # NOTE: Special characters need to be url-encoded in MAIL_URL. # You can encode those characters for example at: https://www.urlencoder.org #- MAIL_URL=smtp://user:pass@mailserver.example.com:25/ - MAIL_URL=smtp://<mail_url>:25/?ignoreTLS=true&tls={rejectUnauthorized:false} - MAIL_FROM=Wekan Notifications <noreply.wekan@mydomain.com> |
这里支持smtp来配置邮箱代发服务,由于我们是内网本地安装,将这部分参数注释掉就可以了。
例子:
假设IP地址为192.168.50.17,端口为8081,则配置文件如下:
1 2 3 4 5 6 |
services: wekan: ports: - 8081:8080 environment: - ROOT_URL=http://192.168.50.17:8081 |
需要注意的是,如果修改了端口,需要在根地址后面添加端口。
映射数据库端口(非必要)
由于Wekan官方的配置文件是将数据库包含在Docker容器内的,如果需要外部连接该数据库,可以调整这部分配置。
之所以这样做的原因,Wekan并不提供卡片计时的功能,所以大D自己写了一个Python脚本在外部进行计算并修改Wekan的数据库。
如果你没有这样的需求,这部分可跳过不看。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
services: wekandb: #------------------------------------------------------------------------------------- # ==== MONGODB AND METEOR VERSION ==== # a) mongodb latest, like 3.2 - 4.4 or newer https://hub.docker.com/_/mongo?tab=description # 2020-12-03: # - Mongo image copied from Docker Hub mongo:4.4.2-bionic to Quay # to avoid Docker Hub rate limits. image: quay.io/wekan/mongo:4.4.2-bionic #------------------------------------------------------------------------------------- container_name: wekan-db restart: always # command: mongod --oplogSize 128 # Syslog: mongod --syslog --oplogSize 128 --quiet # Disable MongoDB logs: command: mongod --logpath /dev/null --oplogSize 128 --quiet networks: - wekan-tier expose: - 27017 volumes: - wekan-db:/data/db - wekan-db-dump:/dump |
添加posts
参数,如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
services: wekandb: image: quay.io/wekan/mongo:4.4.2-bionic container_name: wekan-db restart: always command: mongod --logpath /dev/null --oplogSize 128 --quiet networks: - wekan-tier expose: - 27017 volumes: - wekan-db:/data/db - wekan-db-dump:/dump posts: - 27017:27017 |
端口的写法同样是 内部端口:外部端口
镜像版本(非必要)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
services: wekan: #------------------------------------------------------------------------------------- # ==== MONGODB AND METEOR VERSION ==== # NOTE: Quay is currently not updated, use Docker Hub image below c) # a) For Wekan Meteor 1.8.x version at master branch, # using https://quay.io/wekan/wekan automatic builds #image: quay.io/wekan/wekan # b) Using specific Meteor 1.6.x version tag: # image: quay.io/wekan/wekan:v1.95 # c) Using Docker Hub automatic builds https://hub.docker.com/r/wekanteam/wekan image: quay.io/wekan/wekan:v4.52 #image: wekanteam/wekan:v4.46 # image: wekanteam/wekan:v2.99 #------------------------------------------------------------------------------------- |
可以根据情况,参考注释自行选择版本和镜像源。
运行Wekan
在docker-compose.yml
所在的目录下:
1 2 3 4 5 6 |
# 前台运行 docker-compose up #启动 docker-compose stop #停止 # 后台运行 docker-compose up -d #启动 docker-compose stop #停止 |
正常运行后,就可以看到开始拉取并创建容器。
等待片刻,打开浏览器,根据设定的地址访问,就可以使用了。
可能遇见的错误:
错误1:
1 2 3 |
ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running? If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable. |
执行`docker-compose version`,如果可以看到版本号等信息,说明Docker服务已经启动。
那么可能是由于用户没有加入到docker的组当中。
可以执行以下命令添加。
1 |
sudo gpasswd -a ${USER} docker |
添加完成后,切换一次用户后再运行。
如果仍然存在问题,可以尝试重启Docker服务再试一下。
后记
如果有跟大D一样,需要统计单个卡片用时的,可以参考大D的Github。
https://github.com/derek-s/WekanTools
已有 1 条评论
发表评论
电子邮件地址不会被公开。 必填项已标注。
哈哈哈哈 想起打工时刻每天被看板任务清单支配的恐惧