Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content

App Packaging & Development

App package development & help

249 Topics 2.3k Posts

Subcategories


  • Looking to collaborate? Post here if you need help or willing to offer help.

    33 Topics
    252 Posts
    D

    Hi everyone,

    I need help with the following tasks, specifically for use within Cloudron:

    Packaging a React App:

    I need assistance in setting up a React app to connect with Directus hosted on Cloudron.

    If possible, I’d like a detailed SOP (Standard Operating Procedure) to follow for future setups.

    Setting Up a Node.js or Next.js App with React:

    I want to create a new MySQL database for this app, hosted on Cloudron, and need guidance on setting up and working with this database.

    Again, having an SOP for future reference would be highly appreciated.

    I’m willing to pay for these services or would be grateful if someone could kindly share their expertise and the required SOPs.

    Thanks in advance!

  • 0 Votes
    5 Posts
    468 Views
    d19dotcaD

    @mehdi Yes I saw that part, that's where I got the 1048576000 from and it got me digging into it further. I guess then the display is using binary in Cloudron UI so the value it's set to isn't quite 1 GB in binary so it shows 1000 MB. Interesting. That seems wrong to me though, I assume the value in that manifest should actually be 1073741824 to match others that are 1 GB. Right?

    Example: 1073741824 is what's set for Bitwarden: https://git.cloudron.io/cloudron/bitwardenrs-app/-/blob/master/CloudronManifest.json#L17

    Am I right in assuming then from this that the Cloudron UI basically shows in Decimal, and not Binary? But ideally the Manifest should be in Binary still so the UI shows the more expected typical numbers and increase segments, right?

  • Project limit on gitlab

    Solved
    2
    0 Votes
    2 Posts
    230 Views
    nebulonN

    Now increased to 100

  • Why do we have to push an image to a registry?

    Solved
    23
    1 Votes
    23 Posts
    2k Views
    LonkleL

    @yusf said in Why do we have to push an image to a registry?:

    Does this mean that we can also host the Cloudron build service on production machines, or am I mistaken?

    Well, I run it only on a dev machine since I only use Cloudron to dev. But tbh, after 100s of builds. All of the other apps are still running smoothly so it's not recommended because it's the only app with the docker add-on and thus could technically mess with other apps. It has never done so, I just think they'd rather not have the responsibility of calling it "production-ready" even though in my dev environment, it gives me no issues. I would feel comfortable running this in production tbh. The worry is if it ever bugged. But I can actually work around that by accounting for it using a Cloudron add-on I'm building (Dot the Repair Bot) so even though it's never happened, if I account for the Build Service being able to destroy containers / data outside it's sandbox (what the devs mean when they say it's not for production), I can have them auto-restored by Dot.

    But if Dot got destroyed by the Build Service I'd be screwed. 😂

  • Deploy Dockerized React App

    Moved Solved
    3
    0 Votes
    3 Posts
    817 Views
    R

    @girish Sorry for the late reply, I tried this and got it working!
    Thanks,
    Ross

  • Need help with GitLab (git.cloudron.io)

    11
    2 Votes
    11 Posts
    1k Views
    eriktadE

    @marcusquinn Oh yes think it would be help

  • Updating a node app

    8
    0 Votes
    8 Posts
    723 Views
    LonkleL

    @mehdi said in Updating a node app:

    @atrilahiji Also, some browsers are a bit ... aggressive with their caching policies. You may want to force-refresh (ctrl/cmd + shift + R in most browsers), maybe even a few times, before anything else, just to check it wasn't just cache

    This has been my experience as well.

  • Does anyone know the element ui toolkit well?

    3
    0 Votes
    3 Posts
    452 Views
    nebulonN

    I took a quick look at that some time ago, but it wasn't that trivial for me at least unless I would rewrite parts of the element table management around sorting. Happy to accept any patches there of course.

  • Question about packaging express.js node apps

    Solved
    6
    0 Votes
    6 Posts
    549 Views
    ?

    @murgero HAH! Oddly enough making my script specifically cd into the backend directory and running the server.js there instead of running server.js from outside that directory did it. Unsure why. Works now and I have 0.1.1 of my app released and 0.1.0 of the cloudron integration. Thanks guys! 🙂

  • LAMP 7.3 multidb app package - Multi-user?

    13
    0 Votes
    13 Posts
    1k Views
    A

    @girish I also think about this. The use case is. I need the first db and dbuser for the web app. And the second db and dbuser for view tables from the first db. This second db and db user is used for metabase report so the original db and table structure not shown for the metabase user.

    Another case i can think of is to make a slave db on the lamp app from external db.

  • Packaging non-cloudron docker base image?

    7
    0 Votes
    7 Posts
    564 Views
    LonkleL

    Let’s not forget about the mounting feature in 6.0 tho. ☺️

  • How do you guys set up cloudron straight from a `box` checkout?

    Moved
    6
    0 Votes
    6 Posts
    643 Views
    LonkleL

    @malvim Definitely update us on progress in either thread. I'll be getting my Pi in November and will join the "Cloudron on Pi" team! ☺️

  • Live stream on creating an app for Cloudron

    Moved
    17
    19 Votes
    17 Posts
    2k Views
    M

    great! luckily we can re-watch 😄

  • How to deal with /app/data/ which is also part of an update

    8
    2 Votes
    8 Posts
    654 Views
    BrutalBirdieB

    Tagging @luckow since he has customer experience with Greenlight and could tell us how often a customer wants/uses to use this feature.

  • 0 Votes
    1 Posts
    132 Views
    No one has replied
  • So I screwed things up trying to run addon tests...

    Moved
    4
    0 Votes
    4 Posts
    471 Views
    M

    So, it should be obvious for someone who has worked in IT for a while like me, but... Kids, DON'T EVER run tests on your production servers. Ever! 🤣 🤣 🤣

  • Remote SQL into Cloudron's App DB for debugging purposes

    4
    0 Votes
    4 Posts
    419 Views
    LonkleL

    @nebulon said in Remote SQL into Cloudron's App DB for debugging purposes:

    What do you mean with Cloudron's App DB? Like the main platform database?

    That would be simply available on your host system only on localhost. You can access it with mysql -uroot -ppassword box (password is literally password) Of course you are on your own if you tinker with that database, changing things there might break the system.

    I honestly never would have figured out the password (not joking), thanks, that worked! ☺️

    Is there only one cloudron database which is "box"?

  • Cloudron as an app inside of Cloudron

    33
    0 Votes
    33 Posts
    2k Views
    LonkleL

    Got the tool fully working on macOS. Worked like a charm after I figured out everything the tool wanted.

    I had to make a small commit to dashboard since macOS doesn't support the timedatectl CLI tool so I converted that command into a universal one that returns the same values on either Ubuntu and Macs. But that was literally the only thing that didn't work in the entire tool and I've already committed a change for that (locally, of course).

    So, thanks for your help @girish, this will allow me to build a cloudron-master Cloudron install that's, ofc, unstable - but it will be just to test my apps in before you turn your new commits into a release to make sure my apps are always compatible with your newest changes! ☺️

  • Cloudron CLI and NGINX Routing Weirdness

    28
    0 Votes
    28 Posts
    2k Views
    LonkleL

    @mehdi That’s what I’m thinking it must be - it’s happening with my VPN Client since that’s what I’ve been working. But the box code treats the OpenVPN Client like normal and only treats the apps connected to it special.....wait, what if the cache of the domain exists because an app was connected to my OpenVPN Client app so it’s still “somewhere” in memory even though technically that container is no longer referencing an active container.

    That’s a great idea and I think that may be the cause. Because it would persist reboots even, the app connected to the VPN Client attempting to connect. I’m just hoping I can get some advice on how to access Cloudron’s internal app DB via Remote SQL (like you can with individual apps) so I can debug this issue entirely.

    I want to release the OpenVPN Client on the store in 2021. So I gotta make sure it’s perfect - and your comment just sparked a thought process that very likely could be the problem and I was dismissing it in my head for silly reasons. Thanks. I’ll reproduce it now that I know it’s just me, and see if I can fix it.

    I really just needed one other person on the latest Cloudron perform those steps and have it go perfectly for me to know it was my app (and box changes).

  • Is "Bind Password" any "admin" password or is it something special

    4
    0 Votes
    4 Posts
    379 Views
    LonkleL

    Oh, that’s easy. It’s already there in the environment variables. Cool, I’ll adjust my library to include it so that the app doesn’t break when Cloudron starts enforcing the bind password (which it’s only not for 4 apps I guess - so when / if they ever support it, Cloudron will require the password).

    Thank you so much @mehdi. Sometimes I miss the easiest of things.

  • Test packaging the Invoice Ninja app, running into issues.

    Solved
    13
    0 Votes
    13 Posts
    706 Views
    d19dotcaD

    @nebulon Oh that's perfect, thank you so much for looking into that! Happy to hear it wasn't just me then, haha, just bad luck with the app and timing I guess, glad to know the process I was trying to test works though. Thanks again for the help! 🙂