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

Offical apps | Community apps | Demo | Docs | Install
  1. Cloudron Forum
  2. Feature Requests
  3. Storage limits per-app
Everything related to the PHP CVE and eMudhra Cert Please read our Security issue thread - PHP and eMudhra cert compromise.

Storage limits per-app

Scheduled Pinned Locked Moved Feature Requests
25 Posts 9 Posters 14.1k Views 9 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.
  • murgeroM murgero

    @atrilahiji Interesting request and interesting use case - I think it's a neat idea but only for certain apps (mail, lamp, surfer, nextcloud (especially!), and social networks like Mastodon and pixelfed)

    Not sure how the implementation would be though

    ?
    ?
    A Former User
    wrote on last edited by
    #6

    @murgero Exactly, I was thinking for stuff like Nextcloud or Moodle specifically.

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

      If anyone knows how this can be done on linux, I am open to investigating this. As in how does mount a storage directory into a docker container that has a specific size? I can only think of some (sparse) file based loopback filesystem. I don't like that approach and would prefer some other alternative. I haven't looked into recent developments in linux quota system.

      M MooCloud_MattM 2 Replies Last reply
      0
      • girishG girish

        If anyone knows how this can be done on linux, I am open to investigating this. As in how does mount a storage directory into a docker container that has a specific size? I can only think of some (sparse) file based loopback filesystem. I don't like that approach and would prefer some other alternative. I haven't looked into recent developments in linux quota system.

        M
        M
        msbt
        App Dev Super Fan
        wrote on last edited by
        #8

        @girish what about https://docs.docker.com/engine/reference/commandline/run/#set-storage-driver-options-per-container (from https://stackoverflow.com/questions/38542426/docker-container-specific-disk-quota)

        Happy Hosting & Web Development

        girishG 1 Reply Last reply
        1
        • robiR
          robiR
          robi
          wrote on last edited by
          #9

          If storage for Apps was integrated with container attached storage from MayaData.com, this would be an easier option.

          This will also help Apps be more distributed and clustered, among other benefits.

          Frequency tech & energy mastery

          MooCloud_MattM 1 Reply Last reply
          0
          • girishG girish

            If anyone knows how this can be done on linux, I am open to investigating this. As in how does mount a storage directory into a docker container that has a specific size? I can only think of some (sparse) file based loopback filesystem. I don't like that approach and would prefer some other alternative. I haven't looked into recent developments in linux quota system.

            MooCloud_MattM
            MooCloud_MattM
            MooCloud_Matt
            wrote on last edited by
            #10

            @girish
            it can be done with LVM, btrfs or ZFS.
            And their relative Docker driver, can be an option with an installation on ubuntu + one of those FS.

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

            1 Reply Last reply
            0
            • robiR robi

              If storage for Apps was integrated with container attached storage from MayaData.com, this would be an easier option.

              This will also help Apps be more distributed and clustered, among other benefits.

              MooCloud_MattM
              MooCloud_MattM
              MooCloud_Matt
              wrote on last edited by
              #11

              @robi said in Storage limits per-app:

              MayaData.com

              I think they use OpenEBS, and as all the distributed storage solutions are complicated to set up, we use Ceph and need a dedicated port on the cluster server for the sync job, not as a requirement but as a need for reasonable performance to be able to use there features.

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

              robiR 1 Reply Last reply
              0
              • M msbt

                @girish what about https://docs.docker.com/engine/reference/commandline/run/#set-storage-driver-options-per-container (from https://stackoverflow.com/questions/38542426/docker-container-specific-disk-quota)

                girishG
                girishG
                girish
                Staff
                wrote on last edited by
                #12

                @msbt Interesting link, thanks. I wonder if it works for volumes also. It says it depends on the "volume plugin". Have to investigate. On Cloudron, the data directory is just a normal volume and doesn't use any plugin and it's unclear if that standard thing supports storage-opt.

                1 Reply Last reply
                0
                • MooCloud_MattM MooCloud_Matt

                  @robi said in Storage limits per-app:

                  MayaData.com

                  I think they use OpenEBS, and as all the distributed storage solutions are complicated to set up, we use Ceph and need a dedicated port on the cluster server for the sync job, not as a requirement but as a need for reasonable performance to be able to use there features.

                  robiR
                  robiR
                  robi
                  wrote on last edited by
                  #13

                  @moocloud_matt said in Storage limits per-app:

                  OpenEBS

                  Yes, but there is a more advanced version at MayaData.

                  @staff and I have spoken with them before.

                  Frequency tech & energy mastery

                  robiR 1 Reply Last reply
                  0
                  • robiR robi referenced this topic on
                  • girishG girish referenced this topic on
                  • AizatA
                    AizatA
                    Aizat
                    wrote on last edited by
                    #14

                    Any news about this? This is very useful especially if we're giving access to our clients who may overuse the storage in some of the apps on Cloudron.

                    girishG 1 Reply Last reply
                    3
                    • AizatA Aizat

                      Any news about this? This is very useful especially if we're giving access to our clients who may overuse the storage in some of the apps on Cloudron.

                      girishG
                      girishG
                      girish
                      Staff
                      wrote on last edited by
                      #15

                      @Aizat Still looking for suggestions to my comment https://forum.cloudron.io/topic/5103/storage-limits-per-app/7

                      1 Reply Last reply
                      0
                      • girishG girish referenced this topic on
                      • girishG
                        girishG
                        girish
                        Staff
                        wrote on last edited by
                        #16

                        Maybe we have use usrquota - https://www.digitalocean.com/community/tutorials/how-to-set-filesystem-quotas-on-ubuntu-18-04 . I guess this involves creating a user per app.

                        XFS has pquota - https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/managing_file_systems/assembly_limiting-storage-space-usage-on-xfs-with-quotas_managing-file-systems . EXT4 has prjquota - https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/managing_file_systems/assembly_limiting-storage-space-usage-on-ext4-with-quotas_managing-file-systems

                        Also, found that there is a --storage-size when using XFS in Docker - https://docs.docker.com/engine/reference/commandline/run/#set-storage-driver-options-per-container

                        1 Reply Last reply
                        1
                        • robiR robi

                          @moocloud_matt said in Storage limits per-app:

                          OpenEBS

                          Yes, but there is a more advanced version at MayaData.

                          @staff and I have spoken with them before.

                          robiR
                          robiR
                          robi
                          wrote on last edited by
                          #17

                          This was also addressed in OpenEBS - https://github.com/openebs/dynamic-localpv-provisioner/issues/13

                          Frequency tech & energy mastery

                          girishG 1 Reply Last reply
                          0
                          • robiR robi

                            This was also addressed in OpenEBS - https://github.com/openebs/dynamic-localpv-provisioner/issues/13

                            girishG
                            girishG
                            girish
                            Staff
                            wrote on last edited by
                            #18

                            @robi Nice find, looks like they implemented this as XFS only. Most VPS providers use EXT4 by default afaik.

                            robiR 1 Reply Last reply
                            0
                            • girishG girish

                              @robi Nice find, looks like they implemented this as XFS only. Most VPS providers use EXT4 by default afaik.

                              robiR
                              robiR
                              robi
                              wrote on last edited by
                              #19

                              @girish It does not matter that VPS providers use as you control what happens inside containers.

                              If you choose to attach container volumes they can be XFS layers with all the nice tools XFS comes with, which EXT4 lacks.

                              Similarly for attaching external volumes of additional space apart from the default FS the OS is installed on.

                              Frequency tech & energy mastery

                              girishG 1 Reply Last reply
                              0
                              • robiR robi

                                @girish It does not matter that VPS providers use as you control what happens inside containers.

                                If you choose to attach container volumes they can be XFS layers with all the nice tools XFS comes with, which EXT4 lacks.

                                Similarly for attaching external volumes of additional space apart from the default FS the OS is installed on.

                                girishG
                                girishG
                                girish
                                Staff
                                wrote on last edited by
                                #20

                                @robi the volumes can be XFS, but it requires a backing device. On a standard VPS, this means that we have to create a (big enough) file on EXT4 file system and then format it as XFS. This setup has the usual issues of loopback devices - what size this initial file should be, how to resize it live to increase/decrease storage etc. Not sure how well this performs either.

                                robiR AizatA 2 Replies Last reply
                                0
                                • girishG girish

                                  @robi the volumes can be XFS, but it requires a backing device. On a standard VPS, this means that we have to create a (big enough) file on EXT4 file system and then format it as XFS. This setup has the usual issues of loopback devices - what size this initial file should be, how to resize it live to increase/decrease storage etc. Not sure how well this performs either.

                                  robiR
                                  robiR
                                  robi
                                  wrote on last edited by
                                  #21

                                  @girish yep, or do a little parted scripting first to have a device backed partition avoiding loopback issues for a more static setup..

                                  wanna make changes? restore from remote backup.

                                  For a more dynamic setup integrate OpenEBS/MayaData so you can keep attaching additional extent layers or do virtual migrations to different sized container attached storage mounts.

                                  Frequency tech & energy mastery

                                  1 Reply Last reply
                                  0
                                  • girishG girish referenced this topic on
                                  • girishG girish referenced this topic on
                                  • girishG girish

                                    @robi the volumes can be XFS, but it requires a backing device. On a standard VPS, this means that we have to create a (big enough) file on EXT4 file system and then format it as XFS. This setup has the usual issues of loopback devices - what size this initial file should be, how to resize it live to increase/decrease storage etc. Not sure how well this performs either.

                                    AizatA
                                    AizatA
                                    Aizat
                                    wrote on last edited by
                                    #22

                                    @girish Hi, is there any news about the storage limits per-app implementation?

                                    girishG 1 Reply Last reply
                                    0
                                    • AizatA Aizat

                                      @girish Hi, is there any news about the storage limits per-app implementation?

                                      girishG
                                      girishG
                                      girish
                                      Staff
                                      wrote on last edited by
                                      #23

                                      @Aizat No plans yet. But as a workaround, you can always do this:

                                      • Setup a block storage of appropriate size
                                      • Then, add it as Cloudron Volume
                                      • Move app's data directory into the Volume

                                      That way, the app cannot use more data than the volume itself. This does not cover databasize size which is stored outside the volume.

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

                                        Atleast, postgres does not have a way to limit db size - https://stackoverflow.com/questions/37822195/restrict-database-size

                                        1 Reply Last reply
                                        1
                                        • jamesJ
                                          jamesJ
                                          james
                                          Staff
                                          wrote on last edited by
                                          #25

                                          Hello Everyone

                                          We have added a guide documentation for Per-App storage limit.
                                          If there are questions about this guide, or you have feedback on how to improve it further, please let me know.

                                          1 Reply Last reply
                                          4

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          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