Source - jean/wekan GitHub Wiki

Build from source on Mac

Build from source on Mac

Build from source on VirtualBox

At Virtual Appliance there is build scripts and all dependencies installed already.

Build from source on Linux

To have Node 100% CPU fixes: Increase ulimit for node in systemd config to 100 000

Wekan:

Wekan Meteor Bundle:

  1. Build from source scripts built on Wekan VirtualBox Ubuntu 14.04 64bit
  2. Copy arhive directory wekan/.build/bundle to .zip file so it includes bundle directory and subdirectories as wekan-1.xx.tar.gz

Wekan for Sandstorm:

  • Install above Wekan from source
  • Install Sandstorm locally with curl https://install.sandstorm.io | bash, select dev install
  • Install meteor-spk
  • Get 100% CPU issue fibers fixed node, and copy it to spk directory:
    wget https://releases.wekan.team/node
    chmod +x node
    mv node ~/projects/meteor-spk/meteor-spk-0.4.0/meteor-spk.deps/bin/
  • Add to your /home/username/.bashrc :
    export PATH=$PATH:$HOME/projects/meteor-spk/meteor-spk-0.4.0
  • Close and open your terminal, or read settings from .bashrc with
    source ~/.bashrc
  • cd wekan && meteor-spk dev
  • Then Wekan will be visible at local sandstorm at http://local.sandstorm.io:6080/
  • Sandstorm commands: sudo sandstorm. Release scripts. Official releases require publishing key that only xet7 has.

Docker:

  • git clone https://github.com/wekan/wekan
  • cd wekan
  • Edit docker-compose.yml script ROOT_URL etc like documented at https://github.com/wekan/wekan-mongodb docker-compose.yml script
  • docker-compose up -d --build

Wekan on Windows:

(Optional) Run Wekan as service with startup script

Build from source scripts - from there run node-allow-port-80.sh and add etc-rc.local.txt before last line in your /etc/rc.local

(Optional) Run Wekan as service with SystemD on Linux

This may need testing, does this work.

Add to to /etc/systemd/system/[email protected]

; see `man systemd.unit` for configuration details
; the man section also explains *specifiers* `%x`
; update <username> with username below

[Unit]
Description=Wekan server %I
Documentation=https://github.com/wekan/wekan
After=network-online.target
Wants=network-online.target
Wants=systemd-networkd-wait-online.service

[Service]
ExecStart=/usr/local/bin/node /home/<username>/repos/wekan/.build/bundle/main.js
Restart=on-failure
StartLimitInterval=86400
StartLimitBurst=5
RestartSec=10
ExecReload=/bin/kill -USR1 $MAINPID
RestartSec=10
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=Wekan
User=<username>
Group=<username>
Environment=NODE_ENV=production
Environment=PWD=/home/<username>/repos/wekan/.build/bundle
Environment=PORT=3000
Environment=HTTP_FORWARDED_COUNT=1
Environment=MONGO_URL=mongodb://127.0.0.1:27017/admin
; https://example.com/wekan for deployment
Environment=ROOT_URL=http://localhost/wekan
Environment=MAIL_URL='smtp://user:[email protected]:25/'

[Install]
WantedBy=multi-user.target

To start Wekan and enable service, change to your username where Wekan files are:

sudo systemctl daemon-reload
sudo systemctl start wekan@<username>
sudo systemctl enable wekan@<username>

To stop Wekan and disable service, change to your username where Wekan files are:

sudo systemctl daemon-reload
sudo systemctl stop wekan@<username>
sudo systemctl disable wekan@<username>

Checkout instructions for setup with Caddy Webserver Config and Nginx Webserver Config respectively.

Windows

Building on Windows (if it works) is a lot slower than on Linux/Mac.

Windows

⚠️ **GitHub.com Fallback** ⚠️