Files
KNELProductionContainers/CloudronPackages/Jenkins

Package Template for Cloudron Apps

This is a minimal template to package an application for Cloudron.

Docker Artifact Naming Convention

All KNEL Cloudron packages follow the KNELCloudron- prefix convention:

  • Development Images: <appname>:dev (built locally for testing)
  • Production Images: <appname>:latest (final packaged versions)
  • Container Names: Use descriptive names like <appname>-dev for development containers

Template Usage

Replace placeholders in files with your app specifics:

  • io.knel.jenkins (e.g., com.example.myapp)
  • Jenkins CI/CD (human name)
  • 8080 (default internal app port)
  • 5.0.0 (Cloudron base image tag, e.g., 5.0.0)

Files

  • CloudronManifest.json base manifest
  • Dockerfile uses cloudron/base, non-root user, healthcheck
  • start.sh startup script with addon detection examples
  • nginx.conf (optional) example reverse proxy
  • supervisord.conf (optional) process manager example
  • config.yaml (optional) sample app config
  • logo.png add your 512x512 PNG icon here (not provided in template)

Usage

  1. Create a new package from this template using scripts/new-package.sh: scripts/new-package.sh MyApp --id com.example.myapp --title "My App" --port 3000
  2. Adjust Dockerfile and start.sh to run your app.
  3. Build and test locally; then commit and push.