zhongrj
2025-11-24 276323dce9613867abb3f58a4cc2abbfb2fd0dea
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
# This configuration does not include a processing node
# Which makes for faster setup times
version: '2.1'
volumes:
  dbdata:
    # appmedia:
services:
  db:
    image: opendronemap/webodm_db
    container_name: odm-db
    expose:
      - "5432"
    volumes:
      - /tmp:/tmp
      - ${WO_DB_DIR}:/var/lib/postgresql/data:Z
    restart: unless-stopped
    oom_score_adj: -100
      #user: "999:999"
      #networks:
      #- odm_network
  webapp:
    image: opendronemap/webodm_webapp
    container_name: webapp
    entrypoint: /bin/bash -c "chmod +x /webodm/*.sh && /bin/bash -c \"/webodm/wait-for-postgres.sh db /webodm/wait-for-it.sh -t 0 broker:6379 -- /webodm/start.sh\""
    volumes:
      - ${WO_MEDIA_DIR}:/webodm/app/media:z
    ports:
      - "${WO_PORT}:8000"
    depends_on:
      - db
      - broker
      - worker
    environment:
      - WO_PORT
      - WO_HOST
      - WO_DEBUG
      - WO_BROKER
      - WO_DEV
      - WO_DEV_WATCH_PLUGINS
      - WO_SECRET_KEY
    restart: unless-stopped
    oom_score_adj: 0
      #networks:
      #- odm_network
  broker:
    image: redis:7.4.2
    container_name: odm-redis
    restart: unless-stopped
    oom_score_adj: -500
      #networks:
      #- odm_network
  worker:
    image: opendronemap/webodm_webapp
    container_name: worker
    entrypoint: /bin/bash -c "/webodm/wait-for-postgres.sh db /webodm/wait-for-it.sh -t 0 broker:6379 -- /webodm/wait-for-it.sh -t 0 webapp:8000 -- /webodm/worker.sh start"
    volumes:
      - ${WO_MEDIA_DIR}:/webodm/app/media:z
    depends_on:
      - db
      - broker
    environment:
      - WO_BROKER
      - WO_DEBUG
      - WO_SECRET_KEY
    restart: unless-stopped
    oom_score_adj: 250
      #networks:
      #- odm_network
 
# 指定
#networks:
#  odm_network:
#    external: true