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.
  • 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