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. Feature Requests
  3. Make it easier to use your own app

Make it easier to use your own app

Scheduled Pinned Locked Moved Feature Requests
14 Posts 7 Posters 2.6k Views 7 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.
  • subvenS Offline
    subvenS Offline
    subven
    wrote on last edited by
    #2

    Did you overlook the cheat sheet and the App Packaging & Development forum?

    There is enough basic information on how to package apps for Cloudron. This is not reinventing the wheel since packing apps with Docker is out there for a long time and there is no "easy" way since this is already very comfortable. I'm neither a developer nor a real programmer but with my knowledge as admin and some docker and ops skills, I was able to pack apps for Cloudron. The Cloudron base image with its addons together with the build service app makes this easier then ever before.

    E 1 Reply Last reply
    0
    • subvenS subven

      Did you overlook the cheat sheet and the App Packaging & Development forum?

      There is enough basic information on how to package apps for Cloudron. This is not reinventing the wheel since packing apps with Docker is out there for a long time and there is no "easy" way since this is already very comfortable. I'm neither a developer nor a real programmer but with my knowledge as admin and some docker and ops skills, I was able to pack apps for Cloudron. The Cloudron base image with its addons together with the build service app makes this easier then ever before.

      E Offline
      E Offline
      ekevu123
      wrote on last edited by
      #3

      @subven It's a matter of perspective, I guess. It is doable, yes, but I wouldn't call it easy.

      timconsidineT 1 Reply Last reply
      0
      • E ekevu123

        @subven It's a matter of perspective, I guess. It is doable, yes, but I wouldn't call it easy.

        timconsidineT Offline
        timconsidineT Offline
        timconsidine
        App Dev
        wrote on last edited by
        #4

        @ekevu123 it's certainly subjective, but relatively easy is definitely achievable. Just needs practice.
        Deploying to Cloudron I mean.
        Can't comment on any app - that depends on the code.
        But packaging is fairly straightforward with a little practice.
        Anything/everything in IT is complex when you are not familiar, and easy when you are.

        1 Reply Last reply
        1
        • girishG Offline
          girishG Offline
          girish
          Staff
          wrote on last edited by
          #5

          I do think packaging is quite a technical topic unfortunately and requires some sysadmin and devops knowledge . deb/rpm packaging are quite complicated beasts as well.

          MooCloud_MattM 1 Reply Last reply
          0
          • girishG girish

            I do think packaging is quite a technical topic unfortunately and requires some sysadmin and devops knowledge . deb/rpm packaging are quite complicated beasts as well.

            MooCloud_MattM Offline
            MooCloud_MattM Offline
            MooCloud_Matt
            wrote on last edited by
            #6

            @girish
            I think the big deal is just read only fs.
            Been able to select directory to be R+W and not just App/data can be a good idea on the simplify packaging for Cloudron.

            Matteo. R.
            Founder and Tech-Support Manager.
            MooCloud MSP
            Swiss Managed Service Provider

            E jdaviescoatesJ 2 Replies Last reply
            0
            • MooCloud_MattM MooCloud_Matt

              @girish
              I think the big deal is just read only fs.
              Been able to select directory to be R+W and not just App/data can be a good idea on the simplify packaging for Cloudron.

              E Offline
              E Offline
              ekevu123
              wrote on last edited by
              #7

              I don't mind the process itself, but two improvements would certainly help:

              1. If I can give access to a maintainer for only one app and it doesn't require server access to install it. So, if I could install something like an empty app in Cloudron and then have someone else figure things out in the terminal.
              2. If updates could be implemented easier. By easier I mean: ideally, by taking the code from a repository, for example.
              fbartelsF 1 Reply Last reply
              0
              • MooCloud_MattM MooCloud_Matt

                @girish
                I think the big deal is just read only fs.
                Been able to select directory to be R+W and not just App/data can be a good idea on the simplify packaging for Cloudron.

                jdaviescoatesJ Offline
                jdaviescoatesJ Offline
                jdaviescoates
                wrote on last edited by
                #8

                @MooCloud_Matt said in Make it easier to use your own app:

                @girish
                I think the big deal is just read only fs.
                Been able to select directory to be R+W and not just App/data can be a good idea on the simplify packaging for Cloudron.

                But that would break how Cloudron works, making apps much less secure, and much harder to maintain ( backups, updates, migrations)

                I use Cloudron with Gandi & Hetzner

                MooCloud_MattM 1 Reply Last reply
                1
                • E ekevu123

                  I don't mind the process itself, but two improvements would certainly help:

                  1. If I can give access to a maintainer for only one app and it doesn't require server access to install it. So, if I could install something like an empty app in Cloudron and then have someone else figure things out in the terminal.
                  2. If updates could be implemented easier. By easier I mean: ideally, by taking the code from a repository, for example.
                  fbartelsF Offline
                  fbartelsF Offline
                  fbartels
                  App Dev
                  wrote on last edited by
                  #9

                  @ekevu123 said in Make it easier to use your own app:

                  If I can give access to a maintainer for only one app and it doesn't require server access to install it. So, if I could install something like an empty app in Cloudron and then have someone else figure things out in the terminal.

                  That actually already works, but is mainly useful for static/php apps. You can add an "operator" to an app. This operator then has access to the logs, files manager and terminal for the given app.

                  E 1 Reply Last reply
                  2
                  • jdaviescoatesJ jdaviescoates

                    @MooCloud_Matt said in Make it easier to use your own app:

                    @girish
                    I think the big deal is just read only fs.
                    Been able to select directory to be R+W and not just App/data can be a good idea on the simplify packaging for Cloudron.

                    But that would break how Cloudron works, making apps much less secure, and much harder to maintain ( backups, updates, migrations)

                    MooCloud_MattM Offline
                    MooCloud_MattM Offline
                    MooCloud_Matt
                    wrote on last edited by
                    #10

                    @jdaviescoates
                    I'm not on the same idea, if you can specify in the manifest the directories that are writable(or better where a volume should be mounted), you can back them up as you do with /app/data.

                    and the same for updates and migration, updates are managed by the start script or by including the new code directly in the image, this will not change is exactly the same as now, and is secure as now, because you still have all the FS lock, just some directory will be writable, and they are specified in the manifest.

                    And we have proof that it works because the compose specification is easy to use and easy to set up a backup of the volume mounted on the container.

                    Matteo. R.
                    Founder and Tech-Support Manager.
                    MooCloud MSP
                    Swiss Managed Service Provider

                    1 Reply Last reply
                    1
                    • fbartelsF fbartels

                      @ekevu123 said in Make it easier to use your own app:

                      If I can give access to a maintainer for only one app and it doesn't require server access to install it. So, if I could install something like an empty app in Cloudron and then have someone else figure things out in the terminal.

                      That actually already works, but is mainly useful for static/php apps. You can add an "operator" to an app. This operator then has access to the logs, files manager and terminal for the given app.

                      E Offline
                      E Offline
                      ekevu123
                      wrote on last edited by
                      #11

                      @fbartels Yeah, but I cannot use that function to have someone install and maintain a custom app.

                      MooCloud_MattM 1 Reply Last reply
                      0
                      • E ekevu123

                        @fbartels Yeah, but I cannot use that function to have someone install and maintain a custom app.

                        MooCloud_MattM Offline
                        MooCloud_MattM Offline
                        MooCloud_Matt
                        wrote on last edited by
                        #12

                        @ekevu123
                        You can limit what a user can do with the operator role, and update the app using a custom docker image, with the API and a Rest Client or the Cloudron CLI(that work flawlessly with a CI/CD).
                        You should follow the idea of updating the image and not the software inside of it, when you containerize any app for cloudron, because they are the same principle applied to any docker install.

                        As I suggested, you could just set up a CI CD, and provide access to the GIT repo + the operator access to cloudron for reading logs and access the terminal, to your developer.
                        This allows you to update the app, keeping the advantage of cloudron for stability, security, and backup, ... and having that extra flexibility that you are asking for.

                        I know that is not what you expect as an answer, but cloudron is built with the idea of using an opinionated layout(for easy maintenance and stability), for DIY a solution, maybe Portainer is a better fit for the flexibility that it offers.

                        Matteo. R.
                        Founder and Tech-Support Manager.
                        MooCloud MSP
                        Swiss Managed Service Provider

                        fbartelsF 1 Reply Last reply
                        3
                        • MooCloud_MattM MooCloud_Matt

                          @ekevu123
                          You can limit what a user can do with the operator role, and update the app using a custom docker image, with the API and a Rest Client or the Cloudron CLI(that work flawlessly with a CI/CD).
                          You should follow the idea of updating the image and not the software inside of it, when you containerize any app for cloudron, because they are the same principle applied to any docker install.

                          As I suggested, you could just set up a CI CD, and provide access to the GIT repo + the operator access to cloudron for reading logs and access the terminal, to your developer.
                          This allows you to update the app, keeping the advantage of cloudron for stability, security, and backup, ... and having that extra flexibility that you are asking for.

                          I know that is not what you expect as an answer, but cloudron is built with the idea of using an opinionated layout(for easy maintenance and stability), for DIY a solution, maybe Portainer is a better fit for the flexibility that it offers.

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

                          @MooCloud_Matt said in Make it easier to use your own app:

                          and update the app

                          Ah, right. I was not considering that the user could use the cli with the operator role to update the app, but that would of course make sense.

                          And +1 for the ci/cd approach. Here it would not even matter what capabilities operators have for updating apps, since you could have one "global" token stored in your ci for pipelines to make use of.

                          Personally I am using Drone as my Cloudron based CI, the source for my instance is at https://github.com/fbartels/cloudron-drone-app

                          MooCloud_MattM 1 Reply Last reply
                          1
                          • fbartelsF fbartels

                            @MooCloud_Matt said in Make it easier to use your own app:

                            and update the app

                            Ah, right. I was not considering that the user could use the cli with the operator role to update the app, but that would of course make sense.

                            And +1 for the ci/cd approach. Here it would not even matter what capabilities operators have for updating apps, since you could have one "global" token stored in your ci for pipelines to make use of.

                            Personally I am using Drone as my Cloudron based CI, the source for my instance is at https://github.com/fbartels/cloudron-drone-app

                            MooCloud_MattM Offline
                            MooCloud_MattM Offline
                            MooCloud_Matt
                            wrote on last edited by
                            #14

                            we use Gilab CI/CD, but even n8n can be used as a ci/cd if you want to use no code.

                            Matteo. R.
                            Founder and Tech-Support Manager.
                            MooCloud MSP
                            Swiss Managed Service Provider

                            1 Reply Last reply
                            3
                            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