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
This commit is contained in:
Ethan Edwards 2020-06-30 19:10:03 -04:00 committed by GitHub
parent 8453764acf
commit a39cec1112
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 180 additions and 0 deletions

View File

@ -0,0 +1,180 @@
{
"captainVersion": "2",
"documentation": "Taken from https://hub.docker.com/r/bitnami/discourse",
"displayName": "Discourse",
"description": "Discourse is the 100% open source discussion platform built for the next decade of the Internet. Use it as a mailing list, discussion forum, long-form chat room, and more!",
"dockerCompose": {
"version": "2",
"services": {
"$$cap_appname-postgresql": {
"documentation": "Taken from https://hub.docker.com/r/bitnami/postgresql",
"image": "docker.io/bitnami/postgresql:$$cap_postgresql_version",
"notExposeAsWebApp": "true",
"restart": "always",
"environment": { "ALLOW_EMPTY_PASSWORD": "yes" },
"volumes": ["$$cap_appname-postgresql-data:/bitnami/postgresql"]
},
"$$cap_appname-redis": {
"documentation": "Taken from https://hub.docker.com/r/bitnami/redis",
"image": "docker.io/bitnami/redis:$$cap_redis_version",
"notExposeAsWebApp": "true",
"restart": "always",
"environment": { "ALLOW_EMPTY_PASSWORD": "yes" },
"volumes": ["$$cap_appname-redis-data:/bitnami"]
},
"$$cap_appname": {
"documentation": "Taken from https://hub.docker.com/r/bitnami/discourse",
"image": "docker.io/bitnami/discourse:$$cap_discourse_version",
"containerHttpPort": "3000",
"depends_on": [
"$$cap_appname-postgresql",
"$$cap_appname-redis"
],
"volumes": ["$$cap_appname-data:/bitnami"],
"environment": {
"POSTGRESQL_HOST": "srv-captain--$$cap_appname-postgresql",
"POSTGRESQL_ROOT_USER": "postgres",
"POSTGRESQL_CLIENT_CREATE_DATABASE_NAME": "$$cap_db_name",
"POSTGRESQL_CLIENT_CREATE_DATABASE_USERNAME": "$$cap_db_user",
"POSTGRESQL_CLIENT_CREATE_DATABASE_PASSWORD": "$$cap_db_pass",
"DISCOURSE_USERNAME": "$$cap_admin_user",
"DISCOURSE_PASSWORD": "$$cap_admin_pass",
"DISCOURSE_EMAIL": "$$cap_admin_email",
"DISCOURSE_SITENAME": "$$cap_sitename",
"DISCOURSE_POSTGRESQL_NAME": "$$cap_db_name",
"DISCOURSE_POSTGRESQL_USERNAME": "$$cap_db_user",
"DISCOURSE_POSTGRESQL_PASSWORD": "$$cap_db_pass",
"DISCOURSE_HOSTNAME": "$$cap_appname.$$cap_root_domain",
"REDIS_HOST": "srv-captain--$$cap_appname-redis",
"SMTP_HOST": "$$cap_smtp_host",
"SMTP_PORT": "$$cap_smtp_port",
"SMTP_USER": "$$cap_smtp_user",
"SMTP_PASSWORD": "$$cap_smtp_pass"
}
},
"$$cap_appname-sidekiq": {
"documentaion": "Taken from https://hub.docker.com/r/bitnami/discourse",
"notExposeAsWebApp": "true",
"depends_on": ["$$cap_appname"],
"volumes": ["$$cap_appname-data:/bitnami"],
"dockerfileLines": [
"FROM docker.io/bitnami/discourse:$$cap_discourse_version",
"CMD [\"nami\" , \"start\" , \"--foreground\" , \"discourse-sidekiq\"]"
],
"environment": {
"DISCOURSE_POSTGRESQL_NAME": "$$cap_db_name",
"DISCOURSE_POSTGRESQL_USERNAME": "$$cap_db_user",
"DISCOURSE_POSTGRESQL_PASSWORD": "$$cap_db_pass",
"DISCOURSE_HOST": "srv-captain--$$cap_appname",
"DISCOURSE_PORT": "3000",
"DISCOURSE_HOSTNAME": "$$cap_appname.$$cap_root_domain",
"POSTGRESQL_HOST": "srv-captain--$$cap_appname-postgresql",
"REDIS_HOST": "srv-captain--$$cap_appname-redis",
"SMTP_HOST": "$$cap_smtp_host",
"SMTP_PORT": "$$cap_smtp_port",
"SMTP_USER": "$$cap_smtp_user",
"SMTP_PASSWORD": "$$cap_smtp_pass"
}
}
}
},
"instructions": {
"start": "Discourse is a relatively heavy application, atleast 2GB RAM is recommended to run Discourse",
"end": "Discourse image is deployed and the installation process has begun. The installation process takes about 10 minutes."
},
"variables": [
{
"id": "$$cap_discourse_version",
"label": "Discourse Version",
"defaultValue": "2-debian-10",
"description": "Version of Discourse",
"validRegex": "/^([^\\s^\\/])+$/"
},
{
"id": "$$cap_postgresql_version",
"label": "Postgresql (database) version",
"defaultValue": "11-debian-10",
"description": "Version of Postgresql",
"validRegex": "/^([^\\s^\\/])+$/"
},
{
"id": "$$cap_sitename",
"label": "Sitename",
"defaultValue": "My site!",
"description": "The title of the site, the words on the tab"
},
{
"id": "$$cap_redis_version",
"label": "Redis version",
"defaultValue": "5.0-debian-10",
"description": "Version of Redis",
"validRegex": "/^([^\\s^\\/])+$/"
},
{
"id": "$$cap_admin_user",
"label": "Admin username",
"defaultValue": "admin",
"description": "Name of the admin account",
"validRegex": "/.{1,}/"
},
{
"id": "$$cap_admin_pass",
"label": "Admin password",
"defaultValue": "sTr0nG_p@s$wo%d",
"description": "Password of the admin account",
"validRegex": "/.{1,}/"
},
{
"id": "$$cap_admin_email",
"label": "Admin email",
"defaultValue": "your_email@gmail.com",
"description": "Email of the admin account",
"validRegex": "/.{1,}/"
},
{
"id": "$$cap_db_name",
"label": "Database name",
"defaultValue": "discourse_db",
"description": "Name for the database using postgresql",
"validRegex": "/^([^\\s^\\/])+$/"
},
{
"id": "$$cap_db_user",
"label": "Database user",
"defaultValue": "discourse_user",
"description": "Username for the database using postgresql",
"validRegex": "/^([^\\s^\\/])+$/"
},
{
"id": "$$cap_db_pass",
"label": "Database password",
"defaultValue": "sTr0nG_p@s$wo%d",
"description": "Password for the database user and root using postgresql",
"validRegex": "/.{1,}/"
},
{
"id": "$$cap_smtp_host",
"label": "SMPT host",
"defaultValue": "smtp.gmail.com",
"description": "The host for your smtp server"
},
{
"id": "$$cap_smtp_port",
"label": "SMTP port",
"defaultValue": "587",
"description": "The port for your smtp server"
},
{
"id": "$$cap_smtp_user",
"label": "SMTP user",
"defaultValue": "your_email@gmail.com",
"description": "The user for your smtp server"
},
{
"id": "$$cap_smtp_pass",
"label": "SMTP password",
"defaultValue": "sTr0nG_p@s$wo%d",
"description": "The password for your smtp server"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB