Join the conversation

Sign in to join this conversation, and others like it, in the communities you care about.

Wekan

Wekan is an open-source kanban board (Trello like) which allows a card-based task and to-do management.

Wekan / General

Production ready alternative to snapd

Production ready alternative to snapd

Wekan / General · February 15, 2020 at 1:51am (Edited 4 years ago)

Hi,

while I would love to install wekan on my server I am struggling on which method I should go for. Snapd is unfortunately not an option because my VPS does not support snapd installations. I have installed docker on my server but within the docs of wekan its sounds like its not a good solution for production deployments. Could someone please tell me which route I should go for or are they any good alternatives?

I am also not a fan of Univention, Sandstorm or paid services.

Regards

Load previous messages

February 15, 2020 at 2:57am

for that, only node + mongodb is required

    • reply
    • like

    or actually,when you already have mongodb somewhere, only node

      • reply
      • like

      that bundle does run on any server, also on those that have some kernel restrictions or OpenVZ

        • reply
        • like

        For external mongodb, it mongodb requires login, you can add username and password and IP address etc to MONGO_URL

          • reply
          • like

          It's also possible to use some part of bash autoupgrade script, if you need automatic upgrades https://github.com/wekan/wekan-bash-install-autoupgrade

            • reply
            • like

            there is some regex to download newest bundle

              • reply
              • like

              after downloading, unzip it, stop service, rename directories, start service

                • reply
                • like

                February 15, 2020 at 12:36pm

                thank you for that detail

                  • reply
                  • like

                  with those scripts we would be using mongo auth (unlike with the snap config where mongo is private (localhost) and with auth on mongo not enabled)?

                    • reply
                    • like

                    February 15, 2020 at 2:10pm

                    Yes

                      • reply
                      • like

                      Use urlencode for special characters https://www.url-encode-decode.com/

                      MONGO_URL=mongodb://myDBReader:D1fficultP%[email protected]:27017/admin

                      https://docs.mongodb.com/manual/reference/connection-string/

                        like-fill
                        1
                        • reply
                        • like

                        or: MONGO_URL=mongodb://myDBReader:D1fficultP%[email protected]:27017/wekan

                          • reply
                          • like

                          depends what database name is in your database instance

                            • reply
                            • like

                            there can me multiple databases, like in one MySQL server instance can be multiple databases

                              • reply
                              • like

                              with different names

                                • reply
                                • like

                                February 16, 2020 at 10:09am

                                Thanks for your answers :) I really would like to stick with my current provider also because I have recently upgraded my package. The Bash script looks promising. Regarding security concerns if managed correctly is it a solid alternative to snapd?

                                  • reply
                                  • like

                                  I am also thinking about putting the bash setup into a docker container.

                                    • reply
                                    • like

                                    The bundle is really interesting. So I could just serve the node module on my server. You have both discussed this somehow in the previous posts.

                                      • reply
                                      • like

                                      February 16, 2020 at 5:18pm

                                      @dabor It's the same Wekan code on bash script, Snap and Docker. Only difference is that Snap and Docker provide sandboxing. There is not any difference in features etc.

                                        • reply
                                        • like

                                        There is also docker-compose.yml at https://github.com/wekan/wekan . With it, you could change MONGO_URL to point to extenal mongodb, and remove wekan-db container from that docker-compose.yml .

                                          • reply
                                          • like

                                          For that bash autoupgrade script, some Wekan contributor made it, and it did work for him to get Wekan automatically upgraded. That script is for Debian 9, so most likely you need only that part that does upgrading. Or just create your own script that downloads wekan-3.xx.zip , unzips it, stops service, renames directories, starts service

                                            • reply
                                            • like

                                            About security: As you see in start-wekan.sh and docker-compose.yml , Wekan has brute force login protection. Not logged in users can not make any changes to database: for example at public boards I needed to use cookies to save state of board view Lists/Swimlanes/Calendar. Cookies are worse, because it requires webbrowser reload page to take effect, so that view changes. For logged in users change is immediate, because it's possible to write to database.

                                              • reply
                                              • like

                                              Wekan input forms have XSS protection, that's why currently it's not possible to get file:/// links etc clickable

                                                • reply
                                                • like
                                                • reply
                                                • like

                                                I am very interested if anyone would find some vulnerability in Wekan, or some way to workaround permissions, because I would like to fix it.

                                                  • reply
                                                  • like