One Click Apps
Go to file
Ethan Edwards a39cec1112
Discourse (#189)
* Testing discourse.json

* More testing

* changed underscores to hyphens

* idek

* Added 'containerHttpPort'

* $$cap_appname-${postgresql, redis, discourse, sidekiq} added

* t

* My commits are messy

* added logo

* added dockerfileLines to remove the unsupported "commmand" command

* done for tonight

* moved the password to below the uesr

* leaving the house

* fixed spacing?

* used prettier

* added db_name

* pushing

* pushing

* switching devices

* pushgin

* added changes

* switching devices

* done for tonight

* update

* updated

* git is hard lol

* update

* missed this

* added smtp

* added admin variables

* added the password

* updating with fixed recommendations
2020-06-30 19:10:03 -04:00
.github Added formatter 2020-06-23 18:57:29 -04:00
public Discourse (#189) 2020-06-30 19:10:03 -04:00
scripts Fixed v3 2020-06-23 08:53:34 -04:00
.gitignore Changed build chain 2020-06-23 08:35:58 -04:00
.prettierrc Added formatter 2020-06-23 18:57:05 -04:00
LICENSE Create LICENSE (#40) 2019-03-17 09:10:19 -07:00
README.md proposition of updating readme (#177) 2020-05-24 10:59:45 -04:00
package-lock.json Added formatter 2020-06-23 18:57:05 -04:00
package.json Added formatter 2020-06-23 18:57:05 -04:00

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_appname and $$cap_root_domain which 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_domain which resolves to something like myappname.rootdomain.com
  • Each custom variable must have id, label. They may also have defaultValue, 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 image property in a service, you can use dockerfileLines which 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 containerHttpPort to 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.