.env.docker 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302
  1. #!/bin/bash
  2. # -*- mode: bash -*-
  3. # vi: ft=bash
  4. # shellcheck disable=SC2034,SC2148
  5. # Use Dottie (https://github.com/jippi/dottie) to manage this .env file easier!
  6. #
  7. # For example:
  8. #
  9. # Run [dottie update] to update your [.env] file with upstream (as part of upgrade)
  10. # Run [dottie validate] to validate youe [.env] file
  11. #
  12. # @dottie/source .env.docker
  13. ################################################################################
  14. # app
  15. ################################################################################
  16. # The name/title for your site
  17. # @see https://docs.pixelfed.org/technical-documentation/config/#app_name-1
  18. # @dottie/example My Pixelfed Site
  19. # @dottie/validate required,ne=My Pixelfed Site
  20. APP_NAME=
  21. # Application domain used for routing. (e.g., pixelfed.org)
  22. #
  23. # @see https://docs.pixelfed.org/technical-documentation/config/#app_domain
  24. # @dottie/example example.com
  25. # @dottie/validate required,ne=example.com,fqdn
  26. APP_DOMAIN="example.com"
  27. # This URL is used by the console to properly generate URLs when using the Artisan command line tool.
  28. # You should set this to the root of your application so that it is used when running Artisan tasks.
  29. #
  30. # @see https://docs.pixelfed.org/technical-documentation/config/#app_url
  31. # @dottie/validate required,http_url
  32. APP_URL="https://${APP_DOMAIN}"
  33. # Application domains used for routing.
  34. #
  35. # @see https://docs.pixelfed.org/technical-documentation/config/#admin_domain
  36. # @dottie/validate required,fqdn
  37. ADMIN_DOMAIN="${APP_DOMAIN}"
  38. # This value determines the “environment” your application is currently running in.
  39. # This may determine how you prefer to configure various services your application utilizes.
  40. #
  41. # @default "production"
  42. # @see https://docs.pixelfed.org/technical-documentation/config/#app_env
  43. # @dottie/validate required,oneof=production dev staging
  44. #APP_ENV="production"
  45. # When your application is in debug mode, detailed error messages with stack traces will
  46. # be shown on every error that occurs within your application.
  47. #
  48. # If disabled, a simple generic error page is shown.
  49. #
  50. # @default "false"
  51. # @see https://docs.pixelfed.org/technical-documentation/config/#app_debug
  52. # @dottie/validate required,boolean
  53. #APP_DEBUG="false"
  54. # Disable config cache
  55. #
  56. # If disabled, settings must be managed by .env variables.
  57. #
  58. # @default "false"
  59. # @see https://docs.pixelfed.org/technical-documentation/config/#config_cache
  60. # @dottie/validate required,boolean
  61. ENABLE_CONFIG_CACHE="true"
  62. # Enable/disable new local account registrations.
  63. #
  64. # @default "true"
  65. # @see https://docs.pixelfed.org/technical-documentation/config/#open_registration
  66. # @dottie/validate required,boolean
  67. #OPEN_REGISTRATION="true"
  68. # Require email verification before a new user can do anything.
  69. #
  70. # @default "true"
  71. # @see https://docs.pixelfed.org/technical-documentation/config/#enforce_email_verification
  72. # @dottie/validate required,boolean
  73. #ENFORCE_EMAIL_VERIFICATION="true"
  74. # Allow a maximum number of user accounts.
  75. #
  76. # @default "1000"
  77. # @see https://docs.pixelfed.org/technical-documentation/config/#pf_max_users
  78. # @dottie/validate required,number
  79. #PF_MAX_USERS="1000"
  80. # Enforce the maximum number of user accounts
  81. #
  82. # @default "true"
  83. # @dottie/validate boolean
  84. #PF_ENFORCE_MAX_USERS="true"
  85. # @default "false"
  86. # @see https://docs.pixelfed.org/technical-documentation/config/#oauth_enabled
  87. # @dottie/validate required,boolean
  88. #OAUTH_ENABLED="false"
  89. # ! Do not edit your timezone once the service is running - or things will break!
  90. #
  91. # @default "UTC"
  92. # @see https://docs.pixelfed.org/technical-documentation/config/#app_timezone
  93. # @see https://www.php.net/manual/en/timezones.php
  94. # @dottie/validate required,timezone
  95. APP_TIMEZONE="UTC"
  96. # The application locale determines the default locale that will be used by the translation service provider.
  97. # You are free to set this value to any of the locales which will be supported by the application.
  98. #
  99. # @default "en"
  100. # @see https://docs.pixelfed.org/technical-documentation/config/#app_locale
  101. # @dottie/validate required
  102. #APP_LOCALE="en"
  103. # The fallback locale determines the locale to use when the current one is not available.
  104. #
  105. # You may change the value to correspond to any of the language folders that are provided through your application.
  106. #
  107. # @default "en"
  108. # @see https://docs.pixelfed.org/technical-documentation/config/#app_fallback_locale
  109. # @dottie/validate required
  110. #APP_FALLBACK_LOCALE="en"
  111. # @see https://docs.pixelfed.org/technical-documentation/config/#limit_account_size
  112. # @dottie/validate required,boolean
  113. #LIMIT_ACCOUNT_SIZE="true"
  114. # Update the max account size, the per user limit of files in kB.
  115. #
  116. # @default "1000000" (1GB)
  117. # @see https://docs.pixelfed.org/technical-documentation/config/#max_account_size-kb
  118. # @dottie/validate required,number
  119. #MAX_ACCOUNT_SIZE="1000000"
  120. # Update the max photo size, in kB.
  121. #
  122. # @default "15000" (15MB)
  123. # @see https://docs.pixelfed.org/technical-documentation/config/#max_photo_size-kb
  124. # @dottie/validate required,number
  125. #MAX_PHOTO_SIZE="15000"
  126. # The max number of photos allowed per post.
  127. #
  128. # @default "4"
  129. # @see https://docs.pixelfed.org/technical-documentation/config/#max_album_length
  130. # @dottie/validate required,number
  131. #MAX_ALBUM_LENGTH="4"
  132. # Update the max avatar size, in kB.
  133. #
  134. # @default "2000" (2MB).
  135. # @see https://docs.pixelfed.org/technical-documentation/config/#max_avatar_size-kb
  136. # @dottie/validate required,number
  137. #MAX_AVATAR_SIZE="2000"
  138. # Change the caption length limit for new local posts.
  139. #
  140. # @default "500"
  141. # @see https://docs.pixelfed.org/technical-documentation/config/#max_caption_length
  142. # @dottie/validate required,number
  143. #MAX_CAPTION_LENGTH="500"
  144. # Change the bio length limit for user profiles.
  145. #
  146. # @default "125"
  147. # @see https://docs.pixelfed.org/technical-documentation/config/#max_bio_length
  148. # @dottie/validate required,number
  149. #MAX_BIO_LENGTH="125"
  150. # Change the length limit for user names.
  151. #
  152. # @default "30"
  153. # @see https://docs.pixelfed.org/technical-documentation/config/#max_name_length
  154. # @dottie/validate required,number
  155. #MAX_NAME_LENGTH="30"
  156. # Resize and optimize image uploads.
  157. #
  158. # @default "true"
  159. # @see https://docs.pixelfed.org/technical-documentation/config/#pf_optimize_images
  160. # @dottie/validate required,boolean
  161. #PF_OPTIMIZE_IMAGES="true"
  162. # Set the image optimization quality, must be a value between 1-100.
  163. #
  164. # @default "80"
  165. # @see https://docs.pixelfed.org/technical-documentation/config/#image_quality
  166. # @dottie/validate required,number
  167. #IMAGE_QUALITY="80"
  168. # Resize and optimize video uploads.
  169. #
  170. # @default "true"
  171. # @see https://docs.pixelfed.org/technical-documentation/config/#pf_optimize_videos
  172. # @dottie/validate required,boolean
  173. #PF_OPTIMIZE_VIDEOS="true"
  174. # Enable account deletion.
  175. #
  176. # @default "true"
  177. # @see https://docs.pixelfed.org/technical-documentation/config/#account_deletion
  178. # @dottie/validate required,boolean
  179. #ACCOUNT_DELETION="true"
  180. # Set account deletion queue after X days, set to false to delete accounts immediately.
  181. #
  182. # @default "false"
  183. # @see https://docs.pixelfed.org/technical-documentation/config/#account_delete_after
  184. # @dottie/validate required,boolean|number
  185. #ACCOUNT_DELETE_AFTER="false"
  186. # @default "Pixelfed - Photo sharing for everyone"
  187. # @see https://docs.pixelfed.org/technical-documentation/config/#instance_description
  188. # @dottie/validate required
  189. #INSTANCE_DESCRIPTION=""
  190. # @default "false"
  191. # @see https://docs.pixelfed.org/technical-documentation/config/#instance_public_hashtags
  192. # @dottie/validate required,boolean
  193. #INSTANCE_PUBLIC_HASHTAGS="false"
  194. # The public e-mail address people can use to contact you by
  195. #
  196. # @default ""
  197. # @see https://docs.pixelfed.org/technical-documentation/config/#instance_contact_email
  198. # @dottie/validate required,ne=__CHANGE_ME__,email
  199. INSTANCE_CONTACT_EMAIL="__CHANGE_ME__"
  200. # @default "false"
  201. # @see https://docs.pixelfed.org/technical-documentation/config/#instance_public_local_timeline
  202. # @dottie/validate required,boolean
  203. #INSTANCE_PUBLIC_LOCAL_TIMELINE="false"
  204. # @default ""
  205. # @see https://docs.pixelfed.org/technical-documentation/config/#banned_usernames
  206. #BANNED_USERNAMES=""
  207. # @default "false"
  208. # @see https://docs.pixelfed.org/technical-documentation/config/#stories_enabled
  209. # @dottie/validate required,boolean
  210. #STORIES_ENABLED="false"
  211. # Level is hardcoded to 1.
  212. #
  213. # @default "false"
  214. # @see https://docs.pixelfed.org/technical-documentation/config/#restricted_instance
  215. # @dottie/validate required,boolean
  216. #RESTRICTED_INSTANCE="false"
  217. # @default false
  218. # @see https://docs.pixelfed.org/technical-documentation/config/#media_exif_database
  219. # @dottie/validate required,boolean
  220. #MEDIA_EXIF_DATABASE="false"
  221. # Pixelfed supports GD or ImageMagick to process images.
  222. #
  223. # Possible values:
  224. # - "gd" (default)
  225. # - "imagick"
  226. #
  227. # @default "gd"
  228. # @see https://docs.pixelfed.org/technical-documentation/config/#image_driver
  229. # @dottie/validate required,oneof=gd imagick
  230. #IMAGE_DRIVER="gd"
  231. # Set trusted proxy IP addresses.
  232. #
  233. # Both IPv4 and IPv6 addresses are supported, along with CIDR notation.
  234. #
  235. # The “*” character is syntactic sugar within TrustedProxy to trust any
  236. # proxy that connects directly to your server, a requirement when you cannot
  237. # know the address of your proxy (e.g. if using Rackspace balancers).
  238. #
  239. # The “**” character is syntactic sugar within TrustedProxy to trust not just any
  240. # proxy that connects directly to your server, but also proxies that connect to those proxies,
  241. # and all the way back until you reach the original source IP. It will mean that
  242. # $request->getClientIp() always gets the originating client IP, no matter how many proxies
  243. # that client’s request has subsequently passed through.
  244. #
  245. # @default "*"
  246. # @see https://docs.pixelfed.org/technical-documentation/config/#trust_proxies
  247. # @dottie/validate required
  248. #TRUST_PROXIES="*"
  249. # This option controls the default cache connection that gets used while using this caching library.
  250. #
  251. # This connection is used when another is not explicitly specified when executing a given caching function.
  252. #
  253. # Possible values:
  254. # - "apc"
  255. # - "array"
  256. # - "database"
  257. # - "file" (default)
  258. # - "memcached"
  259. # - "redis"
  260. #
  261. # @default "file"
  262. # @see https://docs.pixelfed.org/technical-documentation/config/#cache_driver
  263. # @dottie/validate required,oneof=apc array database file memcached redis
  264. CACHE_DRIVER="redis"
  265. # @default ${APP_NAME}_cache, or laravel_cache if no APP_NAME is set.
  266. # @see https://docs.pixelfed.org/technical-documentation/config/#cache_prefix
  267. # @dottie/validate required
  268. #CACHE_PREFIX="{APP_NAME}_cache"
  269. # This option controls the default broadcaster that will be used by the framework when an event needs to be broadcast.
  270. #
  271. # Possible values:
  272. # - "pusher"
  273. # - "redis"
  274. # - "log"
  275. # - "null" (default)
  276. #
  277. # @default null
  278. # @see https://docs.pixelfed.org/technical-documentation/config/#broadcast_driver
  279. # @dottie/validate required,oneof=pusher redis log null
  280. BROADCAST_DRIVER="redis"
  281. # @default "true"
  282. # @see https://docs.pixelfed.org/technical-documentation/config/#restrict_html_types
  283. # @dottie/validate required,boolean
  284. #RESTRICT_HTML_TYPES="true"
  285. # Passport uses encryption keys while generating secure access tokens
  286. # for your application.
  287. #
  288. # By default, the keys are stored as local files but can be set via environment
  289. # variables when that is more convenient.
  290. # @see https://docs.pixelfed.org/technical-documentation/config/#passport_private_key
  291. # @dottie/validate required
  292. #PASSPORT_PRIVATE_KEY=""
  293. # @see https://docs.pixelfed.org/technical-documentation/config/#passport_public_key
  294. # @dottie/validate required
  295. #PASSPORT_PUBLIC_KEY=""
  296. ################################################################################
  297. # database
  298. ################################################################################
  299. # Database version to use (as Docker tag)
  300. #
  301. # @see https://hub.docker.com/_/mariadb
  302. # @dottie/validate required
  303. DB_VERSION="11.2"
  304. # Here you may specify which of the database connections below
  305. # you wish to use as your default connection for all database work.
  306. #
  307. # Of course you may use many connections at once using the database library.
  308. #
  309. # Possible values:
  310. #
  311. # - "sqlite"
  312. # - "mysql" (default)
  313. # - "pgsql"
  314. # - "sqlsrv"
  315. #
  316. # @see https://docs.pixelfed.org/technical-documentation/config/#db_connection
  317. # @dottie/validate required,oneof=sqlite mysql pgsql sqlsrv
  318. DB_CONNECTION="mysql"
  319. # @see https://docs.pixelfed.org/technical-documentation/config/#db_host
  320. # @dottie/validate required,hostname
  321. DB_HOST="db"
  322. # @see https://docs.pixelfed.org/technical-documentation/config/#db_username
  323. # @dottie/validate required
  324. DB_USERNAME="pixelfed"
  325. # The password to your database. Please make it secure.
  326. # Use a site like https://pwgen.io/ to generate it
  327. #
  328. # @see https://docs.pixelfed.org/technical-documentation/config/#db_password
  329. # @dottie/validate required
  330. DB_PASSWORD=
  331. # @see https://docs.pixelfed.org/technical-documentation/config/#db_database
  332. # @dottie/validate required
  333. DB_DATABASE="pixelfed_prod"
  334. # Use "3306" for MySQL/MariaDB and "5432" for PostgreeSQL
  335. #
  336. # @see https://docs.pixelfed.org/technical-documentation/config/#db_port
  337. # @dottie/validate required,number
  338. DB_PORT="3306"
  339. # Automatically run [artisan migrate --force] if new migrations are detected.
  340. # @dottie/validate required,boolean
  341. DB_APPLY_NEW_MIGRATIONS_AUTOMATICALLY="false"
  342. ################################################################################
  343. # mail
  344. ################################################################################
  345. # Laravel supports both SMTP and PHP’s “mail” function as drivers for the sending of e-mail.
  346. # You may specify which one you’re using throughout your application here.
  347. #
  348. # Possible values:
  349. #
  350. # "smtp" (default)
  351. # "sendmail"
  352. # "mailgun"
  353. # "mandrill"
  354. # "ses"
  355. # "sparkpost"
  356. # "log"
  357. # "array"
  358. #
  359. # @default "smtp"
  360. # @see https://docs.pixelfed.org/technical-documentation/config/#mail_driver
  361. # @dottie/validate required,oneof=smtp sendmail mailgun mandrill ses sparkpost log array
  362. #MAIL_DRIVER="smtp"
  363. # The host address of the SMTP server used by your applications.
  364. #
  365. # A default option is provided that is compatible with the Mailgun mail service which will provide reliable deliveries.
  366. #
  367. # @default "smtp.mailgun.org"
  368. # @see https://docs.pixelfed.org/technical-documentation/config/#mail_host
  369. # @dottie/validate required_with=MAIL_DRIVER,fqdn
  370. #MAIL_HOST="smtp.mailgun.org"
  371. # This is the SMTP port used by your application to deliver e-mails to users of the application.
  372. #
  373. # Like the host we have set this value to stay compatible with the Mailgun e-mail application by default.
  374. #
  375. # @default 587.
  376. # @see https://docs.pixelfed.org/technical-documentation/config/#mail_port
  377. # @dottie/validate required_with=MAIL_DRIVER,number
  378. #MAIL_PORT="587"
  379. # Here, you may specify a name and address that is used globally for all e-mails that are sent by your application.
  380. #
  381. # You may wish for all e-mails sent by your application to be sent from the same address.
  382. #
  383. # @default "bot@example.com"
  384. # @see https://docs.pixelfed.org/technical-documentation/config/#mail_from_address
  385. # @dottie/validate required_with=MAIL_DRIVER,email,ne=__CHANGE_ME__
  386. #MAIL_FROM_ADDRESS="__CHANGE_ME__"
  387. # The 'name' you send e-mail from
  388. #
  389. # @default "Example"
  390. # @see https://docs.pixelfed.org/technical-documentation/config/#mail_from_name
  391. # @dottie/validate required_with=MAIL_DRIVER
  392. #MAIL_FROM_NAME="${APP_NAME}"
  393. # If your SMTP server requires a username for authentication, you should set it here.
  394. #
  395. # This will get used to authenticate with your server on connection.
  396. # You may also set the “password” value below this one.
  397. #
  398. # @default ""
  399. # @see https://docs.pixelfed.org/technical-documentation/config/#mail_username
  400. # @dottie/validate required_with=MAIL_DRIVER
  401. #MAIL_USERNAME=""
  402. # @default ""
  403. # @see https://docs.pixelfed.org/technical-documentation/config/#mail_password
  404. # @dottie/validate required_with=MAIL_DRIVER
  405. #MAIL_PASSWORD=""
  406. # Here you may specify the encryption protocol that should be used when the application send e-mail messages.
  407. #
  408. # A sensible default using the transport layer security protocol should provide great security.
  409. #
  410. # @default "tls"
  411. # @see https://docs.pixelfed.org/technical-documentation/config/#mail_encryption
  412. # @dottie/validate required_with=MAIL_DRIVER
  413. #MAIL_ENCRYPTION="tls"
  414. ################################################################################
  415. # redis
  416. ################################################################################
  417. # @default "phpredis"
  418. # @see https://docs.pixelfed.org/technical-documentation/config/#redis_client
  419. # @dottie/validate required
  420. #REDIS_CLIENT="phpredis"
  421. # @default "tcp"
  422. # @see https://docs.pixelfed.org/technical-documentation/config/#redis_scheme
  423. # @dottie/validate required
  424. #REDIS_SCHEME="tcp"
  425. # @default "localhost"
  426. # @see https://docs.pixelfed.org/technical-documentation/config/#redis_host
  427. # @dottie/validate required
  428. REDIS_HOST="redis"
  429. # @default "null" (not set/commented out).
  430. # @see https://docs.pixelfed.org/technical-documentation/config/#redis_password
  431. # @dottie/validate omitempty
  432. #REDIS_PASSWORD=
  433. # @default "6379"
  434. # @see https://docs.pixelfed.org/technical-documentation/config/#redis_port
  435. # @dottie/validate required,number
  436. REDIS_PORT="6379"
  437. # @default "0"
  438. # @see https://docs.pixelfed.org/technical-documentation/config/#redis_database
  439. # @dottie/validate required,number
  440. #REDIS_DATABASE="0"
  441. ################################################################################
  442. # experiments
  443. ################################################################################
  444. # Text only posts (alpha).
  445. #
  446. # @default "false"
  447. # @see https://docs.pixelfed.org/technical-documentation/config/#exp_top
  448. # @dottie/validate required,boolean
  449. #EXP_TOP="false"
  450. # Poll statuses (alpha).
  451. #
  452. # @default "false"
  453. # @see https://docs.pixelfed.org/technical-documentation/config/#exp_polls
  454. # @dottie/validate required,boolean
  455. #EXP_POLLS="false"
  456. # Cached public timeline for larger instances (beta).
  457. #
  458. # @default "false"
  459. # @see https://docs.pixelfed.org/technical-documentation/config/#exp_cpt
  460. # @dottie/validate required,boolean
  461. #EXP_CPT="false"
  462. # Enforce Mastodon API Compatibility (alpha).
  463. #
  464. # @default "true"
  465. # @see https://docs.pixelfed.org/technical-documentation/config/#exp_emc
  466. # @dottie/validate required,boolean
  467. #EXP_EMC="true"
  468. ################################################################################
  469. # ActivityPub
  470. ################################################################################
  471. # @default "false"
  472. # @see https://docs.pixelfed.org/technical-documentation/config/#activity_pub
  473. # @dottie/validate required,boolean
  474. #ACTIVITY_PUB="true"
  475. # @default "true"
  476. # @see https://docs.pixelfed.org/technical-documentation/config/#ap_remote_follow
  477. # @dottie/validate required,boolean
  478. #AP_REMOTE_FOLLOW="true"
  479. # @default "true"
  480. # @see https://docs.pixelfed.org/technical-documentation/config/#ap_sharedinbox
  481. # @dottie/validate required,boolean
  482. #AP_SHAREDINBOX="true"
  483. # @default "true"
  484. # @see https://docs.pixelfed.org/technical-documentation/config/#ap_inbox
  485. # @dottie/validate required,boolean
  486. #AP_INBOX="true"
  487. # @default "true"
  488. # @see https://docs.pixelfed.org/technical-documentation/config/#ap_outbox
  489. # @dottie/validate required,boolean
  490. #AP_OUTBOX="true"
  491. ################################################################################
  492. # Federation
  493. ################################################################################
  494. # @default "true"
  495. # @see https://docs.pixelfed.org/technical-documentation/config/#atom_feeds
  496. # @dottie/validate required,boolean
  497. #ATOM_FEEDS="true"
  498. # @default "true"
  499. # @see https://docs.pixelfed.org/technical-documentation/config/#nodeinfo
  500. # @dottie/validate required,boolean
  501. #NODEINFO="true"
  502. # @default "true"
  503. # @see https://docs.pixelfed.org/technical-documentation/config/#webfinger
  504. # @dottie/validate required,boolean
  505. #WEBFINGER="true"
  506. ################################################################################
  507. # Storage
  508. ################################################################################
  509. # Store media on object storage like S3, Digital Ocean Spaces, Rackspace
  510. #
  511. # @default "false"
  512. # @see https://docs.pixelfed.org/technical-documentation/config/#pf_enable_cloud
  513. # @dottie/validate required,boolean
  514. #PF_ENABLE_CLOUD="false"
  515. # Many applications store files both locally and in the cloud.
  516. #
  517. # For this reason, you may specify a default “cloud” driver here.
  518. # This driver will be bound as the Cloud disk implementation in the container.
  519. #
  520. # @default "s3"
  521. # @see https://docs.pixelfed.org/technical-documentation/config/#filesystem_cloud
  522. # @dottie/validate required_with=PF_ENABLE_CLOUD
  523. #FILESYSTEM_CLOUD="s3"
  524. # @default true.
  525. # @see https://docs.pixelfed.org/technical-documentation/config/#media_delete_local_after_cloud
  526. # @dottie/validate required_with=PF_ENABLE_CLOUD,boolean
  527. #MEDIA_DELETE_LOCAL_AFTER_CLOUD="true"
  528. # @see https://docs.pixelfed.org/technical-documentation/config/#aws_access_key_id
  529. # @dottie/validate required_if=FILESYSTEM_CLOUD s3
  530. #AWS_ACCESS_KEY_ID=""
  531. # @see https://docs.pixelfed.org/technical-documentation/config/#aws_secret_access_key
  532. # @dottie/validate required_if=FILESYSTEM_CLOUD s3
  533. #AWS_SECRET_ACCESS_KEY=""
  534. # @see https://docs.pixelfed.org/technical-documentation/config/#aws_default_region
  535. # @dottie/validate required_if=FILESYSTEM_CLOUD s3
  536. #AWS_DEFAULT_REGION=""
  537. # @see https://docs.pixelfed.org/technical-documentation/config/#aws_bucket
  538. # @dottie/validate required_if=FILESYSTEM_CLOUD s3
  539. #AWS_BUCKET=""
  540. # @see https://docs.pixelfed.org/technical-documentation/config/#aws_url
  541. # @dottie/validate required_if=FILESYSTEM_CLOUD s3
  542. #AWS_URL=""
  543. # @see https://docs.pixelfed.org/technical-documentation/config/#aws_endpoint
  544. # @dottie/validate required_if=FILESYSTEM_CLOUD s3
  545. #AWS_ENDPOINT=""
  546. # @see https://docs.pixelfed.org/technical-documentation/config/#aws_use_path_style_endpoint
  547. # @dottie/validate required_if=FILESYSTEM_CLOUD s3
  548. #AWS_USE_PATH_STYLE_ENDPOINT="false"
  549. ################################################################################
  550. # COSTAR
  551. ################################################################################
  552. # Comma-separated list of domains to block.
  553. #
  554. # @default null (not set/commented out).
  555. # @see https://docs.pixelfed.org/technical-documentation/config/#cs_blocked_domains
  556. # @dottie/validate
  557. #CS_BLOCKED_DOMAINS=""
  558. # Comma-separated list of domains to add warnings.
  559. #
  560. # @default null (not set/commented out).
  561. # @see https://docs.pixelfed.org/technical-documentation/config/#cs_cw_domains
  562. # @dottie/validate
  563. #CS_CW_DOMAINS=""
  564. # Comma-separated list of domains to remove from public timelines.
  565. #
  566. # @default null (not set/commented out).
  567. # @see https://docs.pixelfed.org/technical-documentation/config/#cs_unlisted_domains
  568. # @dottie/validate
  569. #CS_UNLISTED_DOMAINS=""
  570. # Comma-separated list of keywords to block.
  571. #
  572. # @default null (not set/commented out).
  573. # @see https://docs.pixelfed.org/technical-documentation/config/#cs_blocked_keywords
  574. # @dottie/validate
  575. #CS_BLOCKED_KEYWORDS=""
  576. # Comma-separated list of keywords to add warnings.
  577. #
  578. # @default null (not set/commented out).
  579. # @see https://docs.pixelfed.org/technical-documentation/config/#cs_cw_keywords
  580. # @dottie/validate
  581. #CS_CW_KEYWORDS=""
  582. # Comma-separated list of keywords to remove from public timelines.
  583. #
  584. # @default null (not set/commented out).
  585. # @see https://docs.pixelfed.org/technical-documentation/config/#cs_unlisted_keywords
  586. # @dottie/validate
  587. #CS_UNLISTED_KEYWORDS=""
  588. # @default null (not set/commented out).
  589. # @see https://docs.pixelfed.org/technical-documentation/config/#cs_blocked_actor
  590. # @dottie/validate
  591. #CS_BLOCKED_ACTOR=""
  592. # @default null (not set/commented out).
  593. # @see https://docs.pixelfed.org/technical-documentation/config/#cs_cw_actor
  594. # @dottie/validate
  595. #CS_CW_ACTOR=""
  596. # @default null (not set/commented out).
  597. # @see https://docs.pixelfed.org/technical-documentation/config/#cs_unlisted_actor
  598. # @dottie/validate
  599. #CS_UNLISTED_ACTOR=""
  600. ################################################################################
  601. # logging
  602. ################################################################################
  603. # Possible values:
  604. #
  605. # - "stack" (default)
  606. # - "single"
  607. # - "daily"
  608. # - "slack"
  609. # - "stderr"
  610. # - "syslog"
  611. # - "errorlog"
  612. # - "null"
  613. # - "emergency"
  614. # - "media"
  615. #
  616. # @default "stack"
  617. # @dottie/validate required,oneof=stack single daily slack stderr syslog errorlog null emergency media
  618. LOG_CHANNEL="stderr"
  619. # Used by single, stderr and syslog.
  620. #
  621. # @default "debug"
  622. # @see https://docs.pixelfed.org/technical-documentation/config/#log_level
  623. # @dottie/validate required,oneof=debug info notice warning error critical alert emergency
  624. #LOG_LEVEL="debug"
  625. # Used by stderr.
  626. #
  627. # @default ""
  628. # @see https://docs.pixelfed.org/technical-documentation/config/#log_stderr_formatter
  629. #LOG_STDERR_FORMATTER=""
  630. # Used by slack.
  631. #
  632. # @default ""
  633. # @see https://docs.pixelfed.org/technical-documentation/config/#log_slack_webhook_url
  634. # @dottie/validate required,http_url
  635. #LOG_SLACK_WEBHOOK_URL=""
  636. ################################################################################
  637. # queue
  638. ################################################################################
  639. # Possible values:
  640. # - "sync" (default)
  641. # - "database"
  642. # - "beanstalkd"
  643. # - "sqs"
  644. # - "redis"
  645. # - "null"
  646. #
  647. # @default "sync"
  648. # @see https://docs.pixelfed.org/technical-documentation/config/#queue_driver
  649. # @dottie/validate required,oneof=sync database beanstalkd sqs redis null
  650. QUEUE_DRIVER="redis"
  651. # @default "your-public-key"
  652. # @see https://docs.pixelfed.org/technical-documentation/config/#sqs_key
  653. # @dottie/validate required_if=QUEUE_DRIVER sqs
  654. #SQS_KEY="your-public-key"
  655. # @default "your-secret-key"
  656. # @see https://docs.pixelfed.org/technical-documentation/config/#sqs_secret
  657. # @dottie/validate required_if=QUEUE_DRIVER sqs
  658. #SQS_SECRET="your-secret-key"
  659. # @default "https://sqs.us-east-1.amazonaws.com/your-account-id"
  660. # @see https://docs.pixelfed.org/technical-documentation/config/#sqs_prefix
  661. # @dottie/validate required_if=QUEUE_DRIVER sqs
  662. #SQS_PREFIX=""
  663. # @default "your-queue-name"
  664. # @see https://docs.pixelfed.org/technical-documentation/config/#sqs_queue
  665. # @dottie/validate required_if=QUEUE_DRIVER sqs
  666. #SQS_QUEUE="your-queue-name"
  667. # @default "us-east-1"
  668. # @see https://docs.pixelfed.org/technical-documentation/config/#sqs_region
  669. # @dottie/validate required_if=QUEUE_DRIVER sqs
  670. #SQS_REGION="us-east-1"
  671. ################################################################################
  672. # session
  673. ################################################################################
  674. # This option controls the default session “driver” that will be used on requests.
  675. #
  676. # By default, we will use the lightweight native driver but you may specify any of the other wonderful drivers provided here.
  677. #
  678. # Possible values:
  679. # - "file"
  680. # - "cookie"
  681. # - "database" (default)
  682. # - "apc"
  683. # - "memcached"
  684. # - "redis"
  685. # - "array"
  686. #
  687. # @default "database"
  688. # @dottie/validate required,oneof=file cookie database apc memcached redis array
  689. SESSION_DRIVER="redis"
  690. # Here you may specify the number of minutes that you wish the session to be allowed to remain idle before it expires.
  691. #
  692. # If you want them to immediately expire on the browser closing, set that option.
  693. #
  694. # @default 86400.
  695. # @see https://docs.pixelfed.org/technical-documentation/config/#session_lifetime
  696. # @dottie/validate required,number
  697. #SESSION_LIFETIME="86400"
  698. # Here you may change the domain of the cookie used to identify a session in your application.
  699. #
  700. # This will determine which domains the cookie is available to in your application.
  701. #
  702. # A sensible default has been set.
  703. #
  704. # @default the value of APP_DOMAIN, or null.
  705. # @see https://docs.pixelfed.org/technical-documentation/config/#session_domain
  706. # @dottie/validate required,hostname
  707. #SESSION_DOMAIN="${APP_DOMAIN}"
  708. ################################################################################
  709. # horizon
  710. ################################################################################
  711. # This prefix will be used when storing all Horizon data in Redis.
  712. #
  713. # You may modify the prefix when you are running multiple installations
  714. # of Horizon on the same server so that they don’t have problems.
  715. #
  716. # @default "horizon-"
  717. # @see https://docs.pixelfed.org/technical-documentation/config/#horizon_prefix
  718. # @dottie/validate required
  719. #HORIZON_PREFIX="horizon-"
  720. # @default "false"
  721. # @see https://docs.pixelfed.org/technical-documentation/config/#horizon_darkmode
  722. # @dottie/validate required,boolean
  723. #HORIZON_DARKMODE="false"
  724. # This value (in MB) describes the maximum amount of memory (in MB) the Horizon worker
  725. # may consume before it is terminated and restarted.
  726. #
  727. # You should set this value according to the resources available to your server.
  728. #
  729. # @default "64"
  730. # @dottie/validate required,number
  731. #HORIZON_MEMORY_LIMIT="64"
  732. # @see https://docs.pixelfed.org/technical-documentation/config/#horizon_balance_strategy
  733. # @dottie/validate required
  734. #HORIZON_BALANCE_STRATEGY="auto"
  735. # @see https://docs.pixelfed.org/technical-documentation/config/#horizon_min_processes
  736. # @dottie/validate required,number
  737. #HORIZON_MIN_PROCESSES="1"
  738. # @see https://docs.pixelfed.org/technical-documentation/config/#horizon_max_processes
  739. # @dottie/validate required,number
  740. #HORIZON_MAX_PROCESSES="20"
  741. # @see https://docs.pixelfed.org/technical-documentation/config/#horizon_supervisor_memory
  742. # @dottie/validate required,number
  743. #HORIZON_SUPERVISOR_MEMORY="64"
  744. # @see https://docs.pixelfed.org/technical-documentation/config/#horizon_supervisor_tries
  745. # @dottie/validate required,number
  746. #HORIZON_SUPERVISOR_TRIES="3"
  747. # @see https://docs.pixelfed.org/technical-documentation/config/#horizon_supervisor_nice
  748. # @dottie/validate required,number
  749. #HORIZON_SUPERVISOR_NICE="0"
  750. # @see https://docs.pixelfed.org/technical-documentation/config/#horizon_supervisor_timeout
  751. # @dottie/validate required,number
  752. #HORIZON_SUPERVISOR_TIMEOUT="300"
  753. ################################################################################
  754. # docker shared
  755. ################################################################################
  756. # A random 32-character string to be used as an encryption key.
  757. #
  758. # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  759. # ! NOTE: This will be auto-generated by Docker during bootstrap
  760. # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  761. #
  762. # This key is used by the Illuminate encrypter service and should be set to a random,
  763. # 32 character string, otherwise these encrypted strings will not be safe.
  764. #
  765. # @see https://docs.pixelfed.org/technical-documentation/config/#app_key
  766. # @dottie/validate required
  767. APP_KEY=
  768. # Prefix for container names (without any dash at the end)
  769. # @dottie/validate required
  770. DOCKER_ALL_CONTAINER_NAME_PREFIX="${APP_DOMAIN}"
  771. # How often Docker health check should run for all services
  772. #
  773. # Can be overridden by individual [DOCKER_*_HEALTHCHECK_INTERVAL] settings further down
  774. #
  775. # @default "10s"
  776. # @dottie/validate required
  777. DOCKER_ALL_DEFAULT_HEALTHCHECK_INTERVAL="10s"
  778. # Path (relative to the docker-compose.yml) or absolute (/some/other/path) where containers will *all* data
  779. # will be stored (data, config, overrides)
  780. #
  781. # @default "./docker-compose-state"
  782. # @dottie/validate required,dir
  783. DOCKER_ALL_HOST_ROOT_PATH="./docker-compose-state"
  784. # Path (relative to the docker-compose.yml) or absolute (/some/other/path) where containers will store their data
  785. #
  786. # @default "${DOCKER_ALL_HOST_ROOT_PATH}/data"
  787. # @dottie/validate required,dir
  788. DOCKER_ALL_HOST_DATA_ROOT_PATH="${DOCKER_ALL_HOST_ROOT_PATH:?error}/data"
  789. # Path (relative to the docker-compose.yml) or absolute (/some/other/path) where containers will store their confguration
  790. #
  791. # @default "${DOCKER_ALL_HOST_ROOT_PATH}/config"
  792. # @dottie/validate required,dir
  793. DOCKER_ALL_HOST_CONFIG_ROOT_PATH="${DOCKER_ALL_HOST_ROOT_PATH:?error}/config"
  794. # Path (relative to the docker-compose.yml) or absolute (/some/other/path) where containers will store overrides
  795. #
  796. # @default "${DOCKER_ALL_HOST_ROOT_PATH}/overrides"
  797. # @dottie/validate required,dir
  798. DOCKER_APP_HOST_OVERRIDES_PATH="${DOCKER_ALL_HOST_ROOT_PATH:?error}/overrides"
  799. # Set timezone used by *all* containers - these must be in sync.
  800. #
  801. # ! Do not edit your timezone once the service is running - or things will break!
  802. #
  803. # @see https://www.php.net/manual/en/timezones.php
  804. # @dottie/validate required,timezone
  805. TZ="${APP_TIMEZONE}"
  806. ################################################################################
  807. # docker app
  808. ################################################################################
  809. # The docker tag prefix to use for pulling images, can be one of
  810. #
  811. # * latest
  812. # * <some semver release>
  813. # * staging
  814. # * edge
  815. # * branch-<some branch name>
  816. # * pr-<some merge request id>
  817. #
  818. # Combined with [DOCKER_APP_RUNTIME] and [PHP_VERSION] configured
  819. # elsewhere in this file, the final Docker tag is computed.
  820. # @dottie/validate required
  821. DOCKER_APP_RELEASE="branch-jippi-fork"
  822. # The PHP version to use for [web] and [worker] container
  823. #
  824. # Any version published on https://hub.docker.com/_/php should work
  825. #
  826. # Example:
  827. #
  828. # * 8.1
  829. # * 8.2
  830. # * 8.2.14
  831. # * latest
  832. #
  833. # Do *NOT* use the full Docker tag (e.g. "8.3.2RC1-fpm-bullseye")
  834. # *only* the version part. The rest of the full tag is derived from
  835. # the [DOCKER_APP_RUNTIME] and [PHP_DEBIAN_RELEASE] settings
  836. # @dottie/validate required
  837. DOCKER_APP_PHP_VERSION="8.2"
  838. # The container runtime to use.
  839. #
  840. # @see https://docs.pixelfed.org/running-pixelfed/docker/runtimes.html
  841. # @dottie/validate required,oneof=apache nginx fpm
  842. DOCKER_APP_RUNTIME="apache"
  843. # The Debian release variant to use of the [php] Docker image
  844. #
  845. # Examlpe: [bookworm] or [bullseye]
  846. # @dottie/validate required,oneof=bookworm bullseye
  847. DOCKER_APP_DEBIAN_RELEASE="bullseye"
  848. # The [php] Docker image base type
  849. #
  850. # @see https://docs.pixelfed.org/running-pixelfed/docker/runtimes.html
  851. # @dottie/validate required,oneof=apache fpm cli
  852. DOCKER_APP_BASE_TYPE="apache"
  853. # Image to pull the Pixelfed Docker images from.
  854. #
  855. # Example values:
  856. #
  857. # * "ghcr.io/pixelfed/pixelfed" to pull from GitHub
  858. # * "pixelfed/pixelfed" to pull from DockerHub
  859. # * "your/fork" to pull from a custom fork
  860. #
  861. # @dottie/validate required
  862. DOCKER_APP_IMAGE="ghcr.io/jippi/pixelfed"
  863. # Pixelfed version (image tag) to pull from the registry.
  864. #
  865. # @see https://github.com/pixelfed/pixelfed/pkgs/container/pixelfed
  866. # @dottie/validate required
  867. DOCKER_APP_TAG="${DOCKER_APP_RELEASE:?error}-${DOCKER_APP_RUNTIME:?error}-${DOCKER_APP_PHP_VERSION:?error}"
  868. # Path (on host system) where the [app] + [worker] container will write
  869. # its [storage] data (e.g uploads/images/profile pictures etc.).
  870. #
  871. # Path is relative (./some/other/path) to the docker-compose.yml or absolute (/some/other/path)
  872. # @dottie/validate required,dir
  873. DOCKER_APP_HOST_STORAGE_PATH="${DOCKER_ALL_HOST_DATA_ROOT_PATH:?error}/pixelfed/storage"
  874. # Path (on host system) where the [app] + [worker] container will write
  875. # its [cache] data.
  876. #
  877. # Path is relative (./some/other/path) to the docker-compose.yml or absolute (/some/other/path)
  878. # @dottie/validate required,dir
  879. DOCKER_APP_HOST_CACHE_PATH="${DOCKER_ALL_HOST_DATA_ROOT_PATH:?error}/pixelfed/cache"
  880. # Automatically run "One-time setup tasks" commands.
  881. #
  882. # If you are migrating to this docker-compose setup or have manually run the "One time setup"
  883. # tasks (https://docs.pixelfed.org/running-pixelfed/installation/#setting-up-services)
  884. # you can set this to "0" to prevent them from running.
  885. #
  886. # Otherwise, leave it at "1" to have them run *once*.
  887. # @dottie/validate required,boolean
  888. #DOCKER_APP_RUN_ONE_TIME_SETUP_TASKS="1"
  889. # A space-seperated list of paths (inside the container) to *recursively* [chown]
  890. # to the container user/group id (UID/GID) in case of permission issues.
  891. #
  892. # ! You should *not* leave this on permanently, at it can significantly slow down startup
  893. # ! time for the container, and during normal operations there should never be permission
  894. # ! issues. Please report a bug if you see behavior requiring this to be permanently on
  895. #
  896. # Example: "/var/www/storage /var/www/bootstrap/cache"
  897. # @dottie/validate required
  898. #DOCKER_APP_ENSURE_OWNERSHIP_PATHS=""
  899. # Enable Docker Entrypoint debug mode (will call [set -x] in bash scripts)
  900. # by setting this to "1"
  901. # @dottie/validate required,boolean
  902. #DOCKER_APP_ENTRYPOINT_DEBUG="0"
  903. # Show the "diff" when applying templating to files
  904. #
  905. # @default "1"
  906. # @dottie/validate required,boolean
  907. #DOCKER_APP_ENTRYPOINT_SHOW_TEMPLATE_DIFF="1"
  908. # Docker entrypoints that should be skipped on startup
  909. # @default ""
  910. #ENTRYPOINT_SKIP_SCRIPTS=""
  911. # List of extra APT packages (separated by space) to install when building
  912. # locally using [docker compose build].
  913. #
  914. # @see https://github.com/pixelfed/pixelfed/blob/dev/docker/customizing.md
  915. # @dottie/validate required
  916. #DOCKER_APP_APT_PACKAGES_EXTRA=""
  917. # List of *extra* PECL extensions (separated by space) to install when
  918. # building locally using [docker compose build].
  919. #
  920. # @see https://github.com/pixelfed/pixelfed/blob/dev/docker/customizing.md
  921. # @dottie/validate required
  922. #DOCKER_APP_PHP_PECL_EXTENSIONS_EXTRA=""
  923. # List of *extra* PHP extensions (separated by space) to install when
  924. # building locally using [docker compose build].
  925. #
  926. # @see https://github.com/pixelfed/pixelfed/blob/dev/docker/customizing.md
  927. # @dottie/validate required
  928. #DOCKER_APP_PHP_EXTENSIONS_EXTRA=""
  929. # @default "128M"
  930. # @see https://www.php.net/manual/en/ini.core.php#ini.memory-limit
  931. # @dottie/validate required
  932. #DOCKER_APP_PHP_MEMORY_LIMIT="128M"
  933. # @default "E_ALL & ~E_DEPRECATED & ~E_STRICT"
  934. # @see http://php.net/error-reporting
  935. # @dottie/validate required
  936. #DOCKER_APP_PHP_ERROR_REPORTING="E_ALL & ~E_DEPRECATED & ~E_STRICT"
  937. # @default "off"
  938. # @see http://php.net/display-errors
  939. # @dottie/validate required,oneof=on off
  940. #DOCKER_APP_PHP_DISPLAY_ERRORS="off"
  941. # Enables the opcode cache.
  942. #
  943. # When disabled, code is not optimised or cached.
  944. #
  945. # @default "1"
  946. # @see https://www.php.net/manual/en/opcache.configuration.php#ini.opcache.enable
  947. # @dottie/validate required,oneof=0 1
  948. #DOCKER_APP_PHP_OPCACHE_ENABLE="1"
  949. # If enabled, OPcache will check for updated scripts every [opcache.revalidate_freq] seconds.
  950. #
  951. # When this directive is disabled, you must reset OPcache manually via opcache_reset(),
  952. # opcache_invalidate() or by restarting the Web server for changes to the filesystem to take effect.
  953. #
  954. # @default "0"
  955. # @see https://www.php.net/manual/en/opcache.configuration.php#ini.opcache.validate-timestamps
  956. # @dottie/validate required,oneof=0 1
  957. #DOCKER_APP_PHP_OPCACHE_VALIDATE_TIMESTAMPS="0"
  958. # How often to check script timestamps for updates, in seconds.
  959. # 0 will result in OPcache checking for updates on every request.
  960. #
  961. # @default "2"
  962. # @see https://www.php.net/manual/en/opcache.configuration.php#ini.opcache.revalidate-freq
  963. # @dottie/validate required,oneof=0 1 2
  964. #DOCKER_APP_PHP_OPCACHE_REVALIDATE_FREQ="2"
  965. # When doing [docker compose build], should the frontend be built in the Dockerfile?
  966. # If set to "0" the included pre-compiled frontend will be used.
  967. #
  968. # @default "0"
  969. # @dottie/validate required,oneof=0 1
  970. #DOCKER_APP_BUILD_FRONTEND="0"
  971. ################################################################################
  972. # docker redis
  973. ################################################################################
  974. # Set this to a non-empty value (e.g. "disabled") to disable the [redis] service
  975. #DOCKER_REDIS_PROFILE=
  976. # Redis version to use as Docker tag
  977. #
  978. # @see https://hub.docker.com/_/redis
  979. # @dottie/validate required
  980. DOCKER_REDIS_VERSION="7.2"
  981. # Path (on host system) where the [redis] container will store its data
  982. #
  983. # Path is relative (./some/other/path) to the docker-compose.yml or absolute (/some/other/path)
  984. # @dottie/validate required,dir
  985. DOCKER_REDIS_HOST_DATA_PATH="${DOCKER_ALL_HOST_DATA_ROOT_PATH:?error}/redis"
  986. # Port that Redis will listen on *outside* the container (e.g. the host machine)
  987. # @dottie/validate required,number
  988. DOCKER_REDIS_HOST_PORT="${REDIS_PORT:?error}"
  989. # The filename that Redis should store its config file within
  990. #
  991. # NOTE: The file *MUST* exists (even empty) before enabling this setting!
  992. #
  993. # Use a command like [touch "${DOCKER_ALL_HOST_CONFIG_ROOT_PATH}/redis/redis.conf"] to create it.
  994. #
  995. # @default ""
  996. # @dottie/validate required
  997. #DOCKER_REDIS_CONFIG_FILE="/etc/redis/redis.conf"
  998. # How often Docker health check should run for [redis] service
  999. #
  1000. # @default "10s"
  1001. # @dottie/validate required
  1002. DOCKER_REDIS_HEALTHCHECK_INTERVAL="${DOCKER_ALL_DEFAULT_HEALTHCHECK_INTERVAL:?error}"
  1003. ################################################################################
  1004. # docker db
  1005. ################################################################################
  1006. # Set this to a non-empty value (e.g. "disabled") to disable the [db] service
  1007. #DOCKER_DB_PROFILE=
  1008. # Docker image for the DB service
  1009. # @dottie/validate required
  1010. DOCKER_DB_IMAGE="mariadb:${DB_VERSION}"
  1011. # Command to pass to the [db] server container
  1012. # @dottie/validate required
  1013. DOCKER_DB_COMMAND="--default-authentication-plugin=mysql_native_password"
  1014. # Path (on host system) where the [db] container will store its data
  1015. #
  1016. # Path is relative (./some/other/path) to the docker-compose.yml or absolute (/some/other/path)
  1017. # @dottie/validate required,dir
  1018. DOCKER_DB_HOST_DATA_PATH="${DOCKER_ALL_HOST_DATA_ROOT_PATH:?error}/db"
  1019. # Path (inside the container) where the [db] will store its data.
  1020. #
  1021. # Path MUST be absolute.
  1022. #
  1023. # For MySQL this should be [/var/lib/mysql]
  1024. # For PostgreSQL this should be [/var/lib/postgresql/data]
  1025. # @dottie/validate required
  1026. DOCKER_DB_CONTAINER_DATA_PATH="/var/lib/mysql"
  1027. # Port that the database will listen on *OUTSIDE* the container (e.g. the host machine)
  1028. #
  1029. # Use "3306" for MySQL/MariaDB and "5432" for PostgreeSQL
  1030. # @dottie/validate required,number
  1031. DOCKER_DB_HOST_PORT="${DB_PORT:?error}"
  1032. # Port that the database will listen on *INSIDE* the container
  1033. #
  1034. # Use "3306" for MySQL/MariaDB and "5432" for PostgreeSQL
  1035. # @dottie/validate required,number
  1036. DOCKER_DB_CONTAINER_PORT="${DB_PORT:?error}"
  1037. # root password for the database. By default uses DB_PASSWORD
  1038. # but can be changed in situations where you are migrating
  1039. # to the included docker-compose and have a different password
  1040. # set already
  1041. #
  1042. # @dottie/validate required
  1043. DOCKER_DB_ROOT_PASSWORD="${DB_PASSWORD:?error}"
  1044. # How often Docker health check should run for [db] service
  1045. # @dottie/validate required
  1046. DOCKER_DB_HEALTHCHECK_INTERVAL="${DOCKER_ALL_DEFAULT_HEALTHCHECK_INTERVAL:?error}"
  1047. ################################################################################
  1048. # docker web
  1049. ################################################################################
  1050. # Set this to a non-empty value (e.g. "disabled") to disable the [web] service
  1051. #DOCKER_WEB_PROFILE=""
  1052. # Port to expose [web] container will listen on *outside* the container (e.g. the host machine) for *HTTP* traffic only
  1053. # @dottie/validate required,number
  1054. DOCKER_WEB_PORT_EXTERNAL_HTTP="8080"
  1055. # How often Docker health check should run for [web] service
  1056. # @dottie/validate required
  1057. DOCKER_WEB_HEALTHCHECK_INTERVAL="${DOCKER_ALL_DEFAULT_HEALTHCHECK_INTERVAL:?error}"
  1058. ################################################################################
  1059. # docker worker
  1060. ################################################################################
  1061. # Set this to a non-empty value (e.g. "disabled") to disable the [worker] service
  1062. #DOCKER_WORKER_PROFILE=""
  1063. # How often Docker health check should run for [worker] service
  1064. # @dottie/validate required
  1065. DOCKER_WORKER_HEALTHCHECK_INTERVAL="${DOCKER_ALL_DEFAULT_HEALTHCHECK_INTERVAL:?error}"
  1066. ################################################################################
  1067. # docker proxy
  1068. ################################################################################
  1069. # Set this to a non-empty value (e.g. "disabled") to disable the [proxy] and [proxy-acme] service
  1070. #DOCKER_PROXY_PROFILE=
  1071. # Set this to a non-empty value (e.g. "disabled") to disable the [proxy-acme] service
  1072. #DOCKER_PROXY_ACME_PROFILE="${DOCKER_PROXY_PROFILE:-}"
  1073. # The version of nginx-proxy to use
  1074. #
  1075. # @see https://hub.docker.com/r/nginxproxy/nginx-proxy
  1076. # @dottie/validate required
  1077. DOCKER_PROXY_VERSION="1.4"
  1078. # How often Docker health check should run for [proxy] service
  1079. # @dottie/validate required
  1080. DOCKER_PROXY_HEALTHCHECK_INTERVAL="${DOCKER_ALL_DEFAULT_HEALTHCHECK_INTERVAL:?error}"
  1081. # Port that the [proxy] will listen on *outside* the container (e.g. the host machine) for HTTP traffic
  1082. # @dottie/validate required,number
  1083. DOCKER_PROXY_HOST_PORT_HTTP="80"
  1084. # Port that the [proxy] will listen on *outside* the container (e.g. the host machine) for HTTPS traffic
  1085. # @dottie/validate required,number
  1086. DOCKER_PROXY_HOST_PORT_HTTPS="443"
  1087. # Path to the Docker socket on the *host*
  1088. # @dottie/validate required,file
  1089. DOCKER_PROXY_HOST_DOCKER_SOCKET_PATH="/var/run/docker.sock"
  1090. # The host to request LetsEncrypt certificate for
  1091. # @dottie/validate required,fqdn
  1092. DOCKER_PROXY_LETSENCRYPT_HOST="${APP_DOMAIN}"
  1093. # The e-mail to use for Lets Encrypt certificate requests.
  1094. # @dottie/validate required,email
  1095. DOCKER_PROXY_LETSENCRYPT_EMAIL="${INSTANCE_CONTACT_EMAIL:?error}"
  1096. # Lets Encrypt staging/test servers for certificate requests.
  1097. #
  1098. # Setting this to any value will change to letsencrypt test servers.
  1099. #DOCKER_PROXY_LETSENCRYPT_TEST="1"