Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps | Demo | Docs | Install
  1. Cloudron Forum
  2. App Wishlist
  3. Bitwarden - Self-hosted password manager

Bitwarden - Self-hosted password manager

Scheduled Pinned Locked Moved Solved App Wishlist
218 Posts 20 Posters 136.3k Views 29 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • fbartelsF fbartels

    Hi @nebulon ,

    the Dockerfile in the git repo of bitwarden_rs makes use of multi stage building. is that already supported in cloudron build? If so then is should be trivial to adapt the last stage of the build process.

    Edit: to answer myself. Cloudron currently does not seem to support multi stage docker builds.

    fbartelsF Offline
    fbartelsF Offline
    fbartels
    App Dev
    wrote on last edited by
    #8

    Hi @nebulon ,

    I made a few tests today since I remembered that there is a dockerImage value in CloudronManifest.json, but I am not quite sure how to use it.

    My current experiment is at https://github.com/fbartels/bitwarden_rs/tree/cloudron/cloudron. It uses a new Dockerfile that uses the multi stage Dockerfile as a base and uses a Cloudron Base Image for the last stage. But it seems he does not take my dockerImage. The only way he pulls in my image is by calling cloudron install --image fbartels/bitwarden-cloudron from the commandline.

    For everyone else reading this. This is up until now only a build, the app is still missing all integration pieces and won't work withing Cloudron (yet).

    ? 1 Reply Last reply
    3
    • heliostaticH Offline
      heliostaticH Offline
      heliostatic
      wrote on last edited by
      #9

      They just published their security audit (https://blog.bitwarden.com/bitwarden-completes-third-party-security-audit-c1cc81b6d33) which seems like as good a reason as any to bump this request back up.

      1 Reply Last reply
      3
      • D Offline
        D Offline
        daniel.goletz
        wrote on last edited by
        #10

        Any news?
        Or simmiliar app in development?

        1 Reply Last reply
        1
        • fbartelsF fbartels

          Hi @nebulon ,

          I made a few tests today since I remembered that there is a dockerImage value in CloudronManifest.json, but I am not quite sure how to use it.

          My current experiment is at https://github.com/fbartels/bitwarden_rs/tree/cloudron/cloudron. It uses a new Dockerfile that uses the multi stage Dockerfile as a base and uses a Cloudron Base Image for the last stage. But it seems he does not take my dockerImage. The only way he pulls in my image is by calling cloudron install --image fbartels/bitwarden-cloudron from the commandline.

          For everyone else reading this. This is up until now only a build, the app is still missing all integration pieces and won't work withing Cloudron (yet).

          ? Offline
          ? Offline
          A Former User
          wrote on last edited by A Former User
          #11

          @fbartels How is the project going?

          fbartelsF 1 Reply Last reply
          1
          • ? A Former User

            @fbartels How is the project going?

            fbartelsF Offline
            fbartelsF Offline
            fbartels
            App Dev
            wrote on last edited by
            #12

            @spectrely no, I had no further time to really look into this so far. Busy with other projects.

            @spectrely with cloudron now on 18.04 do multi stage builds now work? You can try this with a cloudron build in the git clone'ed directory.

            ? 1 Reply Last reply
            0
            • fbartelsF fbartels

              @spectrely no, I had no further time to really look into this so far. Busy with other projects.

              @spectrely with cloudron now on 18.04 do multi stage builds now work? You can try this with a cloudron build in the git clone'ed directory.

              ? Offline
              ? Offline
              A Former User
              wrote on last edited by
              #13

              @fbartels Thanks for the quick reply. I'll play around and report back.

              necrevistonnezrN 1 Reply Last reply
              4
              • ? A Former User

                @fbartels Thanks for the quick reply. I'll play around and report back.

                necrevistonnezrN Offline
                necrevistonnezrN Offline
                necrevistonnezr
                wrote on last edited by
                #14

                @spectrely said in Bitwarden - Self-hosted password manager:

                @fbartels Thanks for the quick reply. I'll play around and report back.

                Did you try that out?

                1 Reply Last reply
                1
                • iamthefijI Offline
                  iamthefijI Offline
                  iamthefij
                  App Dev
                  wrote on last edited by iamthefij
                  #15

                  LDAP support is a Work in Progress right now.

                  The plan is not to have it leverage LDAP for auth, but to auto invite users from LDAP so that new user registration doesn't have to be enabled.

                  1 Reply Last reply
                  0
                  • fbartelsF Offline
                    fbartelsF Offline
                    fbartels
                    App Dev
                    wrote on last edited by
                    #16

                    To answer my own question: no Cloudron still does not support multi stage builds:

                    08:07 $ docker build .
                    Sending build context to Docker daemon   7.68kB
                    Step 1/12 : FROM cloudron/base:1.0.0@sha256:147a648a068a2e746644746bbfb42eb7a50d682437cead3c67c933c546357617
                    sha256:147a648a068a2e746644746bbfb42eb7a50d682437cead3c67c933c546357617: Pulling from cloudron/base
                    124c757242f8: Pull complete
                    9d866f8bde2a: Pull complete
                    fa3f2f277e67: Pull complete
                    398d32b153e8: Pull complete
                    afde35469481: Pull complete
                    5fa763ad3e3d: Pull complete
                    6f382df2868f: Pull complete
                    da8db3680a7d: Pull complete
                    bbf6e101d755: Pull complete
                    ba1148a00c9f: Pull complete
                    7b84d63a4591: Pull complete
                    Digest: sha256:147a648a068a2e746644746bbfb42eb7a50d682437cead3c67c933c546357617
                    Status: Downloaded newer image for cloudron/base:1.0.0@sha256:147a648a068a2e746644746bbfb42eb7a50d682437cead3c67c933c546357617
                     ---> 534bd0efda10
                    Step 2/12 : ENV ROCKET_ENV "staging"
                     ---> Running in 68b6aa46c8fe
                    Removing intermediate container 68b6aa46c8fe
                     ---> b5146c0012ce
                    Step 3/12 : ENV ROCKET_PORT=80
                     ---> Running in 3ceb3ae20f44
                    Removing intermediate container 3ceb3ae20f44
                     ---> 20f1c76798d9
                    Step 4/12 : ENV ROCKET_WORKERS=10
                     ---> Running in fb4da112f345
                    Removing intermediate container fb4da112f345
                     ---> 4715e7e5db66
                    Step 5/12 : RUN mkdir -p /app/data
                     ---> Running in 080caeccf4bc
                    Removing intermediate container 080caeccf4bc
                     ---> 3bc89f3dd8e3
                    Step 6/12 : VOLUME /app/data
                     ---> Running in c14ec82d1d86
                    Removing intermediate container c14ec82d1d86
                     ---> 921426c4b462
                    Step 7/12 : EXPOSE 80
                     ---> Running in 6f8a51fa17c2
                    Removing intermediate container 6f8a51fa17c2
                     ---> 945b85a9d2c0
                    Step 8/12 : EXPOSE 3012
                     ---> Running in 57a9f4770437
                    Removing intermediate container 57a9f4770437
                     ---> 29bf7e9ddc35
                    Step 9/12 : COPY --from=mprasil/bitwarden:1.7.0 /web-vault /app/code/web-vault
                    1.7.0: Pulling from mprasil/bitwarden
                    6ae821421a7d: Pull complete
                    6b62744e37c4: Pull complete
                    6f7d0f488d72: Pull complete
                    b1dac5a36400: Pull complete
                    f5334a919416: Pull complete
                    86593ec71a37: Pull complete
                    Digest: sha256:0d48e5b8f64d83a0d0931aba0fb559985a687b7417ceb49fb909051b0f397f47
                    Status: Downloaded newer image for mprasil/bitwarden:1.7.0
                     ---> 8362350b2ff1
                    Step 10/12 : COPY --from=mprasil/bitwarden:1.7.0 /bitwarden_rs /app/code/
                     ---> d6e0b6fc0c46
                    Step 11/12 : COPY --from=mprasil/bitwarden:1.7.0 /Rocket.toml /app/code/
                     ---> e835acd7031b
                    Step 12/12 : CMD /app/code/bitwarden_rs
                     ---> Running in 81f78757da52
                    Removing intermediate container 81f78757da52
                     ---> 89d5017a81f4
                    Successfully built 89d5017a81f4
                    ✔ ~/.../bitwarden_rs/cloudron [cloudron L|✔]
                    08:09 $ cloudron build
                    Building com.github.bitwardenrs@0.1.0
                    
                    Build scheduled with id bc08173c-2af9-4f3f-a759-19d60bb45cf8
                    Waiting for build to begin, this may take a bit...
                    Step 1/12 : FROM cloudron/base:1.0.0@sha256:147a648a068a2e746644746bbfb42eb7a50d682437cead3c67c933c546357617
                     ---> 534bd0efda10
                    Step 2/12 : ENV ROCKET_ENV "staging"
                     ---> Using cache
                     ---> c5a9b7d6ac6f
                    Step 3/12 : ENV ROCKET_PORT 80
                     ---> Using cache
                     ---> 2d22bcf6dc7d
                    Step 4/12 : ENV ROCKET_WORKERS 10
                     ---> Using cache
                     ---> 2e5e855777d5
                    Step 5/12 : RUN mkdir -p /app/data
                     ---> Using cache
                     ---> 2688a8102e91
                    Step 6/12 : VOLUME /app/data
                     ---> Using cache
                     ---> 4ee6f1df5ccf
                    Step 7/12 : EXPOSE 80
                     ---> Using cache
                     ---> 5f451061f3e1
                    Step 8/12 : EXPOSE 3012
                     ---> Using cache
                     ---> 8c5e8e7a13b4
                    Step 9/12 : COPY --from=mprasil/bitwarden:1.7.0 /web-vault /app/code/web-vault
                    Unknown flag: from
                    Build failed
                    Build failed
                    ERROR App could not be built due to errors above [ /usr/lib/node_modules/cloudron/src/helper.js:68:29 ]
                    

                    While a standalone ``docker build .` succeeds doing it via ´cloudron build´ fails.

                    @iamthefij said in Bitwarden - Self-hosted password manager:

                    LDAP support is a Work in Progress right now.

                    I would say even the recently introduced admin panel is already a good step. This could be secured via http basic auth and only allowed for admins in Cloudron. The last point in the ldap sync topic was afair that this will be implemented as a standalone tool (which then will give the challenge on how to integrate both parts in the same image).

                    iamthefijI 1 Reply Last reply
                    1
                    • fbartelsF fbartels

                      To answer my own question: no Cloudron still does not support multi stage builds:

                      08:07 $ docker build .
                      Sending build context to Docker daemon   7.68kB
                      Step 1/12 : FROM cloudron/base:1.0.0@sha256:147a648a068a2e746644746bbfb42eb7a50d682437cead3c67c933c546357617
                      sha256:147a648a068a2e746644746bbfb42eb7a50d682437cead3c67c933c546357617: Pulling from cloudron/base
                      124c757242f8: Pull complete
                      9d866f8bde2a: Pull complete
                      fa3f2f277e67: Pull complete
                      398d32b153e8: Pull complete
                      afde35469481: Pull complete
                      5fa763ad3e3d: Pull complete
                      6f382df2868f: Pull complete
                      da8db3680a7d: Pull complete
                      bbf6e101d755: Pull complete
                      ba1148a00c9f: Pull complete
                      7b84d63a4591: Pull complete
                      Digest: sha256:147a648a068a2e746644746bbfb42eb7a50d682437cead3c67c933c546357617
                      Status: Downloaded newer image for cloudron/base:1.0.0@sha256:147a648a068a2e746644746bbfb42eb7a50d682437cead3c67c933c546357617
                       ---> 534bd0efda10
                      Step 2/12 : ENV ROCKET_ENV "staging"
                       ---> Running in 68b6aa46c8fe
                      Removing intermediate container 68b6aa46c8fe
                       ---> b5146c0012ce
                      Step 3/12 : ENV ROCKET_PORT=80
                       ---> Running in 3ceb3ae20f44
                      Removing intermediate container 3ceb3ae20f44
                       ---> 20f1c76798d9
                      Step 4/12 : ENV ROCKET_WORKERS=10
                       ---> Running in fb4da112f345
                      Removing intermediate container fb4da112f345
                       ---> 4715e7e5db66
                      Step 5/12 : RUN mkdir -p /app/data
                       ---> Running in 080caeccf4bc
                      Removing intermediate container 080caeccf4bc
                       ---> 3bc89f3dd8e3
                      Step 6/12 : VOLUME /app/data
                       ---> Running in c14ec82d1d86
                      Removing intermediate container c14ec82d1d86
                       ---> 921426c4b462
                      Step 7/12 : EXPOSE 80
                       ---> Running in 6f8a51fa17c2
                      Removing intermediate container 6f8a51fa17c2
                       ---> 945b85a9d2c0
                      Step 8/12 : EXPOSE 3012
                       ---> Running in 57a9f4770437
                      Removing intermediate container 57a9f4770437
                       ---> 29bf7e9ddc35
                      Step 9/12 : COPY --from=mprasil/bitwarden:1.7.0 /web-vault /app/code/web-vault
                      1.7.0: Pulling from mprasil/bitwarden
                      6ae821421a7d: Pull complete
                      6b62744e37c4: Pull complete
                      6f7d0f488d72: Pull complete
                      b1dac5a36400: Pull complete
                      f5334a919416: Pull complete
                      86593ec71a37: Pull complete
                      Digest: sha256:0d48e5b8f64d83a0d0931aba0fb559985a687b7417ceb49fb909051b0f397f47
                      Status: Downloaded newer image for mprasil/bitwarden:1.7.0
                       ---> 8362350b2ff1
                      Step 10/12 : COPY --from=mprasil/bitwarden:1.7.0 /bitwarden_rs /app/code/
                       ---> d6e0b6fc0c46
                      Step 11/12 : COPY --from=mprasil/bitwarden:1.7.0 /Rocket.toml /app/code/
                       ---> e835acd7031b
                      Step 12/12 : CMD /app/code/bitwarden_rs
                       ---> Running in 81f78757da52
                      Removing intermediate container 81f78757da52
                       ---> 89d5017a81f4
                      Successfully built 89d5017a81f4
                      ✔ ~/.../bitwarden_rs/cloudron [cloudron L|✔]
                      08:09 $ cloudron build
                      Building com.github.bitwardenrs@0.1.0
                      
                      Build scheduled with id bc08173c-2af9-4f3f-a759-19d60bb45cf8
                      Waiting for build to begin, this may take a bit...
                      Step 1/12 : FROM cloudron/base:1.0.0@sha256:147a648a068a2e746644746bbfb42eb7a50d682437cead3c67c933c546357617
                       ---> 534bd0efda10
                      Step 2/12 : ENV ROCKET_ENV "staging"
                       ---> Using cache
                       ---> c5a9b7d6ac6f
                      Step 3/12 : ENV ROCKET_PORT 80
                       ---> Using cache
                       ---> 2d22bcf6dc7d
                      Step 4/12 : ENV ROCKET_WORKERS 10
                       ---> Using cache
                       ---> 2e5e855777d5
                      Step 5/12 : RUN mkdir -p /app/data
                       ---> Using cache
                       ---> 2688a8102e91
                      Step 6/12 : VOLUME /app/data
                       ---> Using cache
                       ---> 4ee6f1df5ccf
                      Step 7/12 : EXPOSE 80
                       ---> Using cache
                       ---> 5f451061f3e1
                      Step 8/12 : EXPOSE 3012
                       ---> Using cache
                       ---> 8c5e8e7a13b4
                      Step 9/12 : COPY --from=mprasil/bitwarden:1.7.0 /web-vault /app/code/web-vault
                      Unknown flag: from
                      Build failed
                      Build failed
                      ERROR App could not be built due to errors above [ /usr/lib/node_modules/cloudron/src/helper.js:68:29 ]
                      

                      While a standalone ``docker build .` succeeds doing it via ´cloudron build´ fails.

                      @iamthefij said in Bitwarden - Self-hosted password manager:

                      LDAP support is a Work in Progress right now.

                      I would say even the recently introduced admin panel is already a good step. This could be secured via http basic auth and only allowed for admins in Cloudron. The last point in the ldap sync topic was afair that this will be implemented as a standalone tool (which then will give the challenge on how to integrate both parts in the same image).

                      iamthefijI Offline
                      iamthefijI Offline
                      iamthefij
                      App Dev
                      wrote on last edited by
                      #17

                      @fbartels The tool will likely be written as a static binary which can be downloaded and installed within the same container. Then it can be executed by Cloudron using the scheduler. Roughly the same way other periodic tasks are executed.

                      1 Reply Last reply
                      0
                      • P Offline
                        P Offline
                        parhelium
                        wrote on last edited by
                        #18

                        Is there chance Bitwarden is going to be included in cloudron soon ?
                        I would like to start using it.

                        1 Reply Last reply
                        0
                        • fbartelsF Offline
                          fbartelsF Offline
                          fbartels
                          App Dev
                          wrote on last edited by
                          #19

                          Docker has recently been updated on the cloudron buildserver, which means multi stage builds and COPY --from now works within Dockerfiles.

                          I have a longer train ride on friday, maybe I can now make something happen with Bitwarden_rs.

                          1 Reply Last reply
                          3
                          • fbartelsF Offline
                            fbartelsF Offline
                            fbartels
                            App Dev
                            wrote on last edited by fbartels
                            #20

                            basic prototype now lives in https://git.cloudron.io/fbartels/bitwardenrs-app

                            cannot build it at the moment, though. since its stuck at

                            $ cloudron build                                                                                                                                                                                                                  
                            Building com.github.bitwardenrs@0.1.0
                            
                            Build scheduled with id 9fcf31f1-04f9-445e-b687-79b2f7d54659
                            Waiting for build to begin, this may take a bit...
                            

                            @girish is the backend maybe hanging?

                            edit: by now the build has finished

                            1 Reply Last reply
                            5
                            • necrevistonnezrN Offline
                              necrevistonnezrN Offline
                              necrevistonnezr
                              wrote on last edited by necrevistonnezr
                              #21

                              Great that this is being worked on!

                              I installed the app but get the following errors:

                              Mar 23 10:36:17 box:shell addLogrotateConfig spawn: /usr/bin/sudo -S /home/yellowtent/box/src/scripts/configurelogrotate.sh add a3cda43e-541b-4edd-b8fe-c4cfb52752fb /tmp/a3cda43e-541b-4edd-b8fe-c4cfb52752fb.logrotate
                              Mar 23 10:27:12 => Starting bitwarden_rs
                              Mar 23 10:27:12 [2019-03-23 10:27:12][bitwarden_rs][ERROR] Error creating database directory
                              Mar 23 10:27:16 => Starting bitwarden_rs
                              Mar 23 10:27:16 [2019-03-23 10:27:16][bitwarden_rs][ERROR] Error creating database directory
                              Mar 23 10:27:19 => Starting bitwarden_rs
                              Mar 23 10:27:19 [2019-03-23 10:27:19][bitwarden_rs][ERROR] Error creating database directory
                              Mar 23 10:27:22 => Starting bitwarden_rs
                              Mar 23 10:27:22 [2019-03-23 10:27:22][bitwarden_rs][ERROR] Error creating database directory
                              Mar 23 10:27:26 => Starting bitwarden_rs
                              Mar 23 10:27:26 [2019-03-23 10:27:26][bitwarden_rs][ERROR] Error creating database directory
                              Mar 23 10:27:30 => Starting bitwarden_rs
                              

                              After restarting the app it's now not responding
                              Tried sudo systemctl restart boxas well.

                              1 Reply Last reply
                              0
                              • G Offline
                                G Offline
                                gml
                                wrote on last edited by
                                #22

                                Hi @fbartels

                                Build and install worked without problems, but i'm facing the same issue as @necrevistonnezr

                                Couln't really find something on the first view, but i'm not that familiar with containers. Would be great to see it running, thank you for your efforts you already made!

                                1 Reply Last reply
                                1
                                • G Offline
                                  G Offline
                                  gml
                                  wrote on last edited by
                                  #23

                                  @fbartels It works now with the fix from my colleague m4rg4sh (he submitted a pull request). Also there is a new version 1.8.0 - I just updated to it and everything looks great so far 🙂

                                  1 Reply Last reply
                                  2
                                  • fbartelsF Offline
                                    fbartelsF Offline
                                    fbartels
                                    App Dev
                                    wrote on last edited by
                                    #24

                                    Thanks for the pr. I just merged it and also update the dockerfile to 1.8.0.

                                    1 Reply Last reply
                                    2
                                    • G Offline
                                      G Offline
                                      gml
                                      wrote on last edited by
                                      #25

                                      You're welcome 🙂

                                      I hope this pr is going to be merged into bitwarden_rs soon: https://github.com/dani-garcia/bitwarden_rs/pull/396

                                      It would make it a lot easier for the user management. Currently registration is open to the world until you set ENV SIGNUPS_ALLOWED=false, which only makes sense after you created a first account. After setting it you could work with invites, but the invitation model sucks (you can just invite when having an Organisation or you can do it in the admin panel, but you have to set another env variable to access it and you can't save stuff there).

                                      So currently not really usable for the normal user. As far as I understood, with the ldap integration accounts / invites will be synced for all ldap users, which is exactly what we want. I also hope the admin panel gets some love, as in my eyes the token system to log in there isn't really easy to handle. And there seems to be a problem saving the settings you set there, but that's probably a problem in the cloudron integration.

                                      fbartelsF 1 Reply Last reply
                                      1
                                      • G gml

                                        You're welcome 🙂

                                        I hope this pr is going to be merged into bitwarden_rs soon: https://github.com/dani-garcia/bitwarden_rs/pull/396

                                        It would make it a lot easier for the user management. Currently registration is open to the world until you set ENV SIGNUPS_ALLOWED=false, which only makes sense after you created a first account. After setting it you could work with invites, but the invitation model sucks (you can just invite when having an Organisation or you can do it in the admin panel, but you have to set another env variable to access it and you can't save stuff there).

                                        So currently not really usable for the normal user. As far as I understood, with the ldap integration accounts / invites will be synced for all ldap users, which is exactly what we want. I also hope the admin panel gets some love, as in my eyes the token system to log in there isn't really easy to handle. And there seems to be a problem saving the settings you set there, but that's probably a problem in the cloudron integration.

                                        fbartelsF Offline
                                        fbartelsF Offline
                                        fbartels
                                        App Dev
                                        wrote on last edited by
                                        #26

                                        @gml yes, the ldap invite tool would be nice. I think the best for the moment would be to slap Apache Infront of bitwarden (would be needed anyways for the websocket part) and hide the admin panel behind ldap auth (only allow admin users from within cloudron). Then invites and open registration can be disabled and admins can manually create accounts as needed.

                                        1 Reply Last reply
                                        2
                                        • fbartelsF Offline
                                          fbartelsF Offline
                                          fbartels
                                          App Dev
                                          wrote on last edited by
                                          #27

                                          I've now spent a bit of time to get the admin page "properly" working. Registrations are now disabled in the app itself, but users that are in the cloudron admin group can login to /admin to create the required users.

                                          Stuff like Websockets support (for folder notifications) is still missing, as well as automatic SMTP configuration but I would say the general app is "done".

                                          Looking forward to feedback.

                                          1 Reply Last reply
                                          4
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Bookmarks
                                          • Search