aboutsummaryrefslogtreecommitdiffstats
path: root/docker-compose-test.yaml
blob: e614d379c2e74d88eb3364584127e702a51fbf69 (plain) (blame)
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
version: "3.9"
services:
  nginx-crs:
    image: owasp/modsecurity-crs:4.16.0-nginx-alpine-202506301206
    deploy:
      resources:
        limits:
          memory: 128M
    logging:
      driver: "json-file"
      options:
        max-size: "100m"
    ports:
      - 19010:8443
    restart: unless-stopped
    networks:
      - blognet
    environment:
      - BACKEND="http://blog:9000"
      - PROXY_SSL_CERT=/etc/letsencrypt/live/blog.terminaldweller.com/fullchain.pem
      - PROXY_SSL_CER_KEY=/etc/letsencrypt/live/blog.terminaldweller.com/privkey.pem
      - SSL_PORT=8443
    volumes:
      - ./certs/server.cert:/etc/letsencrypt/live/blog.terminaldweller.com/fullchain.pem:ro
      - ./certs/server.key:/etc/letsencrypt/live/blog.terminaldweller.com/privkey.pem:ro
  blog:
    image: blog
    build:
      context: .
    deploy:
      resources:
        limits:
          memory: 128M
    logging:
      driver: "json-file"
      options:
        max-size: "100m"
    restart: unless-stopped
    networks:
      - blognet
      - dbnet
    ports:
      - "127.0.0.1:19009:9000"
    cap_drop:
      - ALL
    depends_on:
      - nginx-crs
      - mongo
    secrets:
      - mongo_user
      - mongo_pass
  mongo:
    image: mongo:7
    deploy:
      resources:
        limits:
          memory: 128M
    logging:
      driver: "json-file"
      options:
        max-size: "100m"
    networks:
      - dbnet
    restart: unless-stopped
    ports:
      - "127.0.0.1:27117:27017"
      - "127.0.0.1:27118:27018"
      - "127.0.0.1:27119:27019"
    # volumes:
    #   - blog-data:/data/db
    environment:
      - MONGO_INITDB_ROOT_USERNAME_FILE=/run/secrets/mongo_user
      - MONGO_INITDB_ROOT_PASSWORD_FILE=/run/secrets/mongo_pass
    secrets:
      - mongo_user
      - mongo_pass
networks:
  blognet:
  dbnet:
# volumes:
#   blog-data:
secrets:
  mongo_user:
    file: ./mongo_secrets/mongo_user
  mongo_pass:
    file: ./mongo_secrets/mongo_pass