start-wekan.sh 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586
  1. #!/bin/bash
  2. # If you want to restart even on crash, uncomment while and done lines.
  3. #while true; do
  4. cd .build/bundle
  5. #-------------------- REQUIRED SETTINGS START --------------------
  6. # WRITEABLE PATH REQUIRED TO EXISTS AND BE WRITABLE FOR ATTACHMENTS TO WORK
  7. export WRITABLE_PATH=..
  8. #-----------------------------------------------------------------
  9. # MongoDB database URL required
  10. export MONGO_URL=mongodb://127.0.0.1:27017/wekan
  11. # MONGO_PASSWORD_FILE : MongoDB password file (Docker secrets)
  12. # example : export MONGO_PASSWORD_FILE=/run/secrets/mongo_password
  13. #export MONGO_PASSWORD_FILE=
  14. #-----------------------------------------------------------------
  15. # If port is 80, must change ROOT_URL to: http://YOUR-WEKAN-SERVER-IPv4-ADDRESS , like http://192.168.0.100
  16. # If port is not 80, must change ROOT_URL to: http://YOUR-WEKAN-SERVER-IPv4-ADDRESS:YOUR-PORT-NUMBER , like http://192.168.0.100:2000
  17. # If ROOT_URL is not correct, these do not work: translations, uploading attachments.
  18. export ROOT_URL=http://localhost:2000
  19. # If at public Internet, required different SSL/TLS settings:
  20. # - https://github.com/wekan/wekan/wiki/Settings
  21. # - Also at wiki: SSL/TLS config for Caddy/Nginx/Apache
  22. #-----------------------------------------------------------------
  23. # Must change to YOUR-PORT-NUMBER:
  24. export PORT=2000
  25. #-------------------- REQUIRED SETTINGS END ----------------------
  26. #
  27. #-------------------- OPTIONAL SETTINGS START --------------------
  28. # If at public Internet, required different settings:
  29. # - For ROOT_URL: https://github.com/wekan/wekan/wiki/Settings
  30. # - For SSL/TLS, also at above wiki right menu: config for Caddy/Nginx/Apache
  31. #-----------------------------------------------------------------
  32. # Debug OIDC OAuth2 etc.
  33. #export DEBUG=true
  34. #-----------------------------------------------------------------
  35. # ==== AWS S3 FOR FILES ====
  36. # Any region. For example:
  37. # us-standard,us-west-1,us-west-2,
  38. # eu-west-1,eu-central-1,
  39. # ap-southeast-1,ap-northeast-1,sa-east-1
  40. #
  41. #export S3='{"s3":{"key": "xxx", "secret": "xxx", "bucket": "xxx", "region": "xxx"}}'
  42. # S3_SECRET_FILE : S3 secret file (Docker secrets)
  43. # example : export S3_SECRET_FILE=/run/secrets/s3_secret
  44. #export S3_SECRET_FILE=
  45. #-----------------------------------------------------------------
  46. # https://github.com/wekan/wekan/wiki/Troubleshooting-Mail
  47. # https://github.com/wekan/wekan-mongodb/blob/master/docker-compose.yml
  48. export MAIL_URL=smtp://user:pass@mailserver.example.com:25/
  49. export MAIL_FROM='Wekan Boards <info@example.com>'
  50. # Currently MAIL_SERVICE is not in use.
  51. #export MAIL_SERVICE=Outlook365
  52. #export MAIL_SERVICE_USER=firstname.lastname@hotmail.com
  53. #export MAIL_SERVICE_PASSWORD=SecretPassword
  54. # MAIL_SERVICE_PASSWORD_FILE : Password file for mail service (Docker secrets)
  55. # example : export MAIL_SERVICE_PASSWORD_FILE=/run/secrets/mail_service_password
  56. #export MAIL_SERVICE_PASSWORD_FILE=
  57. #---------------------------------------------
  58. #export KADIRA_OPTIONS_ENDPOINT=http://127.0.0.1:11011
  59. #---------------------------------------------
  60. #---------------------------------------------
  61. # ==== NUMBER OF SEARCH RESULTS PER PAGE BY DEFAULT ====
  62. #export RESULTS_PER_PAGE=20
  63. #---------------------------------------------
  64. # Wekan Export Board works when WITH_API=true.
  65. # If you disable Wekan API with false, Export Board does not work.
  66. export WITH_API=true
  67. #---------------------------------------------------------------
  68. # ==== AFTER OIDC LOGIN, ADD USERS AUTOMATICALLY TO THIS BOARD ID ====
  69. # https://github.com/wekan/wekan/pull/5098
  70. #- DEFAULT_BOARD_ID=abcd1234
  71. #---------------------------------------------------------------
  72. # ==== PASSWORD BRUTE FORCE PROTECTION ====
  73. #https://atmospherejs.com/lucasantoniassi/accounts-lockout
  74. #Defaults below. Uncomment to change. wekan/server/accounts-lockout.js
  75. #export ACCOUNTS_LOCKOUT_KNOWN_USERS_FAILURES_BEFORE=3
  76. #export ACCOUNTS_LOCKOUT_KNOWN_USERS_PERIOD=60
  77. #export ACCOUNTS_LOCKOUT_KNOWN_USERS_FAILURE_WINDOW=15
  78. #export ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURES_BERORE=3
  79. #export ACCOUNTS_LOCKOUT_UNKNOWN_USERS_LOCKOUT_PERIOD=60
  80. #export ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURE_WINDOW=15
  81. #---------------------------------------------------------------
  82. # ==== ACCOUNT OPTIONS ====
  83. # https://docs.meteor.com/api/accounts-multi.html#AccountsCommon-config
  84. # Defaults below. Uncomment to change. wekan/server/accounts-common.js
  85. # - ACCOUNTS_COMMON_LOGIN_EXPIRATION_IN_DAYS=90
  86. #---------------------------------------------------------------
  87. # ==== Allow configuration to validate uploaded attachments ====
  88. #export ATTACHMENTS_UPLOAD_EXTERNAL_PROGRAM="/usr/local/bin/avscan {file}"
  89. #export ATTACHMENTS_UPLOAD_MIME_TYPES="image/*,text/*"
  90. #export ATTACHMENTS_UPLOAD_MAX_SIZE=5000000
  91. #---------------------------------------------------------------
  92. # ==== Allow configuration to validate uploaded avatars ====
  93. #export AVATARS_UPLOAD_EXTERNAL_PROGRAM="/usr/local/bin/avscan {file}"
  94. #export AVATARS_UPLOAD_MIME_TYPES="image/*"
  95. #export AVATARS_UPLOAD_MAX_SIZE=500000
  96. #---------------------------------------------------------------
  97. # ==== RICH TEXT EDITOR IN CARD COMMENTS ====
  98. # https://github.com/wekan/wekan/pull/2560
  99. export RICHER_CARD_COMMENT_EDITOR=false
  100. #---------------------------------------------------------------
  101. # ==== CARD OPENED, SEND WEBHOOK MESSAGE ====
  102. export CARD_OPENED_WEBHOOK_ENABLED=false
  103. #---------------------------------------------------------------
  104. # ==== Allow to shrink attached/pasted image ====
  105. # https://github.com/wekan/wekan/pull/2544
  106. #export MAX_IMAGE_PIXEL=1024
  107. #export IMAGE_COMPRESS_RATIO=80
  108. #---------------------------------------------------------------
  109. # ==== NOTIFICATION TRAY AFTER READ DAYS BEFORE REMOVE =====
  110. # Number of days after a notification is read before we remove it.
  111. # Default: 2
  112. #- NOTIFICATION_TRAY_AFTER_READ_DAYS_BEFORE_REMOVE=2
  113. #---------------------------------------------------------------
  114. # ==== BIGEVENTS DUE ETC NOTIFICATIONS =====
  115. # https://github.com/wekan/wekan/pull/2541
  116. # Introduced a system env var BIGEVENTS_PATTERN default as "NONE",
  117. # so any activityType matches the pattern, system will send out
  118. # notifications to all board members no matter they are watching
  119. # or tracking the board or not. Owner of the wekan server can
  120. # disable the feature by setting this variable to "NONE" or
  121. # change the pattern to any valid regex. i.e. '|' delimited
  122. # activityType names.
  123. # a) Example
  124. #export BIGEVENTS_PATTERN=due
  125. # b) All
  126. #export BIGEVENTS_PATTERN=received|start|due|end
  127. # c) Disabled
  128. export BIGEVENTS_PATTERN=NONE
  129. #---------------------------------------------------------------
  130. # ==== EMAIL DUE DATE NOTIFICATION =====
  131. # https://github.com/wekan/wekan/pull/2536
  132. # System timelines will be showing any user modification for
  133. # dueat startat endat receivedat, also notification to
  134. # the watchers and if any card is due, about due or past due.
  135. #
  136. # Notify due days, default is None.
  137. #export NOTIFY_DUE_DAYS_BEFORE_AND_AFTER=2,0
  138. # it will notify user 2 days before due day and on the due day
  139. #
  140. # Notify due at hour of day. Default every morning at 8am. Can be 0-23.
  141. # If env variable has parsing error, use default. Notification sent to watchers.
  142. #export NOTIFY_DUE_AT_HOUR_OF_DAY=8
  143. #-----------------------------------------------------------------
  144. # ==== EMAIL NOTIFICATION TIMEOUT, ms =====
  145. # Defaut: 30000 ms = 30s
  146. #export EMAIL_NOTIFICATION_TIMEOUT=30000
  147. #-----------------------------------------------------------------
  148. # CORS: Set Access-Control-Allow-Origin header. Example: *
  149. #export CORS=*
  150. # To enable the Set Access-Control-Allow-Headers header. "Authorization,Content-Type" is required for cross-origin use of the API.
  151. #export CORS_ALLOW_HEADERS=Authorization,Content-Type
  152. # To enable the Set Access-Control-Expose-Headers header. This is not needed for typical CORS situations. Example: *
  153. #export CORS_EXPOSE_HEADERS=*
  154. #---------------------------------------------
  155. ## Optional: Integration with Matomo https://matomo.org that is installed to your server
  156. ## The address of the server where Matomo is hosted:
  157. ##export MATOMO_ADDRESS=https://example.com/matomo
  158. #export MATOMO_ADDRESS=
  159. ## The value of the site ID given in Matomo server for Wekan
  160. # Example: export MATOMO_SITE_ID=123456789
  161. #export MATOMO_SITE_ID=''
  162. ## The option do not track which enables users to not be tracked by matomo"
  163. #Example: export MATOMO_DO_NOT_TRACK=false
  164. #export MATOMO_DO_NOT_TRACK=true
  165. ## The option that allows matomo to retrieve the username:
  166. # Example: export MATOMO_WITH_USERNAME=true
  167. #export MATOMO_WITH_USERNAME='false'
  168. #---------------------------------------------
  169. # ==== METRICS ALLOWED IP ADDRESSES ====
  170. # https://github.com/wekan/wekan/wiki/Metrics
  171. #export METRICS_ALLOWED_IP_ADDRESSES=192.168.0.100,192.168.0.200
  172. #-----------------------------------------------------------------
  173. # Enable browser policy and allow one trusted URL that can have iframe that has Wekan embedded inside.
  174. # Setting this to false is not recommended, it also disables all other browser policy protections
  175. # and allows all iframing etc. See wekan/server/policy.js
  176. # Default value: true
  177. export BROWSER_POLICY_ENABLED=true
  178. # When browser policy is enabled, HTML code at this Trusted URL can have iframe that embeds Wekan inside.
  179. # Example: export TRUSTED_URL=http://example.com
  180. export TRUSTED_URL=''
  181. # What to send to Outgoing Webhook, or leave out. Example, that includes all that are default: cardId,listId,oldListId,boardId,comment,user,card,commentId .
  182. # Example: export WEBHOOKS_ATTRIBUTES=cardId,listId,oldListId,boardId,comment,user,card,commentId
  183. export WEBHOOKS_ATTRIBUTES=''
  184. #---------------------------------------------
  185. # ==== AUTOLOGIN WITH OIDC/OAUTH2 ====
  186. # https://github.com/wekan/wekan/wiki/autologin
  187. #export OIDC_REDIRECTION_ENABLED=true
  188. #---------------------------------------------
  189. # OAUTH2 ORACLE on premise identity manager OIM
  190. #export ORACLE_OIM_ENABLED=true
  191. #---------------------------------------------
  192. # ==== OAUTH2 AZURE ====
  193. # https://github.com/wekan/wekan/wiki/Azure
  194. # 1) Register the application with Azure. Make sure you capture
  195. # the application ID as well as generate a secret key.
  196. # 2) Configure the environment variables. This differs slightly
  197. # by installation type, but make sure you have the following:
  198. #export OAUTH2_ENABLED=true
  199. #
  200. # Optional OAuth2 CA Cert, see https://github.com/wekan/wekan/issues/3299
  201. #export OAUTH2_CA_CERT=ABCD1234
  202. #
  203. # Use OAuth2 ADFS additional changes. Also needs OAUTH2_ENABLED=true setting.
  204. #export OAUTH2_ADFS_ENABLED=false
  205. #
  206. # Azure AD B2C. https://github.com/wekan/wekan/issues/5242
  207. #export OAUTH2_B2C_ENABLED=false
  208. #
  209. # OAuth2 docs: https://github.com/wekan/wekan/wiki/OAuth2
  210. # OAuth2 login style: popup or redirect.
  211. #export OAUTH2_LOGIN_STYLE=redirect
  212. #
  213. # Application GUID captured during app registration:
  214. #export OAUTH2_CLIENT_ID=xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx
  215. #
  216. # Secret key generated during app registration:
  217. #export OAUTH2_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  218. # OAUTH2_SECRET_FILE : Secret key file for OAuth2 (Docker secrets)
  219. # example : export OAUTH2_SECRET_FILE=/run/secrets/oauth2_secret
  220. #export OAUTH2_SECRET_FILE=
  221. #export OAUTH2_SERVER_URL=https://login.microsoftonline.com/
  222. #export OAUTH2_AUTH_ENDPOINT=/oauth2/v2.0/authorize
  223. #export OAUTH2_USERINFO_ENDPOINT=https://graph.microsoft.com/oidc/userinfo
  224. #export OAUTH2_TOKEN_ENDPOINT=/oauth2/v2.0/token
  225. #
  226. # The claim name you want to map to the unique ID field:
  227. #export OAUTH2_ID_MAP=email
  228. #
  229. # The claim name you want to map to the username field:
  230. #export OAUTH2_USERNAME_MAP=email
  231. #
  232. # The claim name you want to map to the full name field:
  233. #export OAUTH2_FULLNAME_MAP=name
  234. #
  235. # The claim name you want to map to the email field:
  236. #export OAUTH2_EMAIL_MAP=email
  237. #-----------------------------------------------------------------
  238. # ==== OAUTH2 KEYCLOAK ====
  239. # https://github.com/wekan/wekan/wiki/Keycloak <== MAPPING INFO, REQUIRED
  240. #export OAUTH2_ENABLED=true
  241. # OAuth2 login style: popup or redirect.
  242. #export OAUTH2_LOGIN_STYLE=redirect
  243. #export OAUTH2_CLIENT_ID=<Keycloak create Client ID>
  244. #export OAUTH2_SERVER_URL=<Keycloak server URL - https://keycloak.example.com>
  245. #export OAUTH2_AUTH_ENDPOINT=/realms/<keycloak realm>/protocol/openid-connect/auth
  246. #export OAUTH2_USERINFO_ENDPOINT=/realms/<keycloak realm>/protocol/openid-connect/userinfo
  247. #export OAUTH2_TOKEN_ENDPOINT=/realms/<keycloak realm>/protocol/openid-connect/token
  248. #export OAUTH2_SECRET=<keycloak client secret>
  249. #export OAUTH2_ID_MAP=sub
  250. #export OAUTH2_USERNAME_MAP=preferred_username
  251. #export OAUTH2_EMAIL_MAP=email
  252. #export OAUTH2_FULLNAME_MAP=name
  253. #-----------------------------------------------------------------
  254. # ==== OAUTH2 DOORKEEPER ====
  255. # OAuth2 docs: https://github.com/wekan/wekan/wiki/OAuth2
  256. # https://github.com/wekan/wekan/issues/1874
  257. # https://github.com/wekan/wekan/wiki/OAuth2
  258. # Enable the OAuth2 connection
  259. #export OAUTH2_ENABLED=true
  260. #
  261. # OAuth2 login style: popup or redirect.
  262. #export OAUTH2_LOGIN_STYLE=redirect
  263. #
  264. # OAuth2 Client ID.
  265. #export OAUTH2_CLIENT_ID=abcde12345
  266. #
  267. # OAuth2 Secret.
  268. #export OAUTH2_SECRET=54321abcde
  269. #
  270. # OAuth2 Server URL.
  271. #export OAUTH2_SERVER_URL=https://chat.example.com
  272. #
  273. # OAuth2 Authorization Endpoint.
  274. #export OAUTH2_AUTH_ENDPOINT=/oauth/authorize
  275. #
  276. # OAuth2 Userinfo Endpoint.
  277. #export OAUTH2_USERINFO_ENDPOINT=/oauth/userinfo
  278. #
  279. # OAuth2 Token Endpoint.
  280. #export OAUTH2_TOKEN_ENDPOINT=/oauth/token
  281. #
  282. # OAUTH2 ID Token Whitelist Fields.
  283. #export OAUTH2_ID_TOKEN_WHITELIST_FIELDS=[]
  284. #
  285. # OAUTH2 Request Permissions.
  286. #export OAUTH2_REQUEST_PERMISSIONS=openid profile email
  287. #
  288. # OAuth2 ID Mapping
  289. #export OAUTH2_ID_MAP=
  290. #
  291. # OAuth2 Username Mapping
  292. #export OAUTH2_USERNAME_MAP=
  293. #
  294. # OAuth2 Fullname Mapping
  295. #export OAUTH2_FULLNAME_MAP=
  296. #
  297. # OAuth2 Email Mapping
  298. #export OAUTH2_EMAIL_MAP=
  299. #---------------------------------------------
  300. # LDAP_ENABLE : Enable or not the connection by the LDAP
  301. # example : export LDAP_ENABLE=true
  302. #export LDAP_ENABLE=false
  303. #
  304. # LDAP_PORT : The port of the LDAP server
  305. # example : export LDAP_PORT=389
  306. #export LDAP_PORT=389
  307. #
  308. # LDAP_HOST : The host server for the LDAP server
  309. # example : export LDAP_HOST=localhost
  310. #export LDAP_HOST=
  311. #
  312. #-----------------------------------------------------------------
  313. # ==== LDAP AD Simple Auth ====
  314. #
  315. # Set to true, if you want to connect with Active Directory by Simple Authentication.
  316. # When using AD Simple Auth, LDAP_BASEDN is not needed.
  317. #
  318. # Example:
  319. #export LDAP_AD_SIMPLE_AUTH=true
  320. #
  321. # === LDAP User Authentication ===
  322. #
  323. # a) Option to login to the LDAP server with the user's own username and password, instead of
  324. # an administrator key. Default: false (use administrator key).
  325. #
  326. # b) When using AD Simple Auth, set to true, when login user is used for binding,
  327. # and LDAP_BASEDN is not needed.
  328. #
  329. # Example:
  330. #export LDAP_USER_AUTHENTICATION=true
  331. #
  332. # Which field is used to find the user for the user authentication. Default: uid.
  333. #export LDAP_USER_AUTHENTICATION_FIELD=uid
  334. #
  335. # === LDAP Default Domain ===
  336. #
  337. # a) In case AD SimpleAuth is configured, the default domain is appended to the given
  338. # loginname for creating the correct username for the bind request to AD.
  339. #
  340. # b) The default domain of the ldap it is used to create email if the field is not map
  341. # correctly with the LDAP_SYNC_USER_DATA_FIELDMAP
  342. #
  343. # Example :
  344. #export LDAP_DEFAULT_DOMAIN=mydomain.com
  345. #
  346. #-----------------------------------------------------------------
  347. # ==== LDAP BASEDN Auth ====
  348. #
  349. # LDAP_BASEDN : The base DN for the LDAP Tree
  350. # example : export LDAP_BASEDN=ou=user,dc=example,dc=org
  351. #export LDAP_BASEDN=
  352. #
  353. #---------------------------------------------
  354. # LDAP_LOGIN_FALLBACK : Fallback on the default authentication method
  355. # example : export LDAP_LOGIN_FALLBACK=true
  356. #export LDAP_LOGIN_FALLBACK=false
  357. #
  358. # LDAP_RECONNECT : Reconnect to the server if the connection is lost
  359. # example : export LDAP_RECONNECT=false
  360. #export LDAP_RECONNECT=true
  361. #
  362. # LDAP_TIMEOUT : Overall timeout, in milliseconds
  363. # example : export LDAP_TIMEOUT=12345
  364. #export LDAP_TIMEOUT=10000
  365. #
  366. # LDAP_IDLE_TIMEOUT : Specifies the timeout for idle LDAP connections in milliseconds
  367. # example : export LDAP_IDLE_TIMEOUT=12345
  368. #export LDAP_IDLE_TIMEOUT=10000
  369. #
  370. # LDAP_CONNECT_TIMEOUT : Connection timeout, in milliseconds
  371. # example : export LDAP_CONNECT_TIMEOUT=12345
  372. #export LDAP_CONNECT_TIMEOUT=10000
  373. #
  374. # LDAP_AUTHENTIFICATION : If the LDAP needs a user account to search
  375. # example : export LDAP_AUTHENTIFICATION=true
  376. #export LDAP_AUTHENTIFICATION=false
  377. #
  378. # LDAP_AUTHENTIFICATION_USERDN : The search user DN
  379. # example : export LDAP_AUTHENTIFICATION_USERDN=cn=admin,dc=example,dc=org
  380. #----------------------------------------------------------------------------
  381. # The search user DN - You need quotes when you have spaces in parameters
  382. # 2 examples:
  383. #export LDAP_AUTHENTIFICATION_USERDN="CN=ldap admin,CN=users,DC=domainmatter,DC=lan"
  384. #export LDAP_AUTHENTIFICATION_USERDN="CN=wekan_adm,OU=serviceaccounts,OU=admin,OU=prod,DC=mydomain,DC=com"
  385. #---------------------------------------------------------------------------
  386. # LDAP_AUTHENTIFICATION_PASSWORD : The password for the search user
  387. # example : AUTHENTIFICATION_PASSWORD=admin
  388. #export LDAP_AUTHENTIFICATION_PASSWORD=
  389. # LDAP_AUTHENTIFICATION_PASSWORD_FILE : The password file for the search user (Docker secrets)
  390. # example : export LDAP_AUTHENTIFICATION_PASSWORD_FILE=/run/secrets/ldap_auth_password
  391. #export LDAP_AUTHENTIFICATION_PASSWORD_FILE=
  392. #
  393. # LDAP_LOG_ENABLED : Enable logs for the module
  394. # example : export LDAP_LOG_ENABLED=true
  395. #export LDAP_LOG_ENABLED=false
  396. #
  397. # LDAP_BACKGROUND_SYNC : If the sync of the users should be done in the background
  398. # example : export LDAP_BACKGROUND_SYNC=true
  399. #export LDAP_BACKGROUND_SYNC=false
  400. #
  401. # LDAP_BACKGROUND_SYNC_INTERVAL : At which interval does the background task sync in milliseconds
  402. # The format must be as specified in:
  403. # https://bunkat.github.io/later/parsers.html#text
  404. #export LDAP_BACKGROUND_SYNC_INTERVAL=every 1 hours
  405. # At which interval does the background task sync in milliseconds.
  406. # Leave this unset, so it uses default, and does not crash.
  407. # https://github.com/wekan/wekan/issues/2354#issuecomment-515305722
  408. export LDAP_BACKGROUND_SYNC_INTERVAL=''
  409. #
  410. # LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED :
  411. # example : export LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=true
  412. #export LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=false
  413. #
  414. # LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS :
  415. # example : export LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS=true
  416. #export LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS=false
  417. #
  418. # LDAP_ENCRYPTION : If using LDAPS
  419. # example : export LDAP_ENCRYPTION=ssl
  420. #export LDAP_ENCRYPTION=false
  421. #
  422. # LDAP_CA_CERT : The certification for the LDAPS server. Certificate needs to be included in this docker-compose.yml file.
  423. # example : export LDAP_CA_CERT=-----BEGIN CERTIFICATE-----MIIE+zCCA+OgAwIBAgIkAhwR/6TVLmdRY6hHxvUFWc0+Enmu/Hu6cj+G2FIdAgIC...-----END CERTIFICATE-----
  424. #export LDAP_CA_CERT=
  425. #
  426. # LDAP_REJECT_UNAUTHORIZED : Reject Unauthorized Certificate
  427. # example : export LDAP_REJECT_UNAUTHORIZED=true
  428. #export LDAP_REJECT_UNAUTHORIZED=false
  429. #
  430. # LDAP_USER_SEARCH_FILTER : Optional extra LDAP filters. Don't forget the outmost enclosing parentheses if needed
  431. # example : export LDAP_USER_SEARCH_FILTER=
  432. #export LDAP_USER_SEARCH_FILTER=
  433. #
  434. # LDAP_USER_SEARCH_SCOPE : base (search only in the provided DN), one (search only in the provided DN and one level deep), or sub (search the whole subtree)
  435. # example : export LDAP_USER_SEARCH_SCOPE=one
  436. #export LDAP_USER_SEARCH_SCOPE=
  437. #
  438. # LDAP_USER_SEARCH_FIELD : Which field is used to find the user
  439. # example : export LDAP_USER_SEARCH_FIELD=uid
  440. #export LDAP_USER_SEARCH_FIELD=
  441. #
  442. # LDAP_SEARCH_PAGE_SIZE : Used for pagination (0=unlimited)
  443. # example : export LDAP_SEARCH_PAGE_SIZE=12345
  444. #export LDAP_SEARCH_PAGE_SIZE=0
  445. #
  446. # LDAP_SEARCH_SIZE_LIMIT : The limit number of entries (0=unlimited)
  447. # example : export LDAP_SEARCH_SIZE_LIMIT=12345
  448. #export LDAP_SEARCH_SIZE_LIMIT=0
  449. #
  450. # LDAP_GROUP_FILTER_ENABLE : Enable group filtering
  451. # example : export LDAP_GROUP_FILTER_ENABLE=true
  452. #export LDAP_GROUP_FILTER_ENABLE=false
  453. #
  454. # LDAP_GROUP_FILTER_OBJECTCLASS : The object class for filtering
  455. # example : export LDAP_GROUP_FILTER_OBJECTCLASS=group
  456. #export LDAP_GROUP_FILTER_OBJECTCLASS=
  457. #
  458. # LDAP_GROUP_FILTER_GROUP_ID_ATTRIBUTE :
  459. # example :
  460. #export LDAP_GROUP_FILTER_GROUP_ID_ATTRIBUTE=
  461. #
  462. # LDAP_GROUP_FILTER_GROUP_MEMBER_ATTRIBUTE :
  463. # example :
  464. #export LDAP_GROUP_FILTER_GROUP_MEMBER_ATTRIBUTE=
  465. #
  466. # LDAP_GROUP_FILTER_GROUP_MEMBER_FORMAT :
  467. # example :
  468. #export LDAP_GROUP_FILTER_GROUP_MEMBER_FORMAT=
  469. #
  470. # LDAP_GROUP_FILTER_GROUP_NAME :
  471. # example :
  472. #export LDAP_GROUP_FILTER_GROUP_NAME=
  473. #
  474. # LDAP_UNIQUE_IDENTIFIER_FIELD : This field is sometimes class GUID (Globally Unique Identifier)
  475. # example : export LDAP_UNIQUE_IDENTIFIER_FIELD=guid
  476. #export LDAP_UNIQUE_IDENTIFIER_FIELD=
  477. #
  478. # LDAP_UTF8_NAMES_SLUGIFY : Convert the username to utf8
  479. # example : export LDAP_UTF8_NAMES_SLUGIFY=false
  480. #export LDAP_UTF8_NAMES_SLUGIFY=true
  481. #
  482. # LDAP_USERNAME_FIELD : Which field contains the ldap username
  483. # example : export LDAP_USERNAME_FIELD=username
  484. #export LDAP_USERNAME_FIELD=
  485. #
  486. # LDAP_FULLNAME_FIELD : Which field contains the ldap fullname
  487. # example : export LDAP_FULLNAME_FIELD=fullname
  488. #export LDAP_FULLNAME_FIELD=
  489. #
  490. # LDAP_MERGE_EXISTING_USERS :
  491. # example : export LDAP_MERGE_EXISTING_USERS=true
  492. #export LDAP_MERGE_EXISTING_USERS=false
  493. #
  494. # LDAP_EMAIL_MATCH_ENABLE : allow existing account matching by e-mail address when username does not match
  495. # example: LDAP_EMAIL_MATCH_ENABLE=true
  496. #export LDAP_EMAIL_MATCH_ENABLE=false
  497. #
  498. # LDAP_EMAIL_MATCH_REQUIRE : require existing account matching by e-mail address when username does match
  499. # example: LDAP_EMAIL_MATCH_REQUIRE=true
  500. #export LDAP_EMAIL_MATCH_REQUIRE=false
  501. #
  502. # LDAP_EMAIL_MATCH_VERIFIED : require existing account email address to be verified for matching
  503. # example: LDAP_EMAIL_MATCH_VERIFIED=true
  504. #export LDAP_EMAIL_MATCH_VERIFIED=false
  505. #
  506. # LDAP_EMAIL_FIELD : which field contains the LDAP e-mail address
  507. # example: LDAP_EMAIL_FIELD=mail
  508. #export LDAP_EMAIL_FIELD=
  509. #
  510. # LDAP_SYNC_USER_DATA :
  511. # example : export LDAP_SYNC_USER_DATA=true
  512. #export LDAP_SYNC_USER_DATA=false
  513. #
  514. # LDAP_SYNC_USER_DATA_FIELDMAP :
  515. # example : export LDAP_SYNC_USER_DATA_FIELDMAP={"cn":"name", "mail":"email"}
  516. #export LDAP_SYNC_USER_DATA_FIELDMAP=
  517. #
  518. # The default domain of the ldap it is used to create email if the field is not map correctly
  519. # with the LDAP_SYNC_USER_DATA_FIELDMAP is defined in setting LDAP_DEFAULT_DOMAIN above.
  520. #
  521. # LDAP_SYNC_GROUP_ROLES :
  522. # example :
  523. #export LDAP_SYNC_GROUP_ROLES=
  524. #
  525. # Enable/Disable syncing of admin status based on ldap groups:
  526. #export LDAP_SYNC_ADMIN_STATUS=true
  527. #
  528. # Comma separated list of admin group names to sync.
  529. #export LDAP_SYNC_ADMIN_GROUPS=group1,group2
  530. #---------------------------------------------------------------------
  531. # Login to LDAP automatically with HTTP header.
  532. # In below example for siteminder, at right side of = is header name.
  533. #export HEADER_LOGIN_ID=HEADERUID
  534. #export HEADER_LOGIN_FIRSTNAME=HEADERFIRSTNAME
  535. #export HEADER_LOGIN_LASTNAME=HEADERLASTNAME
  536. #export HEADER_LOGIN_EMAIL=HEADEREMAILADDRESS
  537. #---------------------------------------------------------------------
  538. # LOGOUT_WITH_TIMER : Enables or not the option logout with timer
  539. # example : LOGOUT_WITH_TIMER=true
  540. #export LOGOUT_WITH_TIMER=
  541. # LOGOUT_IN : The number of days
  542. # example : LOGOUT_IN=1
  543. #export LOGOUT_IN=
  544. #export LOGOUT_ON_HOURS=
  545. # LOGOUT_ON_MINUTES : The number of minutes
  546. # example : LOGOUT_ON_MINUTES=55
  547. #export LOGOUT_ON_MINUTES=
  548. #---------------------------------------------------------------------
  549. # PASSWORD_LOGIN_ENABLED : Enable or not the password login form.
  550. #export PASSWORD_LOGIN_ENABLED=true
  551. #---------------------------------------------------------------------
  552. #export CAS_ENABLED=true
  553. #export CAS_BASE_URL=https://cas.example.com/cas
  554. #export CAS_LOGIN_URL=https://cas.example.com/login
  555. #export CAS_VALIDATE_URL=https://cas.example.com/cas/p3/serviceValidate
  556. #---------------------------------------------------------------------
  557. #export SAML_ENABLED=true
  558. #export SAML_PROVIDER=
  559. #export SAML_ENTRYPOINT=
  560. #export SAML_ISSUER=
  561. #export SAML_CERT=
  562. #export SAML_IDPSLO_REDIRECTURL=
  563. #export SAML_PRIVATE_KEYFILE=
  564. #export SAML_PUBLIC_CERTFILE=
  565. #export SAML_IDENTIFIER_FORMAT=
  566. #export SAML_LOCAL_PROFILE_MATCH_ATTRIBUTE=
  567. #export SAML_ATTRIBUTES=
  568. #---------------------------------------------------------------------
  569. # Wait spinner to use
  570. #export WAIT_SPINNER=Bounce
  571. #---------------------------------------------------------------------
  572. # https://github.com/wekan/wekan/issues/3585#issuecomment-1021522132
  573. # Add more Node heap:
  574. #export NODE_OPTIONS="--max_old_space_size=4096"
  575. # Add more stack:
  576. #bash -c "ulimit -s 65500; exec node --stack-size=65500 --trace-deprecation main.js"
  577. #bash -c "ulimit -s 65500; exec node --stack-size=65500 main.js"
  578. #-------------------- OPTIONAL SETTINGS END ----------------------
  579. #bash -c "ulimit -s 65500; exec node --stack-size=65500 --max-old-space-size=8192 main.js"
  580. bash -c "ulimit -s 65500; exec node main.js"
  581. #node main.js
  582. #---------------------------------------------------------------------
  583. # & >> ../../wekan.log
  584. cd ../..
  585. #done