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. Code Server (Vs code online)

Code Server (Vs code online)

Scheduled Pinned Locked Moved App Wishlist
91 Posts 19 Posters 26.8k Views 19 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.
    • ? A Former User

      @murgero I had an issue where it was preventing backups but didn’t bother to diagnose it much. I’ll give it another shot and report back

      murgeroM Offline
      murgeroM Offline
      murgero
      App Dev
      wrote on last edited by
      #32

      @atrilahiji If you run the backup cleaner command (see the backup page in the cloudron admin panel) it runs fine after that - though I have backups disabled on my code-server app as I constantly reinstall it for testing different features 🙂

      --
      https://urgero.org
      ~ Professional Nerd. Freelance Programmer. ~

      1 Reply Last reply
      0
      • D dswd

        I have packaged a new app: A Visual Studio Code version that runs in the browser.

        Here is the code: https://git.cloudron.io/dswd/vscode-app

        The app works and already runs on my instance, but there are no tests yet.

        I would like to submit the app to the appstore (for others to test and use) but currently I have a problem with the docker repository. Apparently I can only submit apps that are hosted on the Cloudron repo but I don't know how to push there.

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

        @dswd Is this vs code online ? There are some attempts at https://forum.cloudron.io/topic/1709/code-server-vs-code-online/ but yours looks quite complete as well. I will move this discussion there if they are the same.

        As for appstore submission, currently only only we are able to do it. We changed our model to one where where we pretty much maintain all the app packages. If you have a docker image, then others can clone your repo and then install using cloudron install --image <image>.

        D 2 Replies Last reply
        0
        • girishG girish

          @dswd Is this vs code online ? There are some attempts at https://forum.cloudron.io/topic/1709/code-server-vs-code-online/ but yours looks quite complete as well. I will move this discussion there if they are the same.

          As for appstore submission, currently only only we are able to do it. We changed our model to one where where we pretty much maintain all the app packages. If you have a docker image, then others can clone your repo and then install using cloudron install --image <image>.

          D Offline
          D Offline
          dswd
          wrote on last edited by
          #34

          @girish Yes, its based on code server

          1 Reply Last reply
          0
          • girishG girish

            @dswd Is this vs code online ? There are some attempts at https://forum.cloudron.io/topic/1709/code-server-vs-code-online/ but yours looks quite complete as well. I will move this discussion there if they are the same.

            As for appstore submission, currently only only we are able to do it. We changed our model to one where where we pretty much maintain all the app packages. If you have a docker image, then others can clone your repo and then install using cloudron install --image <image>.

            D Offline
            D Offline
            dswd
            wrote on last edited by
            #35

            @girish Should I move the code back to my repo or should it stay on the cloudron git, or do you want to take over maintenance to make it an official app? How do you do this normally?

            1 Reply Last reply
            0
            • ? Offline
              ? Offline
              A Former User
              wrote on last edited by
              #36

              Does this have any sort of auth built in? Might be worth looking into the proxyAuth addon.

              D 2 Replies Last reply
              1
              • D Offline
                D Offline
                dswd
                wrote on last edited by
                #37

                I have packaged a new app: A Visual Studio Code version that runs in the browser.

                Here is the code: https://git.cloudron.io/dswd/vscode-app

                The app works and already runs on my instance, but there are no tests yet.

                I would like to submit the app to the appstore (for others to test and use) but currently I have a problem with the docker repository. Apparently I can only submit apps that are hosted on the Cloudron repo but I don't know how to push there.

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

                  The posts appear out of order, sorry about that 🙂 For some reason, NodeBB has no way to merge two topics together... Oh well.

                  @dswd said in Code Server (Vs code online):

                  @girish Should I move the code back to my repo or should it stay on the cloudron git, or do you want to take over maintenance to make it an official app? How do you do this normally?

                  It can stay on Cloudron git. I will have a look once I have some time and move/fork it into the cloudron namespace. I will then give you maintainer status in that repo, so you can push directly. Only limitation is that you have to let us know whenever you want to push a new release to appstore. We hope to get this part automated in our CI/CD at some point (though, we are not working on this right now, so no ETA yet).

                  1 Reply Last reply
                  0
                  • murgeroM Offline
                    murgeroM Offline
                    murgero
                    App Dev
                    wrote on last edited by murgero
                    #39

                    I'd like to point out I have a build of this running as well with a bunch of IDEs and SDKs added.

                    @dswd - would we be able to merge our projects together so there is not 2 vastly different builds floating about?

                    --
                    https://urgero.org
                    ~ Professional Nerd. Freelance Programmer. ~

                    D 1 Reply Last reply
                    0
                    • ? A Former User

                      Does this have any sort of auth built in? Might be worth looking into the proxyAuth addon.

                      D Offline
                      D Offline
                      dswd
                      wrote on last edited by
                      #40

                      @atrilahiji said in Code Server (Vs code online):

                      Does this have any sort of auth built in? Might be worth looking into the proxyAuth addon.

                      Yes code server comes with a simple passwort auth. You can disable it and roll your own if you want to. It is not super helpful to integrate it with Cloudron LDAP as all users share one IDE but you can have a single password if you want to.

                      I will have a look into optional proxyAuth, however.

                      1 Reply Last reply
                      1
                      • murgeroM murgero

                        I'd like to point out I have a build of this running as well with a bunch of IDEs and SDKs added.

                        @dswd - would we be able to merge our projects together so there is not 2 vastly different builds floating about?

                        D Offline
                        D Offline
                        dswd
                        wrote on last edited by
                        #41

                        @murgero said in Code Server (Vs code online):

                        @dswd - would we be able to merge our projects together so there is not 2 vastly different builds floating about?

                        I am sorry, I was not aware of your app since it was not on the app store. Otherwise I would have used it and maybe sent a PR.
                        We should compare our approaches and select the best parts of each. Where is your code located?

                        murgeroM 1 Reply Last reply
                        0
                        • D dswd

                          @murgero said in Code Server (Vs code online):

                          @dswd - would we be able to merge our projects together so there is not 2 vastly different builds floating about?

                          I am sorry, I was not aware of your app since it was not on the app store. Otherwise I would have used it and maybe sent a PR.
                          We should compare our approaches and select the best parts of each. Where is your code located?

                          murgeroM Offline
                          murgeroM Offline
                          murgero
                          App Dev
                          wrote on last edited by
                          #42

                          @dswd

                          Mine is here: https://github.com/mitchellurgero/cloudron-vscode-package

                          I plan to move it to Cloudron's GitLab once they approve it for testing.

                          --
                          https://urgero.org
                          ~ Professional Nerd. Freelance Programmer. ~

                          D 1 Reply Last reply
                          0
                          • ? A Former User

                            Does this have any sort of auth built in? Might be worth looking into the proxyAuth addon.

                            D Offline
                            D Offline
                            dswd
                            wrote on last edited by
                            #43

                            @atrilahiji
                            I added optional proxyAuth to the image. If SSO is enabled, the password in the vscode app is disabled.

                            1 Reply Last reply
                            1
                            • murgeroM murgero

                              @dswd

                              Mine is here: https://github.com/mitchellurgero/cloudron-vscode-package

                              I plan to move it to Cloudron's GitLab once they approve it for testing.

                              D Offline
                              D Offline
                              dswd
                              wrote on last edited by
                              #44

                              @murgero
                              I checked your image. It seems to install lots of packages that are not needed for code server (e.g. Apache and PHP). Also it adds some plugins that I don't think are required (sendmail, mysql and redis).
                              I suggest using my image as base because it seems more minimal. Can you test it and check if there is any functionality missing that I could add?

                              murgeroM 1 Reply Last reply
                              0
                              • D dswd

                                @murgero
                                I checked your image. It seems to install lots of packages that are not needed for code server (e.g. Apache and PHP). Also it adds some plugins that I don't think are required (sendmail, mysql and redis).
                                I suggest using my image as base because it seems more minimal. Can you test it and check if there is any functionality missing that I could add?

                                murgeroM Offline
                                murgeroM Offline
                                murgero
                                App Dev
                                wrote on last edited by murgero
                                #45

                                @dswd I can respect the opinion, but I use the addons mentioned as well as the adding different IDEs/SDKs (PS, PHP, Go, Rust, R-Lang, etc etc etc ) as users can't install linux packages on an app once it's installed. I also have build-tools to compile code, and I don't think apache is still there (I ended up choosing to use code-servers built-in proxy instead. So if apache is still being installed I will probably remove it in the future. Sendmail is used for testing and sending email from compiled apps, redis is kept for apps that would require it, and mysql (and other DBs) are thrown in because compiled apps may need a test DB to connect to.

                                It's kinda bloated when you first look at it, but users cannot modify what linux packages are installed and they cannot modify what cloudron addons are installed once code-server is installed.

                                That said, yes, technically speaking code-server doesn't need all this, but it's barely an IDE without the ability to actually use the code you write in it. So I included all the popular ones.

                                Minimal in this case I don't believe works. Sure yours takes up less space but my package includes more features. In this case, I think keeping our apps separated for now is the best course of action.

                                This is not to say I don't like what you did. There is something to be said about a minimal-first approach to building an app. I think - let's keep building our packages separate and we can talk to @girish / @nebulon about how to add both (potentially) to the app store. Maybe just labeled differently so the admins can choose how they like to build.

                                And if we do go that route I would like to work together to make the login process the same on both apps - to help make it seamless to the end-users.

                                What do you think? I am also open to suggestions.

                                Edit: I hope none of this comes off as negative towards your package. That is not my intent. It's clear you and I both have a want/need/passion for code-server to be on the store. I am just genuinely excited to have this conversation with someone other than myself.

                                --
                                https://urgero.org
                                ~ Professional Nerd. Freelance Programmer. ~

                                D 2 Replies Last reply
                                1
                                • murgeroM murgero

                                  @dswd I can respect the opinion, but I use the addons mentioned as well as the adding different IDEs/SDKs (PS, PHP, Go, Rust, R-Lang, etc etc etc ) as users can't install linux packages on an app once it's installed. I also have build-tools to compile code, and I don't think apache is still there (I ended up choosing to use code-servers built-in proxy instead. So if apache is still being installed I will probably remove it in the future. Sendmail is used for testing and sending email from compiled apps, redis is kept for apps that would require it, and mysql (and other DBs) are thrown in because compiled apps may need a test DB to connect to.

                                  It's kinda bloated when you first look at it, but users cannot modify what linux packages are installed and they cannot modify what cloudron addons are installed once code-server is installed.

                                  That said, yes, technically speaking code-server doesn't need all this, but it's barely an IDE without the ability to actually use the code you write in it. So I included all the popular ones.

                                  Minimal in this case I don't believe works. Sure yours takes up less space but my package includes more features. In this case, I think keeping our apps separated for now is the best course of action.

                                  This is not to say I don't like what you did. There is something to be said about a minimal-first approach to building an app. I think - let's keep building our packages separate and we can talk to @girish / @nebulon about how to add both (potentially) to the app store. Maybe just labeled differently so the admins can choose how they like to build.

                                  And if we do go that route I would like to work together to make the login process the same on both apps - to help make it seamless to the end-users.

                                  What do you think? I am also open to suggestions.

                                  Edit: I hope none of this comes off as negative towards your package. That is not my intent. It's clear you and I both have a want/need/passion for code-server to be on the store. I am just genuinely excited to have this conversation with someone other than myself.

                                  D Offline
                                  D Offline
                                  dswd
                                  wrote on last edited by
                                  #46

                                  @murgero
                                  I can see your point. You are providing those dependencies to users just in case they need them (and because you need them). I agree, not being able to install packages is kind of a problem. However, a lot of software (e.g. nodejs, rust and php) can be installed into the user space.
                                  I decided against putting in more dependencies because I don't want to monitor so many dependencies for security issues and push new releases every other day.
                                  I too think it would be best to keep the versions separate as you require those dependencies.
                                  Oh and no, your comment does not come off as negative (hope mine doesn't either). We just have different approaches.

                                  1 Reply Last reply
                                  0
                                  • murgeroM murgero

                                    @dswd I can respect the opinion, but I use the addons mentioned as well as the adding different IDEs/SDKs (PS, PHP, Go, Rust, R-Lang, etc etc etc ) as users can't install linux packages on an app once it's installed. I also have build-tools to compile code, and I don't think apache is still there (I ended up choosing to use code-servers built-in proxy instead. So if apache is still being installed I will probably remove it in the future. Sendmail is used for testing and sending email from compiled apps, redis is kept for apps that would require it, and mysql (and other DBs) are thrown in because compiled apps may need a test DB to connect to.

                                    It's kinda bloated when you first look at it, but users cannot modify what linux packages are installed and they cannot modify what cloudron addons are installed once code-server is installed.

                                    That said, yes, technically speaking code-server doesn't need all this, but it's barely an IDE without the ability to actually use the code you write in it. So I included all the popular ones.

                                    Minimal in this case I don't believe works. Sure yours takes up less space but my package includes more features. In this case, I think keeping our apps separated for now is the best course of action.

                                    This is not to say I don't like what you did. There is something to be said about a minimal-first approach to building an app. I think - let's keep building our packages separate and we can talk to @girish / @nebulon about how to add both (potentially) to the app store. Maybe just labeled differently so the admins can choose how they like to build.

                                    And if we do go that route I would like to work together to make the login process the same on both apps - to help make it seamless to the end-users.

                                    What do you think? I am also open to suggestions.

                                    Edit: I hope none of this comes off as negative towards your package. That is not my intent. It's clear you and I both have a want/need/passion for code-server to be on the store. I am just genuinely excited to have this conversation with someone other than myself.

                                    D Offline
                                    D Offline
                                    dswd
                                    wrote on last edited by
                                    #47

                                    @murgero
                                    I think I found a way to get around the read-only root and install additional software. I added a script that will fetch and install a minimal Linux and chroot into it: chroot-alpine.
                                    Inside it you can install additional software as you like. You can also use the same method to run Ubuntu instead of Alpine Linux but that will use much more storage.

                                    1 Reply Last reply
                                    2
                                    • robiR Offline
                                      robiR Offline
                                      robi
                                      wrote on last edited by
                                      #48

                                      The other option here is to use something like Sysbox to enable DockerInDocker (DinD) type functionality, which can then separate and isolate the addon services needed for dev/test in a nested way, keeping the app lean.

                                      Conscious tech

                                      D 1 Reply Last reply
                                      1
                                      • robiR robi

                                        The other option here is to use something like Sysbox to enable DockerInDocker (DinD) type functionality, which can then separate and isolate the addon services needed for dev/test in a nested way, keeping the app lean.

                                        D Offline
                                        D Offline
                                        dswd
                                        wrote on last edited by
                                        #49

                                        @robi Do you have any experience with docker-in-docker on Cloudron?

                                        1 Reply Last reply
                                        0
                                        • infogulchI Offline
                                          infogulchI Offline
                                          infogulch
                                          wrote on last edited by infogulch
                                          #50

                                          I think we should collaborate on a minimal base docker image that only contains the installation of code-server, and then design a solution to allow adding dev dependencies on top of it as required by each end-user.

                                          Say, first lift all the code-server-specific improvements from murgero's image into dswd's image and publish it at cloudron/code-server-base. Then murgero's image starts with FROM cloudron/code-server-base and adds their unique dev dependencies and publishes it separately. The key will be improve the image build, installation, and updating process to be as smooth as the usual app install process. (The cli is great for cloudron development, but kinda cumbersome for ongoing maintenance.)

                                          Based on the way code-server is designed I doubt it could ever be a multi-user app. There is some discussion on code-server multi-tenancy on Setting up code-server for multi-tenancy #792. In summary, it doesn't seem viable and the discussion quickly shifts towards how to set up and manage a container-per-user design, which is an area that I think Cloudron could add a lot of value.

                                          Perhaps both of these problems could be solved by creating a custom app that uses the cloudron api to expose an easier way to spin up code-server apps for users on demand, using the images designated by the admin.

                                          code-server is a good use-case for proxyAuth. I think it would be neat if we could forward some path to a port inside the container to allow users to hit a dev web server running inside.

                                          D murgeroM 2 Replies Last reply
                                          0
                                          • infogulchI infogulch

                                            I think we should collaborate on a minimal base docker image that only contains the installation of code-server, and then design a solution to allow adding dev dependencies on top of it as required by each end-user.

                                            Say, first lift all the code-server-specific improvements from murgero's image into dswd's image and publish it at cloudron/code-server-base. Then murgero's image starts with FROM cloudron/code-server-base and adds their unique dev dependencies and publishes it separately. The key will be improve the image build, installation, and updating process to be as smooth as the usual app install process. (The cli is great for cloudron development, but kinda cumbersome for ongoing maintenance.)

                                            Based on the way code-server is designed I doubt it could ever be a multi-user app. There is some discussion on code-server multi-tenancy on Setting up code-server for multi-tenancy #792. In summary, it doesn't seem viable and the discussion quickly shifts towards how to set up and manage a container-per-user design, which is an area that I think Cloudron could add a lot of value.

                                            Perhaps both of these problems could be solved by creating a custom app that uses the cloudron api to expose an easier way to spin up code-server apps for users on demand, using the images designated by the admin.

                                            code-server is a good use-case for proxyAuth. I think it would be neat if we could forward some path to a port inside the container to allow users to hit a dev web server running inside.

                                            D Offline
                                            D Offline
                                            dswd
                                            wrote on last edited by
                                            #51

                                            @infogulch
                                            My current code already uses proxyAuth and adds TCP and UDP ports for dev that you can freely assign.
                                            Please tell me what you think is missing and I will add it.

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