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 Packaging & Development
  3. Cloudron as an app inside of Cloudron

Cloudron as an app inside of Cloudron

Scheduled Pinned Locked Moved App Packaging & Development
33 Posts 6 Posters 3.3k Views 6 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.
  • LonkleL Offline
    LonkleL Offline
    Lonkle
    wrote on last edited by
    #1

    Thanks to the Docker add-on, I feel like it might be possible to package Cloudron for Cloudron as an app.

    My only motivation for doing so would be to help with development and treating it like an app would be not only cool, but super efficient for development especially with the Cloudron Build Service installed. Super quick compilation and testing.

    I think it was @mehdi and @robi who expressed the possibility of running Cloudron in Cloudron but I was curious if anyone thinks it’s feasible enough for me to try to code?

    1 Reply Last reply
    0
    • BrutalBirdieB Offline
      BrutalBirdieB Offline
      BrutalBirdie
      Partner
      wrote on last edited by
      #2

      I can understand the wish for that.

      I work a lot with CI/CD, even now when developing a new app for Cloudron.
      My new push will be deployed to a test instance so I can test it.

      Having this for the development of Cloudron it self could be beneficial.
      Thinking about a growing community and more developers having the option the just give access to a cloudron instance running on a Cloudron would make the PR review faster/easier.

      But I don't know if this is necessary already.

      Like my work? Consider donating a drink. Cheers!

      LonkleL 1 Reply Last reply
      0
      • mehdiM Offline
        mehdiM Offline
        mehdi
        App Dev
        wrote on last edited by
        #3

        I would theoretically be possible, I think, but honestly it would be an infrastructure nightmare to set-up. My opinion => don't go this route, use proper VMs. In addition to being much easier to accomplish, you'll also get an environment much closer to an actual cloudron, so there will be much less weird different behaviours.

        BrutalBirdieB LonkleL 2 Replies Last reply
        2
        • BrutalBirdieB BrutalBirdie

          I can understand the wish for that.

          I work a lot with CI/CD, even now when developing a new app for Cloudron.
          My new push will be deployed to a test instance so I can test it.

          Having this for the development of Cloudron it self could be beneficial.
          Thinking about a growing community and more developers having the option the just give access to a cloudron instance running on a Cloudron would make the PR review faster/easier.

          But I don't know if this is necessary already.

          LonkleL Offline
          LonkleL Offline
          Lonkle
          wrote on last edited by
          #4

          @BrutalBirdie Not necessary, no no. But I’ve been using ssh -> nano to make all my box changes so I didn’t have to reinstall every change and it’s just really cumbersome.

          I also don’t mind coding something not necessary right now if developers might find it beneficial (like I do). I was just curious if people thought I should even try to. Like, is there anything obvious that would make Cloudron just too hard to convert to an app?

          1 Reply Last reply
          0
          • mehdiM mehdi

            I would theoretically be possible, I think, but honestly it would be an infrastructure nightmare to set-up. My opinion => don't go this route, use proper VMs. In addition to being much easier to accomplish, you'll also get an environment much closer to an actual cloudron, so there will be much less weird different behaviours.

            BrutalBirdieB Offline
            BrutalBirdieB Offline
            BrutalBirdie
            Partner
            wrote on last edited by
            #5

            @mehdi said in Cloudron as an app inside of Cloudron:

            I would theoretically be possible, I think, but honestly it would be an infrastructure nightmare to set-up. My opinion => don't go this route, use proper VMs. In addition to being much easier to accomplish, you'll also get an environment much closer to an actual cloudron, so there will be much less weird different behaviours.

            Thought about the same, with the Hetzner API I can spin up a cloudron with the gitlab ci/cd to install my working changes and review my work.

            Like my work? Consider donating a drink. Cheers!

            LonkleL 1 Reply Last reply
            1
            • BrutalBirdieB BrutalBirdie

              @mehdi said in Cloudron as an app inside of Cloudron:

              I would theoretically be possible, I think, but honestly it would be an infrastructure nightmare to set-up. My opinion => don't go this route, use proper VMs. In addition to being much easier to accomplish, you'll also get an environment much closer to an actual cloudron, so there will be much less weird different behaviours.

              Thought about the same, with the Hetzner API I can spin up a cloudron with the gitlab ci/cd to install my working changes and review my work.

              LonkleL Offline
              LonkleL Offline
              Lonkle
              wrote on last edited by
              #6

              @BrutalBirdie Do you make box changes as well?

              BrutalBirdieB 1 Reply Last reply
              0
              • LonkleL Lonkle

                @BrutalBirdie Do you make box changes as well?

                BrutalBirdieB Offline
                BrutalBirdieB Offline
                BrutalBirdie
                Partner
                wrote on last edited by
                #7

                @Lonk said in Cloudron as an app inside of Cloudron:

                @BrutalBirdie Do you make box changes as well?

                No, I did not yet contribute to the cloudron "base" itself.
                So I don't know what pains you are going threw 😄

                pain >

                But I’ve been using ssh -> nano to make all my box changes so I didn’t have to reinstall every change and it’s just really cumbersome.

                Like my work? Consider donating a drink. Cheers!

                LonkleL 1 Reply Last reply
                1
                • mehdiM mehdi

                  I would theoretically be possible, I think, but honestly it would be an infrastructure nightmare to set-up. My opinion => don't go this route, use proper VMs. In addition to being much easier to accomplish, you'll also get an environment much closer to an actual cloudron, so there will be much less weird different behaviours.

                  LonkleL Offline
                  LonkleL Offline
                  Lonkle
                  wrote on last edited by
                  #8

                  @mehdi said in Cloudron as an app inside of Cloudron:

                  I would theoretically be possible, I think, but honestly it would be an infrastructure nightmare to set-up. My opinion => don't go this route, use proper VMs. In addition to being much easier to accomplish, you'll also get an environment much closer to an actual cloudron, so there will be much less weird different behaviours.

                  You mentioned this before. Since this is just for testing new box code quickly with the same flow as a custom app. Do you still think it’s more work than it’s worth? Infrastructure nightmare is particularly what I’m confused about; I want to understand what you mean by that.

                  1 Reply Last reply
                  0
                  • BrutalBirdieB BrutalBirdie

                    @Lonk said in Cloudron as an app inside of Cloudron:

                    @BrutalBirdie Do you make box changes as well?

                    No, I did not yet contribute to the cloudron "base" itself.
                    So I don't know what pains you are going threw 😄

                    pain >

                    But I’ve been using ssh -> nano to make all my box changes so I didn’t have to reinstall every change and it’s just really cumbersome.

                    LonkleL Offline
                    LonkleL Offline
                    Lonkle
                    wrote on last edited by
                    #9

                    @BrutalBirdie said in Cloudron as an app inside of Cloudron:

                    pain >

                    But I’ve been using ssh -> nano to make all my box changes so I didn’t have to reinstall every change and it’s just really cumbersome.

                    Not gonna lie, it feels like I’m coding in the 90s whenever I use nano. You can’t even select text. Every character has to be deleted one by one. It’s faster than constantly recompiling and re-installing on Ubuntu 18.04. But slower than just about anything else. 😂

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

                      @Lonk Are you already using the hotfix script? https://git.cloudron.io/cloudron/box/#development This is what we use for development.

                      LonkleL 1 Reply Last reply
                      1
                      • girishG girish

                        @Lonk Are you already using the hotfix script? https://git.cloudron.io/cloudron/box/#development This is what we use for development.

                        LonkleL Offline
                        LonkleL Offline
                        Lonkle
                        wrote on last edited by
                        #11

                        @girish said in Cloudron as an app inside of Cloudron:

                        @Lonk Are you already using the hotfix script? https://git.cloudron.io/cloudron/box/#development This is what we use for development.

                        This looks like a godsend. I just have to figure out how to format hot fixes and use this CLI tool to apply them to my virtual machine Cloudron. Thank you for showing me this!

                        Also, I saw in that description in your link: “front-end code click here” and it was 404 😭.

                        But using this hot fix tool I might be able to contribute to dashboard easier (like the drop down box to choose the vpnclient to connect to).

                        girishG 1 Reply Last reply
                        0
                        • LonkleL Lonkle

                          @girish said in Cloudron as an app inside of Cloudron:

                          @Lonk Are you already using the hotfix script? https://git.cloudron.io/cloudron/box/#development This is what we use for development.

                          This looks like a godsend. I just have to figure out how to format hot fixes and use this CLI tool to apply them to my virtual machine Cloudron. Thank you for showing me this!

                          Also, I saw in that description in your link: “front-end code click here” and it was 404 😭.

                          But using this hot fix tool I might be able to contribute to dashboard easier (like the drop down box to choose the vpnclient to connect to).

                          girishG Offline
                          girishG Offline
                          girish
                          Staff
                          wrote on last edited by
                          #12

                          @Lonk said in Cloudron as an app inside of Cloudron:

                          Also, I saw in that description in your link: “front-end code click here” and it was 404 .

                          Are you logged into GitLab? I feel like I have solved this permission/visibility issue in GitLab like a million times. I am not sure what GitLab is doing but that setting gets reset of something after each update 😕

                          LonkleL 2 Replies Last reply
                          0
                          • girishG girish

                            @Lonk said in Cloudron as an app inside of Cloudron:

                            Also, I saw in that description in your link: “front-end code click here” and it was 404 .

                            Are you logged into GitLab? I feel like I have solved this permission/visibility issue in GitLab like a million times. I am not sure what GitLab is doing but that setting gets reset of something after each update 😕

                            LonkleL Offline
                            LonkleL Offline
                            Lonkle
                            wrote on last edited by
                            #13

                            @girish I clicked on the "click here" link which lead to this:

                            https://git.cloudron.io/cloudron/dashboard

                            It asked me to log in, which I did (as Lonk), and it lead to a 404. So I tried clicking it again thinking it could have been a login redirection issue and I'm fully logged in now, and it still says 404.

                            1 Reply Last reply
                            0
                            • robiR Offline
                              robiR Offline
                              robi
                              wrote on last edited by
                              #14

                              If you want to try and get this going, here are a few rough steps.

                              • Install sysbox from Nestybox and validate you can spin up containers with sysbox-runc
                              • Get a small Ubuntu 18.04 image running inside
                              • Validate networking in and out for basic services
                              • Install the inner Cloudron and see how to set up DNS and ports so it works for the inner and outter Cloudrons separately.
                              • Document the kinks

                              Once this is running, you'll have a base container system image which is special and can run as an App.

                              It may be useful to set up guacamole as remote desktop access.

                              Feel free to chime in and add to my list.

                              Conscious tech

                              LonkleL 1 Reply Last reply
                              0
                              • robiR robi

                                If you want to try and get this going, here are a few rough steps.

                                • Install sysbox from Nestybox and validate you can spin up containers with sysbox-runc
                                • Get a small Ubuntu 18.04 image running inside
                                • Validate networking in and out for basic services
                                • Install the inner Cloudron and see how to set up DNS and ports so it works for the inner and outter Cloudrons separately.
                                • Document the kinks

                                Once this is running, you'll have a base container system image which is special and can run as an App.

                                It may be useful to set up guacamole as remote desktop access.

                                Feel free to chime in and add to my list.

                                LonkleL Offline
                                LonkleL Offline
                                Lonkle
                                wrote on last edited by
                                #15

                                @robi I plan on contributing more here so I'll try both yours and @girish's hot fix dev methods and see which one works better for me.

                                I genuinely appreciate you taking the time to put those steps together for me. Thank you! ☺️

                                1 Reply Last reply
                                0
                                • girishG girish

                                  @Lonk said in Cloudron as an app inside of Cloudron:

                                  Also, I saw in that description in your link: “front-end code click here” and it was 404 .

                                  Are you logged into GitLab? I feel like I have solved this permission/visibility issue in GitLab like a million times. I am not sure what GitLab is doing but that setting gets reset of something after each update 😕

                                  LonkleL Offline
                                  LonkleL Offline
                                  Lonkle
                                  wrote on last edited by
                                  #16

                                  @girish cloudron machine says it's not an available command. Though it's documented to be so in the npm main database. https://www.npmjs.com/package/cloudron

                                  Do I need to load on top of my already existing cloudron cli tool?

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

                                    @Lonk It's a separate repo and a separate tool - https://git.cloudron.io/cloudron/cloudron-machine . If you clone and do "npm link . ", it is available in your PATH.

                                    LonkleL 1 Reply Last reply
                                    0
                                    • girishG girish

                                      @Lonk It's a separate repo and a separate tool - https://git.cloudron.io/cloudron/cloudron-machine . If you clone and do "npm link . ", it is available in your PATH.

                                      LonkleL Offline
                                      LonkleL Offline
                                      Lonkle
                                      wrote on last edited by Lonkle
                                      #18

                                      @girish said in Cloudron as an app inside of Cloudron:

                                      @Lonk It's a separate repo and a separate tool - https://git.cloudron.io/cloudron/cloudron-machine . If you clone and do "npm link . ", it is available in your PATH.

                                      Joel$ cloudron-machine
                                      Usage:  [options] [command]
                                      
                                      Options:
                                        -V, --version            output the version number
                                        -h, --help               output usage information
                                      
                                      Commands:
                                        hotfix [options]         Hotfix Cloudron with latest code
                                        ssh [options] [cmds...]  Get a remote SSH connection
                                      

                                      Ah, I understand, you should fix that in the npm repository description cause I was so confused for a second. Thank you very much for taking the time to write out instructions in how to get the actual tool. ☺️

                                      But both the commands hotfix and ssh error out instead of displaying manuals. Are there manuals to those commands? Or maybe an example of a hotfix option and ssh option (using fake data of course)?

                                      LonkleL 1 Reply Last reply
                                      0
                                      • LonkleL Lonkle

                                        @girish said in Cloudron as an app inside of Cloudron:

                                        @Lonk It's a separate repo and a separate tool - https://git.cloudron.io/cloudron/cloudron-machine . If you clone and do "npm link . ", it is available in your PATH.

                                        Joel$ cloudron-machine
                                        Usage:  [options] [command]
                                        
                                        Options:
                                          -V, --version            output the version number
                                          -h, --help               output usage information
                                        
                                        Commands:
                                          hotfix [options]         Hotfix Cloudron with latest code
                                          ssh [options] [cmds...]  Get a remote SSH connection
                                        

                                        Ah, I understand, you should fix that in the npm repository description cause I was so confused for a second. Thank you very much for taking the time to write out instructions in how to get the actual tool. ☺️

                                        But both the commands hotfix and ssh error out instead of displaying manuals. Are there manuals to those commands? Or maybe an example of a hotfix option and ssh option (using fake data of course)?

                                        LonkleL Offline
                                        LonkleL Offline
                                        Lonkle
                                        wrote on last edited by
                                        #19

                                        @girish Like your cloudron build --no-push hot fix that you've already uploaded to master, how could I apply that with this tool?

                                        1 Reply Last reply
                                        0
                                        • LonkleL Offline
                                          LonkleL Offline
                                          Lonkle
                                          wrote on last edited by
                                          #20

                                          I think I get it actually. I supply it the whole cloudron installation with all the hotfixes at once and it overwrites the appropriate files with the ssh commands I give it. Still figuring out the syntax though.

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