Wekan je bezplatný a open-source Kanban Board vytvořený pomocí rámce Meteor JavaScript a je distribuován pod licencí MIT. Je velmi podobný Workflowy a Trello, které vám pomáhají spravovat každodenní úkoly, připravovat seznamy úkolů, spravovat ostatní lidi atd. Dodává se s plně responzivním webovým rozhraním a přeloženým do mnoha jazyků. Wekan přichází s bohatou sadou funkcí, včetně Exportovat nástěnku Wekan, Importovat nástěnku Trello, Nastavení SMTP, Obnovení archivované nástěnky, Modul správy uživatelů, Funkce přetažení a mnoho dalších.
V tomto tutoriálu vám ukážeme, jak nainstalovat desku Wekan Kanban s Nginx jako proxy serverem na Debian 10.
Předpoklady
- Server se systémem Debian 10.
- Platný název domény s adresou IP vašeho serveru.
- Na vašem serveru je nakonfigurováno heslo uživatele root.
Začínáme
Před spuštěním se doporučuje aktualizovat server na nejnovější verzi pomocí následujícího příkazu:
apt-get update -y
apt-get upgrade -y
Jakmile je váš server aktualizován, restartujte jej, aby se změny implementovaly.
Instalovat Wekan
Nejjednodušší způsob, jak nainstalovat Wekan na Debian 10, je pomocí snap. Ve výchozím nastavení je balíček snap dostupný v úložišti Debian 10. Můžete jej nainstalovat spuštěním následujícího příkazu:
apt-get install snapd -y
Jakmile je snap in/staled, můžete nainstalovat Wekan spuštěním následujícího příkazu:
snap install wekan
Jakmile je Wekan nainstalován, automaticky spustí službu Wekan a Mongodb.
Stav služby Wekan můžete zobrazit pomocí následujícího příkazu:
systemctl status snap.wekan.wekan
Měli byste vidět následující výstup:
? snap.wekan.wekan.service - Service for snap application wekan.wekan Loaded: loaded (/etc/systemd/system/snap.wekan.wekan.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2019-12-22 07:43:34 UTC; 7s ago Main PID: 7836 (wekan-control) Tasks: 11 (limit: 2359) Memory: 156.3M CGroup: /system.slice/snap.wekan.wekan.service ??7836 /bin/bash /snap/wekan/678/bin/wekan-control ??8522 /snap/wekan/678/bin/node main.js Dec 22 07:43:35 debian10 wekan.wekan[7836]: HEADER_LOGIN_EMAIL=Header login email. Example for siteminder: HEADEREMAILADDRESS (default value) Dec 22 07:43:35 debian10 wekan.wekan[7836]: LOGOUT_WITH_TIMER=false (default value) Dec 22 07:43:35 debian10 wekan.wekan[7836]: LOGOUT_IN= (default value) Dec 22 07:43:35 debian10 wekan.wekan[7836]: LOGOUT_ON_HOURS= (default value) Dec 22 07:43:35 debian10 wekan.wekan[7836]: LOGOUT_ON_MINUTES= (default value) Dec 22 07:43:35 debian10 wekan.wekan[7836]: DEFAULT_AUTHENTICATION_METHOD= (default value) Dec 22 07:43:35 debian10 wekan.wekan[7836]: ATTACHMENTS_STORE_PATH= (default value) Dec 22 07:43:35 debian10 wekan.wekan[7836]: MONGO_URL=mongodb://127.0.0.1:27019/wekan Dec 22 07:43:37 debian10 wekan.wekan[7836]: Presence started serverId=ijqY8RbEWv8Hg9RSb Dec 22 07:43:38 debian10 wekan.wekan[7836]: Meteor APM: completed instrumenting the app
Ve výchozím nastavení běží Wekan na portu 8080. Pokud chcete změnit port Wekan na 3001, spusťte následující příkaz:
snap set wekan port='3001'
Poté restartujte službu Wekan a MongoDB, aby se změny projevily:
systemctl restart snap.wekan.mongodb
systemctl restart snap.wekan.wekan
Správa služeb Wekan a MongoDB
Chcete-li spustit a zastavit službu Wekan, spusťte následující příkaz:
systemctl stop snap.wekan.wekan
systemctl start snap.wekan.wekan
Chcete-li spustit a zastavit službu MongoDB, spusťte následující příkaz:
systemctl stop snap.wekan.mongodb
systemctl start snap.wekan.mongodb
Konfigurovat Nginx jako reverzní proxy
Wekan je nyní nainstalován a naslouchá na portu 3001 . Dále je dobré spustit Wekan za proxy Nginx.
Chcete-li tak učinit, nejprve nainstalujte webový server Nginx pomocí následujícího příkazu:
apt-get install nginx -y
Po instalaci otevřete soubor /etc/nginx/nginx.conf a nastavte hash_bucket_size:
nano /etc/nginx/nginx.conf
Odkomentujte následující řádek:
server_names_hash_bucket_size 64;
Po dokončení uložte a zavřete soubor. Poté restartujte službu Nginx, abyste použili změny:
systemctl restart nginx
Dále vytvořte soubor virtuálního hostitele Nginx pro Wekan, jak je znázorněno níže:
nano /etc/nginx/conf.d/wekan.conf
Přidejte následující řádky:
map $http_upgrade $connection_upgrade { default upgrade; '' close; } server { listen 80; server_name wekan.linuxbuz.com; if ($http_user_agent ~ "MSIE" ) { return 303 https://browser-update.org/update.html; } location / { proxy_pass http://127.0.0.1:3001; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; # allow websockets proxy_set_header Connection $connection_upgrade; proxy_set_header X-Forwarded-For $remote_addr; # preserve client IP } }
Po dokončení uložte a zavřete soubor. Poté pomocí následujícího příkazu zkontrolujte Nginx, zda neobsahuje nějakou chybu syntaxe:
nginx -t
Měli byste vidět následující výstup:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Nakonec restartujte službu Nginx, aby se změny projevily:
systemctl restart nginx
V tomto okamžiku je Nginx nakonfigurován tak, aby předal požadavek na Wekan port 3001.
Zabezpečte Wekan pomocí Let's Encrypt Free SSL
Dále se doporučuje zabezpečit Wekan pomocí Let's Encrypt free SSL. K tomu budete muset nainstalovat klienta Certbot na váš server. Certbot je klient Let's Encrypt, který lze použít ke stažení bezplatného SSL a konfiguraci Nginx pro použití tohoto certifikátu.
Ve výchozím nastavení není nejnovější verze Certbotu k dispozici ve výchozím úložišti Debian 10. Takže budete muset přidat úložiště Certbot na váš server.
Úložiště můžete přidat pomocí následujícího příkazu:
echo "deb http://ftp.debian.org/debian buster-backports main" >> /etc/apt/sources.list
Dále aktualizujte úložiště a nainstalujte klienta Certbot pomocí následujícího příkazu:
apt-get update -y
apt-get install python-certbot-nginx -t buster-backports
Po dokončení instalace spusťte následující příkaz pro získání a instalaci certifikátu SSL pro vaši doménu:
certbot --nginx -d wekan.linuxbuz.com
Budete požádáni, abyste poskytli svou e-mailovou adresu a přijali podmínky služby, jak je uvedeno níže:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator nginx, Installer nginx Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): [email protected] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at https://acme-v02.api.letsencrypt.org/directory - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (A)gree/(C)ancel: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: N Obtaining a new certificate Performing the following challenges: http-01 challenge for wekan.linuxbuz.com Waiting for verification... Cleaning up challenges Deploying Certificate to VirtualHost /etc/nginx/conf.d/wekan.conf
Dále budete muset zvolit, zda chcete přesměrovat provoz HTTP na HTTPS:
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Zadejte 2 a stiskněte Enter pro zahájení procesu instalace. Po dokončení instalace byste měli získat následující výstup:
Redirecting all traffic on port 80 to ssl in /etc/nginx/conf.d/wekan.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://wekan.linuxbuz.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=wekan.linuxbuz.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/wekan.linuxbuz.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/wekan.linuxbuz.com/privkey.pem Your cert will expire on 2020-03-25. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - Your account credentials have been saved in your Certbot configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Certbot so making regular backups of this folder is ideal. - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Přístup k webovému rozhraní Wekan
Nyní otevřete webový prohlížeč a zadejte adresu URL https://wekan.linuxbuz.com . Budete přesměrováni na následující stránku:
Klikněte na Registrovat knoflík. Měli byste vidět následující stránku:
Zadejte požadované uživatelské jméno, heslo, e-mail a klikněte na Registrovat knoflík. Dále klikněte na znak v knoflík. Měli byste vidět následující stránku:
Zadejte své uživatelské jméno, heslo a klikněte na Podepsat v knoflík. Na následující stránce byste měli vidět řídicí panel Wekan:
To je prozatím vše. Úspěšně jste nainstalovali Wekan Kanban na server Debian 10 a zabezpečili jej pomocí bezplatného SSL Let's Encrypt.