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

245 Topics 2.3k Posts

Subcategories


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

    32 Topics
    251 Posts
    P

    I am seeking some 1on1 assistance packaging a NodeJS app generated using Wappler.io into a Cloudron package

    If anyone is interested please send me a direct message and we can discuss compensation

    Best,
    Nick

  • Desktop App

    46
    7 Votes
    46 Posts
    3k Views
    murgeroM

    @necrevistonnezr That seems more for the host than installed in apps? Or am I misreading some of it?

  • Dockerfile with 2 x FROM sources

    7
    0 Votes
    7 Posts
    709 Views
    timconsidineT

    @fbartels thanks, nice example 👍

  • Passing the Healthcheck on custom app

    18
    1 Votes
    18 Posts
    1k Views
    timconsidineT

    @nebulon thank you, will move the repo over

  • Any need to prune unused images ?

    Solved
    3
    1 Votes
    3 Posts
    441 Views
    timconsidineT

    @girish phew, thank you

  • Error while update npm-package

    Solved
    4
    0 Votes
    4 Posts
    2k Views
    R

    Thanks @mehdi and @nebulon

    My problem solved by deleting the package-lock.json. After that I can update this app and all works good.

    Thank you very much.

  • Install cloudron-cli on Code-Server

    6
    0 Votes
    6 Posts
    743 Views
    murgeroM

    @roru2k20 just git clone on a computer you have cloudron-cli installed then follow instructions in readme (skip docker build/push)

  • FORM.IO : attempting custom package

    10
    3 Votes
    10 Posts
    1k Views
    timconsidineT

    @msbt thank you
    I've decided to 'step over' adjusting them in the config file (because I can't) and adjusted the app code to read the config file
    e.g. process.env.CLOUDRON_MONGODB_HOST as it is nodejs app
    Not there yet but making progress

  • Exposing big UDP ports range

    6
    0 Votes
    6 Posts
    676 Views
    girishG

    Right, just use the turn addon - https://docs.cloudron.io/packaging/addons/#turn

  • help me: How to clone private apps?

    2
    0 Votes
    2 Posts
    353 Views
    M

    @alphagroup if it's an actual clone, you can just install the initial app, create a backup and clone the app to a new (sub)domain for each customer. If they don't have access, you might want to check out the Cloudron CLI or API and build some Dashboard around that 😉

  • Will Pay $$ for a custom LAMP app

    1
    1 Votes
    1 Posts
    215 Views
    No one has replied
  • Pass Cloudron ENV variables to pre-built Docker image

    7
    1 Votes
    7 Posts
    1k Views
    C

    @klawitterb Oh I see, good point, that part escaped my notice. Mediafiles are directly served by nginx and only the rest is forwarded to Gunicorn.

    #serve media files location /media/ { alias /app/data/mediafiles/; } # pass requests for dynamic content to gunicorn location / { proxy_set_header Host $http_host; proxy_pass http://localhost:8080; # -> this gos to Gunicorn }

    So with the Cloudron Nginx, static files would still be served from Gunicorn. SO I guess, it is worth the effort 😉
    Thanks for that.

  • Sponsored App Creation

    Moved
    73
    7 Votes
    73 Posts
    14k Views
    robiR

    @privsec why? The two are separate things.

    Cloudron devs maintain the packaged updates, app maintainers the code.

  • Crowdfund people to package apps for Cloudron

    Moved
    15
    3 Votes
    15 Posts
    1k Views
    E

    @nebulon Great answer, thank you

  • Need help with my qBittorrent app

    6
    1 Votes
    6 Posts
    658 Views
    mehdiM

    @jodumont I believe the problem may come from the --daemon flag that you pass in the start.sh. Can you try removing that ?

  • This topic is deleted!

    1
    0 Votes
    1 Posts
    1 Views
    No one has replied
  • 0 Votes
    3 Posts
    584 Views
    BrutalBirdieB

    @grienauer
    When I did my testing for the Valheim Server App I wrote this script to make testing easier.

    Note tho, this only works when not using any addons, but localstorage works with the local mount.

    #!/bin/bash # Function to get the user to input the needed vars get_vars () { read -p "Cloudron E-Mail: " EMAIL read -p "Cloudron Username: " USERNAME read -s -p "Cloudron Password: " PASSWORD read -p "Cloudron URL: " CLOUDRON_URL read -p "DOCKER REPOSITORY URL: " DOCKER_REPOSITORY_URL read -p "DOCKER USERNAME: " DOCKER_REPOSITORY_USERNAME read -p -s "DOCKER PASSWORD: " DOCKER_REPOSITORY_PASSWORD printf "EMAIL=$EMAIL\n USERNAME=$USERNAME\n PASSWORD=$PASSWORD\n CLOUDRON_URL=$CLOUDRON_URL\n DOCKER_REPOSITORY_URL=$DOCKER_REPOSITORY_URL\n DOCKER_REPOSITORY_USERNAME=$DOCKER_REPOSITORY_USERNAME\n DOCKER_REPOSITORY_PASSWORD=$DOCKER_REPOSITORY_PASSWORD\n " > .env } # check if .env file exists and read it or check if vars exsist if [ -f ".env" ]; then export $(egrep -v '^#' .env | xargs) &> /dev/null else echo ".env File missing - asking for required vars" get_vars fi if [ -z "$EMAIL" ] || [ -z "$USERNAME" ] || [ -z "$PASSWORD" ] || [ -z "$CLOUDRON_URL" ] || [ -z "$DOCKER_REPOSITORY_URL" ] || [ -z "$DOCKER_REPOSITORY_USERNAME" ] || [ -z "$DOCKER_REPOSITORY_PASSWORD" ]; then echo "some vars are empty - asking for required vars" get_vars fi echo "=> Login Docker" docker login --username $DOCKER_REPOSITORY_USERNAME --password $DOCKER_REPOSITORY_PASSWORD $DOCKER_REPOSITORY_URL echo "=> Login Cloudron" cloudron login --username $USERNAME --password $PASSWORD my.$CLOUDRON_URL set -x # Get the ID and VERSION from the CloudronManifest.json ID=$(jq -r ".id" CloudronManifest.json) VERSION=$(jq -r ".version" CloudronManifest.json) echo "=> Create Test Data dir" mkdir -p ./cloudron_test/data ./cloudron_test/tmp ./cloudron_test/run echo "=> Cleanup Test Data" rm -rf ./cloudron_test/data/* ./cloudron_test/tmp/* ./cloudron_test/run/* echo "=> Build test image" cloudron build --set-repository $DOCKER_REPOSITORY_URL/$ID # docker build -t $DOCKER_REPOSITORY_URL/$ID:$VERSION . if [[ RUN_IMG = "" ]]; then read -p "Do you want to run the image created image?: (y/N)" RUN_IMG fi if [[ "$RUN_IMG" = "y" || "$RUN_IMG" = "Y" ]]; then echo "=> Run `test` tag of build image" docker run -ti --read-only \ --volume $(pwd)/cloudron_test/data:/app/data:rw \ --volume $(pwd)/cloudron_test/tmp:/tmp:rw \ --volume $(pwd)/cloudron_test/run:/run:rw \ $DOCKER_REPOSITORY_URL/$ID:$VERSION \ bash fi echo "=> Running tests" cd test echo "=> Running ncu - updating deps" ncu -u npm -i echo "=> Installing package.json" npm install if [[ -f ./node_modules/.bin/mocha ]]; then ./node_modules/.bin/mocha ./test.js -b fi if [[ -f ../node_modules/.bin/mocha ]]; then ../node_modules/.bin/mocha ./test.js -b fi # remove installed test instance echo "Cancel now if you wish to keep the app installed" sleep 10 cloudron uninstall --app test.$CLOUDRON_URL
  • Baserow Cloudron app - Airtable alternative

    Locked Solved
    57
    15 Votes
    57 Posts
    6k Views
    nebulonN

    I will lock this topic since the app is published by now and the forum section is https://forum.cloudron.io/category/136/baserow

  • Addon variables erased after restart?

    Solved
    3
    0 Votes
    3 Posts
    359 Views
    ?

    @girish hah, I didn’t realize there was an update! Thanks!!! I’m glad I wasn’t crazy there and it was a platform issue. I redid my package like 4 times thinking I was overriding the environment vars somehow

  • HowTo install Cloudron CLI on Windows

    11
    2 Votes
    11 Posts
    1k Views
    murgeroM

    @jodumont If you run the node file for cloudron directly (add it to your PATH) you don't need the set-executionpolicy bit. Node is separate from powershell and as such it can run without that.

  • PMS and mysql

    Solved
    3
    0 Votes
    3 Posts
    452 Views
    ultravioletU

    @nebulon Thanks thought that might be the answer.