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. IT-Tools

IT-Tools

Scheduled Pinned Locked Moved Solved App Wishlist
22 Posts 4 Posters 3.2k 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.
  • timconsidineT Offline
    timconsidineT Offline
    timconsidine
    App Dev
    wrote on last edited by
    #7

    Looks nice and clean
    Will try to take it for a run later

    1 Reply Last reply
    1
    • KubernetesK Kubernetes

      It's done. The repository with the package can be found in Github (I was not able to create a new project in Cloudron Gitlab)

      @staff Feel free to take the package over.

      As this is my first time that I did a package (and also fork a project in general) I would be glad to get some feedback if I did it the right way, or if I did anything wrong.
      Thanks 🙂

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

      @Kubernetes said in IT-Tools:

      I was not able to create a new project in Cloudron Gitlab

      BTW, @nebulon or @girish or @????? can enable creating projects in Cloudron's Git
      Not enabled as a default but can be on request.
      But regular gitlab works fine (and maybe acts to spread the cloudron name a little bit)

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

        @Kubernetes did you register on our gitlab? If so, what is the user id?

        KubernetesK 1 Reply Last reply
        0
        • girishG girish

          @Kubernetes did you register on our gitlab? If so, what is the user id?

          KubernetesK Offline
          KubernetesK Offline
          Kubernetes
          App Dev
          wrote on last edited by
          #10

          @girish It is User Id 5010

          girishG 1 Reply Last reply
          0
          • KubernetesK Kubernetes

            @girish It is User Id 5010

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

            @Kubernetes I have bumped your repo count.

            KubernetesK 1 Reply Last reply
            1
            • girishG girish

              @Kubernetes I have bumped your repo count.

              KubernetesK Offline
              KubernetesK Offline
              Kubernetes
              App Dev
              wrote on last edited by
              #12

              @girish Great, I will move the package projects from Github to Cloudron gitlab. Thank you.

              1 Reply Last reply
              2
              • KubernetesK Offline
                KubernetesK Offline
                Kubernetes
                App Dev
                wrote on last edited by
                #13

                I have updated the Dockerfile to remove unrequired software and use of multi stage for build and production.

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

                  @Kubernetes actually, it would be great if multi stage is removed as well. There is nothing wrong with it, but that we have 100s of apps already which don't use this and it's easier for us if things are consistent and helps us in terms of packaging time.

                  1 Reply Last reply
                  1
                  • KubernetesK Offline
                    KubernetesK Offline
                    Kubernetes
                    App Dev
                    wrote on last edited by Kubernetes
                    #15

                    @girish Not sure if I understand it right. Is the way to create the production build by multi staging wrong, or is something missing to remove the multi stage from production build? My assumption was that creating a multi staging build would benefit in smaller production image size? So you are asking if I could avoid multi staging in Dockerfile and build everyting directly on top of the Cloudron Base Image, right?

                    timconsidineT 1 Reply Last reply
                    1
                    • KubernetesK Kubernetes

                      @girish Not sure if I understand it right. Is the way to create the production build by multi staging wrong, or is something missing to remove the multi stage from production build? My assumption was that creating a multi staging build would benefit in smaller production image size? So you are asking if I could avoid multi staging in Dockerfile and build everyting directly on top of the Cloudron Base Image, right?

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

                      @Kubernetes sorry, my fault for suggesting multi-stage builds.
                      It was only because of the large image size.
                      But if you have been able to strip out some stuff, maybe that is just as effective.
                      I wasn't aware that Cloudron prefers single build images.

                      1 Reply Last reply
                      1
                      • KubernetesK Offline
                        KubernetesK Offline
                        Kubernetes
                        App Dev
                        wrote on last edited by
                        #17

                        @timconsidine no problem, it should be mentioned in the Cloudron Package Documentation. I learned a lot by using multi stage, so now I can roll back to single stage 🎯

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

                          This is published now. Repo is at https://git.cloudron.io/cloudron/it-tools-app/

                          KubernetesK 1 Reply Last reply
                          3
                          • girishG girish

                            This is published now. Repo is at https://git.cloudron.io/cloudron/it-tools-app/

                            KubernetesK Offline
                            KubernetesK Offline
                            Kubernetes
                            App Dev
                            wrote on last edited by Kubernetes
                            #19

                            @girish Great news, thanks for picking this up and publishing!

                            I see there are many differences to the initial work I have done and I will review them. But could you share with me some insights what I could have done better already in the first step, please? This may help to reduce overhead and/or work on your side for future packages?

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

                              @Kubernetes yes, sorry, infact, I was just writing down the notes before you commented already.Obviously, we got inspired to get this package out because you showed how it can be done, so please keep going 🙂

                              • It was cloning git repo . This means that the entire git history is in the docker image
                              • It was not pinning the app to a specific version/release. We want to keep the docker builds to be reproducible (as much as we can). So, we pin the app to specific versions/releases.
                              • It had multi-stage , which was removed.
                              • Initially @vladimir-d also built the package from source but I found that the upstream project already provides release tarballs, so I switched it to just use that. In the long run, this means we don't need to track how the project is built (especially, people keep switching between npm/yarn/pnpm and all sorts of things these days 🙂 ).
                              • http-server vs nginx - this doesn't matter. I think @vladimir-d just chose nginx because it's used in other projects.
                              • tests has the selenium tests. This is required for us to publish apps to the store. Let me know if you need any help running these. But can see that it installs an app and checks if it is running etc.
                              KubernetesK 1 Reply Last reply
                              4
                              • girishG girish marked this topic as a question on
                              • girishG girish has marked this topic as solved on
                              • girishG girish

                                @Kubernetes yes, sorry, infact, I was just writing down the notes before you commented already.Obviously, we got inspired to get this package out because you showed how it can be done, so please keep going 🙂

                                • It was cloning git repo . This means that the entire git history is in the docker image
                                • It was not pinning the app to a specific version/release. We want to keep the docker builds to be reproducible (as much as we can). So, we pin the app to specific versions/releases.
                                • It had multi-stage , which was removed.
                                • Initially @vladimir-d also built the package from source but I found that the upstream project already provides release tarballs, so I switched it to just use that. In the long run, this means we don't need to track how the project is built (especially, people keep switching between npm/yarn/pnpm and all sorts of things these days 🙂 ).
                                • http-server vs nginx - this doesn't matter. I think @vladimir-d just chose nginx because it's used in other projects.
                                • tests has the selenium tests. This is required for us to publish apps to the store. Let me know if you need any help running these. But can see that it installs an app and checks if it is running etc.
                                KubernetesK Offline
                                KubernetesK Offline
                                Kubernetes
                                App Dev
                                wrote on last edited by
                                #21

                                @girish Perfect, thanks for that feedback. This helps me to improve 🙂

                                1 Reply Last reply
                                2
                                • scookeS Offline
                                  scookeS Offline
                                  scooke
                                  wrote on last edited by
                                  #22

                                  WOW! I'm going to install this RIGHT NOW! Thank you so much.

                                  A life lived in fear is a life half-lived

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