Files
KNELProductionContainers/CloudronPackages/APISIX/README.md
ReachableCEO e32e9288d1 feat(rathole,apisix): complete Rathole and APISIX Cloudron packages
- Fix Rathole download URL to use .zip format instead of .tar.gz
- Complete APISIX package using official apache/apisix:3.8.0-debian base image
- Add cloudron user creation for APISIX compatibility
- Both packages build successfully and follow KNELCloudron- naming convention
- Rathole: reverse proxy tunnel with proper binary download
- APISIX: API gateway with official Docker image base
2025-10-17 10:19:59 -05:00

34 lines
1.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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.apisix` (e.g., com.example.myapp)
- `Apache APISIX` (human name)
- `9180` (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.