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

287 Topics 2.6k Posts

Subcategories


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

    36 284
    36 Topics
    284 Posts
    osoboO
    Hi @andreasdueren, Thanks for reaching out. I’m currently using the paid cloud version of Kitsu. The Docker version works for testing purposes. I installed it locally following this tutorial: . I understand that many professional studios self-host and use this app for production, but it requires technical skills for setup and maintenance, as many of the Docker files seem to be deprecated. As well as the GitHub page, there is a dedicated Kitsu community Discord server where users can discuss installation and usage issues: https://discord.gg/kJ7SmmUPM Best whises
  • Cloudron CLI - Updates

    Pinned
    16
    0 Votes
    16 Posts
    2k Views
    girishG
    [6.0.0] Various changes to accomodate Cloudron 9 release API changes add --siteId to cloudron backup to specify site id explicitly
  • App contributions hall of fame

    Pinned Moved
    42
    10 Votes
    42 Posts
    16k Views
    LanhildL
    @girish Missed that message. Yeah, Open WebUI is the one that made it to published. I've made several other things but they're mostly to learn packaging/tests (such as a standalone DB app, etc.)
  • Translators hall of fame

    Pinned Moved
    27
    16 Votes
    27 Posts
    8k Views
    nebulonN
    Currently this is not possible, we only manually add translators to avoid spam. Due to the vast changes of translation strings for the new UI, we are yet to purge and merge strings. So may not be too useful at the moment to suggest changes, but I am very happy to create an account for you for the future. Please mail your preferred email address to support@cloudron.io for this and we can handle it there.
  • Read first before starting to package an app

    Pinned
    10
    8 Votes
    10 Posts
    7k Views
    nebulonN
    I guess the current link would be https://docs.cloudron.io/packaging/tutorial/
  • Building custom packages

    Pinned
    8
    4 Votes
    8 Posts
    4k Views
    timconsidineT
    @tronical personally I do this process : fork the repo make changes docker build etc. docker push etc cloudron install etc. Maybe I should learn cloudron build but I am an old dog with limited brain space My build script (usually in folder above the app dev folder) : #!/bin/bash if [ "$#" -lt 1 ]; then echo "Usage: $0 <image-name> [cache|nocache] <appname.yourdomain.tld>" exit 1 fi # Get the directory from which the script was called BUILD_DIR="$(pwd)" if [ "$2" = "cache" ]; then echo "Building with cache ..." docker build --platform linux/amd64 -t $1 "$BUILD_DIR" else echo "Building with no cache ..." docker build --no-cache --platform linux/amd64 -t $1 "$BUILD_DIR" fi docker push $1 cloudron install --image $1 --location $3 e.g. ../cld.sh dockerregistry.yourdomain.tld/appname:version cache appname.yourdomain.tld
  • Writing automated tests for packages

    Pinned
    12
    8 Votes
    12 Posts
    5k Views
    BrutalBirdieB
    @nebulon Yea I just wanted to reply never mind, I copied the tests from the alltube app which do not even use selenium so yeeaa my mistake. Now I took the nextcloud tests and will learn from them
  • Cloudron Non-App Store Packaged Apps

    Pinned
    27
    11 Votes
    27 Posts
    10k Views
    T
    @matbrgz added to the post at the top!
  • appsmith

    1
    2 Votes
    1 Posts
    17 Views
    No one has replied
  • Matrix WhatsApp Bridge

    28
    5 Votes
    28 Posts
    4k Views
    andreasduerenA
    @robi didn’t find any when I tried to investigate. But since it’s pretty much stored in plain text on the other side I decided I may as well store it plain text on mine. Encryption and bridges/bots are just not a good fit
  • Advice for testing a packaged app

    3
    0 Votes
    3 Posts
    28 Views
    S
    Perfect! Thanks for the quick answer.
  • Ente for cloudron, help for testing wanted.

    19
    9 Votes
    19 Posts
    1k Views
    andreasduerenA
    @sponch Is everything working?
  • 7 Votes
    10 Posts
    153 Views
    TheMeerkatT
    new! Updated to 1.0.1. codeberg.org/themeerkat/hecapte-cloudron:1.0.1 I added customization options: renaming sites, deleting sites, and specifying CORS(!) on registration. This should make it a lot easier to use.
  • 0 Votes
    4 Posts
    102 Views
    saikarthikS
    This is a custom app based I am packaging on react-admin. I am currently just redirecting the user to {app}/logout on clicking logout. Any way to enable it for just the custom app?
  • Garage packaging status, next steps

    8
    1 Votes
    8 Posts
    168 Views
    jadudmJ
    Hi @scooke , To your question, I followed the instructions on the Garage website, and I added a near-copy of that documentation to the README in the package I've developed. This is all documented in the git repository for the package that I linked to. I have Garage running on my Cloudron instance, and was able to create buckets, add content, and even serve static web content from within those buckets. I'm sorry your prior experience with this did not work for you. I am now trying to do that in a way that it would be considered for inclusion as a standard package, if the Cloudron team thinks it is worthwhile. If they don't, perhaps I'll do it for myself.
  • XMPP Server - Prosody

    64
    4 Votes
    64 Posts
    17k Views
    D
    @nebulon - Congrats on the release of version 9! One of my servers just updated and the new UI looks slick. When will we get to see a slick new XMPP app in the store?
  • Is the OIDC Addon a kind of... "instant App Proxy" for packaging apps?

    Moved
    3
    1 Votes
    3 Posts
    116 Views
    jadudmJ
    Absolutely. That's an excellent and thorough answer, @james . Many, many thanks. Possible text: This add-on is intended for applications that already support OpenID Connect-based (OIDC) authentication. Apply this add-on to use Cloudron as an OpenID provider with an application that supports OIDC-based authentication. Possible improvement for proxyauth: The proxyauth add-on allows you to put an authentication wall in front of an application. This is useful in situations where the application has no authentication mechanisms of its own, or where there are features that you cannot easily turn off (for the general public), and you want to restrict access using Cloudron's built-in user and group management tools. I think the idea being that, in both cases, a bit more "why" might help. Either way, thank you. All of my questions are answered (including "oh, hey, there was an app packaging topic!").
  • 0 Votes
    2 Posts
    105 Views
    jamesJ
    Hello @LoudLemur @LoudLemur said in AI attempt at packaging anythingllm - problem with using demo: Now we want to find the install from custom source but can't see how. You need to use the cloudron cli tool to do that, or you could use the tool provided by @timconsidine https://ccai.appx.uk/ Your docker image of the custom app needs to be publicly available or in a private docker registry accessible by the cloudron server.
  • Blossom Server package

    10
    6 Votes
    10 Posts
    2k Views
    scookeS
    @nostrdev-com I've installed it, went smooth, and have even uploaded a blob. How do I make this private? I really don't want some random to upload nasty stuff! Here is some of my config: discovery: # find files by querying nostr relays nostr: enabled: true relays: - wss://relay.mynostr.com # - wss://nostrue.com # - wss://relay.damus.io # - wss://nostr.wine # - wss://nos.lol # - wss://nostr-pub.wellorder.net # find files by asking upstream CDNs # NOTE: do not set this to your own server, it will create an infinite loop upstream: enabled: true domains: - https://cdn.satellite.earth storage: # local or s3 backend: local # Imminently removes a blob when there are no owners removeWhenNoOwners: false # local storage local: dir: ./data/blobs # rules are checked in descending order. if a blob matches a rule it is kept # "type" (required) the type of the blob, "*" can be used to match any type # "expiration" (required) time passed since last accessed # "pubkeys" (optional) a list of owners # any blobs not matching the rules will be removed rules: # mime type of blob - type: text/* # time since last accessed expiration: 1 month - type: "image/*" expiration: 1 year - type: "video/*" expiration: 5 days - type: "model/*" expiration: 1 week - type: "*" expiration: 2 days upload: # enable / disable uploads enabled: true # require auth to upload requireAuth: true # only check rules that include "pubkeys" requirePubkeyInRule: false list: requireAuth: true allowListOthers: false tor: enabled: false proxy: ""
  • Stuck on packaging

    3
    2 Votes
    3 Posts
    392 Views
    jadudmJ
    Many thanks, @james. The text was absolutely helpful. Also, that diff hint is gold. I may end up with a PR against the docs when I'm done, because that kind of hint is a nice trick to figure out quickly all the places an app touches the disk.
  • Deepcode successfully installed in LAMP App

    3
    0 Votes
    3 Posts
    261 Views
    robiR
    @joseph Yes, I thought I mentioned that just before the apache app.conf. It does. Thanks for chiming in!