one-click-apps/public/v2/apps/chatwoot.json

110 lines
5.0 KiB
JSON

{
"captainVersion": "2",
"documentation": "Read more at: https://www.chatwoot.com/docs",
"displayName": "Chatwoot",
"description": "Open-source customer support saas alternative to Intercom, Drift, Crisp",
"dockerCompose": {
"version": "3.3",
"services": {
"$$cap_appname-postgres": {
"image": "postgres:11.6",
"notExposeAsWebApp": "true",
"volumes": [
"$$cap_appname-postgres-data:/var/lib/postgresql/data"
],
"restart": "always",
"environment": {
"POSTGRES_USER": "chatwoot",
"POSTGRES_PASSWORD": "$$cap_chatwoot_postgres_password",
"POSTGRES_DB": "chatwoot"
}
},
"$$cap_appname-redis": {
"dockerfileLines": [
"FROM redis:alpine",
"CMD exec redis-server --requirepass \"$$cap_chatwoot_redis_password\""
],
"notExposeAsWebApp": "true",
"volumes": ["$$cap_appname-redis-data:/data"],
"restart": "always",
"environment": {
"REDIS_PASSWORD": "$$cap_chatwoot_redis_password"
}
},
"$$cap_appname-web": {
"containerHttpPort": "3000",
"dockerfileLines": [
"FROM chatwoot/chatwoot:$$cap_chatwoot_version",
"RUN chmod +x docker/entrypoints/rails.sh",
"ENTRYPOINT [\"docker/entrypoints/rails.sh\"]",
"EXPOSE 3000",
"CMD bundle exec rake db:setup; bundle exec rake db:migrate; bundle exec rails s -b 0.0.0.0 -p 3000"
],
"restart": "always",
"environment": {
"RAIL_ENV": "production",
"RAILS_LOG_TO_STDOUT": "true",
"SECRET_KEY_BASE": "$$cap_chatwoot_secret_key_base",
"POSTGRES_HOST": "srv-captain--$$cap_appname-postgres",
"POSTGRES_DATABASE": "chatwoot",
"POSTGRES_USERNAME": "chatwoot",
"POSTGRES_PASSWORD": "$$cap_chatwoot_postgres_password",
"REDIS_URL": "redis://srv-captain--$$cap_appname-redis:6379",
"REDIS_PASSWORD": "$$cap_chatwoot_redis_password"
}
},
"$$cap_appname-worker": {
"dockerfileLines": [
"FROM chatwoot/chatwoot:$$cap_chatwoot_version",
"RUN chmod +x docker/entrypoints/rails.sh",
"ENTRYPOINT [\"docker/entrypoints/rails.sh\"]",
"CMD bundle exec sidekiq -C config/sidekiq.yml"
],
"notExposeAsWebApp": "true",
"restart": "always",
"environment": {
"RAIL_ENV": "production",
"RAILS_LOG_TO_STDOUT": "true",
"SECRET_KEY_BASE": "$$cap_chatwoot_secret_key_base",
"POSTGRES_HOST": "srv-captain--$$cap_appname-postgres",
"POSTGRES_DATABASE": "chatwoot",
"POSTGRES_USERNAME": "chatwoot",
"POSTGRES_PASSWORD": "$$cap_chatwoot_postgres_password",
"REDIS_URL": "redis://srv-captain--$$cap_appname-redis:6379",
"REDIS_PASSWORD": "$$cap_chatwoot_redis_password"
}
}
}
},
"instructions": {
"start": "Open-source customer support saas alternative to Intercom, Drift, Crisp.",
"end": "Your Chatwoot instance is now successfully deployed. \n\n Refer https://www.chatwoot.com/docs/environment-variables/ for full list of environment variables available. Let us know if you have any queries through hello@chatwoot.com"
},
"variables": [
{
"id": "$$cap_chatwoot_version",
"label": "Chatwoot Version Tag",
"description": "https://hub.docker.com/r/chatwoot/chatwoot/tags",
"defaultValue": "v1.3.0"
},
{
"id": "$$cap_chatwoot_secret_key_base",
"label": "Chatwoot Secret Key Base",
"description": "The randomized string which is used to verify the integrity of signed cookies. Please use a string with more than 26 characters",
"validRegex": "/^[^\\@]{26,}$/"
},
{
"id": "$$cap_chatwoot_postgres_password",
"label": "Postgres Password",
"description": "Password must be at least 12 characters. Please use a random string.",
"validRegex": "/^[^\\@]{12,}$/"
},
{
"id": "$$cap_chatwoot_redis_password",
"label": "Redis Password",
"description": "Password must be at least 12 characters. Please use a random string.",
"validRegex": "/^[^\\@]{12,}$/"
}
]
}