summaryrefslogtreecommitdiffstats
path: root/docker-compose.yml
blob: 7509bbc9a3b67cab79320e2977a78bd1777be89b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
version: '2'

services:

  wekandb:
    image: mongo:3.2.21
    container_name: wekan-db
    restart: always
    command: mongod --smallfiles --oplogSize 128
    networks:
      - wekan-tier
    expose:
      - 27017
    volumes:
      - wekan-db:/data/db
      - wekan-db-dump:/dump

  wekan:
    image: quay.io/wekan/wekan
    container_name: wekan-app
    restart: always
    networks:
      - wekan-tier
    build:
      context: .
      dockerfile: Dockerfile
      args:
        - NODE_VERSION=${NODE_VERSION}
        - METEOR_RELEASE=${METEOR_RELEASE}
        - NPM_VERSION=${NPM_VERSION}
        - ARCHITECTURE=${ARCHITECTURE}
        - SRC_PATH=${SRC_PATH}
        - METEOR_EDGE=${METEOR_EDGE}
        - USE_EDGE=${USE_EDGE}
    ports:
      # Docker outsideport:insideport
      - 80:8080
    environment:
      - MONGO_URL=mongodb://wekandb:27017/wekan
      - ROOT_URL=http://localhost
      # Wekan Export Board works when WITH_API='true'.
      # If you disable Wekan API with 'false', Export Board does not work.
      - WITH_API=true
      # Optional: Integration with Matomo https://matomo.org that is installed to your server
      # The address of the server where Matomo is hosted. 
      # example: - MATOMO_ADDRESS=https://example.com/matomo
      - MATOMO_ADDRESS=''
      # The value of the site ID given in Matomo server for Wekan
      # example: - MATOMO_SITE_ID=12345
      - MATOMO_SITE_ID=''
      # The option do not track which enables users to not be tracked by matomo
      # example:  - MATOMO_DO_NOT_TRACK=false
      - MATOMO_DO_NOT_TRACK=true
      # The option that allows matomo to retrieve the username:
      # example: MATOMO_WITH_USERNAME=true
      - MATOMO_WITH_USERNAME=false
      # Enable browser policy and allow one trusted URL that can have iframe that has Wekan embedded inside.
      # Setting this to false is not recommended, it also disables all other browser policy protections
      # and allows all iframing etc. See wekan/server/policy.js
      - BROWSER_POLICY_ENABLED=true
      # When browser policy is enabled, HTML code at this Trusted URL can have iframe that embeds Wekan inside.
      - TRUSTED_URL=''
      # What to send to Outgoing Webhook, or leave out. Example, that includes all that are default: cardId,listId,oldListId,boardId,comment,user,card,commentId .
      # example: WEBHOOKS_ATTRIBUTES=cardId,listId,oldListId,boardId,comment,user,card,commentId
      - WEBHOOKS_ATTRIBUTES=''
      # OAuth2 docs: https://github.com/wekan/wekan/wiki/OAuth2
      # OAuth2 Client ID, for example from Rocket.Chat. Example: abcde12345
      # example: OAUTH2_CLIENT_ID=abcde12345
      - OAUTH2_CLIENT_ID=''
      # OAuth2 Secret, for example from Rocket.Chat: Example: 54321abcde
      # example: OAUTH2_SECRET=54321abcde
      - OAUTH2_SECRET=''
      # OAuth2 Server URL, for example Rocket.Chat. Example: https://chat.example.com
      # example: OAUTH2_SERVER_URL=https://chat.example.com
      - OAUTH2_SERVER_URL=''
      # OAuth2 Authorization Endpoint. Example: /oauth/authorize
      # example: OAUTH2_AUTH_ENDPOINT=/oauth/authorize
      - OAUTH2_AUTH_ENDPOINT=''
      # OAuth2 Userinfo Endpoint. Example: /oauth/userinfo
      # example: OAUTH2_USERINFO_ENDPOINT=/oauth/userinfo
      - OAUTH2_USERINFO_ENDPOINT=''
      # OAuth2 Token Endpoint. Example: /oauth/token
      # example: OAUTH2_TOKEN_ENDPOINT=/oauth/token
      - OAUTH2_TOKEN_ENDPOINT=''
    depends_on:
      - wekandb

volumes:
  wekan-db:
    driver: local
  wekan-db-dump:
    driver: local

networks:
  wekan-tier:
    driver: bridge