* proposition of updating readme adding bold for clicable sections rename enviromental into environment add the icon to the process fix link name of the app who does not match with the current README * take into account dev review + important Note |
||
|---|---|---|
| .github | ||
| public | ||
| .gitignore | ||
| LICENSE | ||
| README.md | ||
| build_dir | ||
| build_one_click_apps.js | ||
| package-lock.json | ||
| package.json | ||
| publish-from-actions.sh | ||
| validate_json.js | ||
README.md
Repo for CapRover One Click Apps
Process:
- Find/create a docker-compose file for the one click app
- Convert yaml file to json
- Copy the content into the one-click app structure. See this for the reference: wordpress.json
- Variables are prefixed with
$$cap - Variables can be anywhere in the JSON and they will be replaced by what user enters
- There are 2 special variables called
$$cap_appnameand$$cap_root_domainwhich exist for all oneclick apps. If your app needs environment variables with the URL value of the app, you can use$$cap_appname.$$cap_root_domainwhich resolves to something likemyappname.rootdomain.com - Each custom variable must have
id,label. They may also havedefaultValue,validRegex,description. (NB: fields are not required. If validRegex is not set, the field can be set as empty and ignored by the user.) - Other than
image,environment,ports,volumes,depends_on, other parameters are currently being ignored by CapRover. Make sure they are not crucial. - Instead of
imageproperty in a service, you can usedockerfileLineswhich is an array of strings. - Some webapps, use a non-standard HTTP port. For example, Adminer's Docker image uses port 8080. In this case, add
containerHttpPortto the service. See adminer.json for example. - Add the icon as a png file to the logos directory.
Test your One Click Apps
After creating your One-Click app json, like this, you need to test it before creating a Pull Request. Here is how you test it:
- Login to your CapRover dashboard
- Go to apps and click on One-Click Apps/Databases
- Select >> TEMPLATE << at the bottom of the dropdown list
- Copy and paste your JSON into the text area, and click NEXT.
- Enter values and make sure it's working as expected.