app.json 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. {
  2. "name": "Mastodon",
  3. "description": "A GNU Social-compatible microblogging server",
  4. "repository": "https://github.com/mastodon/mastodon",
  5. "logo": "https://github.com/mastodon.png",
  6. "env": {
  7. "HEROKU": {
  8. "description": "Leave this as true",
  9. "value": "true",
  10. "required": true
  11. },
  12. "LOCAL_DOMAIN": {
  13. "description": "The domain that your Mastodon instance will run on (this can be appname.herokuapp.com or a custom domain)",
  14. "required": true
  15. },
  16. "SECRET_KEY_BASE": {
  17. "description": "The secret key base",
  18. "generator": "secret"
  19. },
  20. "OTP_SECRET": {
  21. "description": "One-time password secret",
  22. "generator": "secret"
  23. },
  24. "SINGLE_USER_MODE": {
  25. "description": "Should the instance run in single user mode? (Disable registrations, redirect to front page)",
  26. "value": "false",
  27. "required": true
  28. },
  29. "S3_ENABLED": {
  30. "description": "Should Mastodon use Amazon S3 for storage? This is highly recommended, as Heroku does not have persistent file storage (files will be lost).",
  31. "value": "true",
  32. "required": false
  33. },
  34. "S3_BUCKET": {
  35. "description": "Amazon S3 Bucket",
  36. "required": false
  37. },
  38. "S3_REGION": {
  39. "description": "Amazon S3 region that the bucket is located in",
  40. "required": false
  41. },
  42. "AWS_ACCESS_KEY_ID": {
  43. "description": "Amazon S3 Access Key",
  44. "required": false
  45. },
  46. "AWS_SECRET_ACCESS_KEY": {
  47. "description": "Amazon S3 Secret Key",
  48. "required": false
  49. },
  50. "SMTP_SERVER": {
  51. "description": "Hostname for SMTP server, if you want to enable email",
  52. "required": false
  53. },
  54. "SMTP_PORT": {
  55. "description": "Port for SMTP server",
  56. "required": false
  57. },
  58. "SMTP_LOGIN": {
  59. "description": "Username for SMTP server",
  60. "required": false
  61. },
  62. "SMTP_PASSWORD": {
  63. "description": "Password for SMTP server",
  64. "required": false
  65. },
  66. "SMTP_DOMAIN": {
  67. "description": "Domain for SMTP server. Will default to instance domain if blank.",
  68. "required": false
  69. },
  70. "SMTP_FROM_ADDRESS": {
  71. "description": "Address to send emails from",
  72. "required": false
  73. },
  74. "SMTP_AUTH_METHOD": {
  75. "description": "Authentication method to use with SMTP server. Default is 'plain'.",
  76. "required": false
  77. },
  78. "SMTP_OPENSSL_VERIFY_MODE": {
  79. "description": "SMTP server certificate verification mode. Defaults is 'peer'.",
  80. "required": false
  81. },
  82. "SMTP_ENABLE_STARTTLS": {
  83. "description": "Enable STARTTLS? Default is 'auto'.",
  84. "value": "auto",
  85. "required": false
  86. },
  87. "SMTP_ENABLE_STARTTLS_AUTO": {
  88. "description": "Enable STARTTLS if SMTP server supports it? Deprecated by SMTP_ENABLE_STARTTLS.",
  89. "required": false
  90. }
  91. },
  92. "buildpacks": [
  93. {
  94. "url": "https://github.com/heroku/heroku-buildpack-activestorage-preview"
  95. },
  96. {
  97. "url": "https://github.com/heroku/heroku-buildpack-apt"
  98. },
  99. {
  100. "url": "heroku/nodejs"
  101. },
  102. {
  103. "url": "heroku/ruby"
  104. }
  105. ],
  106. "scripts": {
  107. "postdeploy": "bundle exec rails db:migrate && bundle exec rails db:seed"
  108. },
  109. "addons": ["heroku-postgresql", "heroku-redis"],
  110. "stack": "heroku-24"
  111. }