aboutsummaryrefslogtreecommitdiffstats
path: root/docker-compose.yaml
blob: 65d853aaa2615ec67cddabe9a5a8faa9d12053aa (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
87
88
89
90
91
92
93
94
95
services:
  nginx:
    image: nginx:stable
    deploy:
      resources:
        limits:
          memory: 128M
    logging:
      driver: "json-file"
      options:
        max-size: "100m"
    ports:
      - "127.0.0.1:10008:443"
    networks:
      - apinet
    restart: unless-stopped
    cap_drop:
      - ALL
    cap_add:
      - CHOWN
      - DAC_OVERRIDE
      - SETGID
      - SETUID
      - NET_BIND_SERVICE
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf:ro
      - /etc/letsencrypt/live/api.terminaldweller.com/fullchain.pem:/etc/letsencrypt/live/api.terminaldweller.com/fullchain.pem:ro
      - /etc/letsencrypt/live/api.terminaldweller.com/privkey.pem:/etc/letsencrypt/live/api.terminaldweller.com/privkey.pem:ro
    depends_on:
      - hived
  hived:
    image: hived
    build:
      context: ./hived
    deploy:
      resources:
        limits:
          memory: 256M
    logging:
      driver: "json-file"
      options:
        max-size: "100m"
    secrets:
      - tg_bot_token
    networks:
      - apinet
      - dbnet
    ports:
      - "127.0.0.1:10009:8090"
    entrypoint: ["/hived/hived"]
    command: ["serve", "--http=0.0.0.0:8090"]
    depends_on:
      - keydb
    cap_drop:
      - ALL
    environment:
      - SERVER_DEPLOYMENT_TYPE=test
      - HIVED_PRICE_SOURCE=cryptocompare
      - CMC_API_KEY=
      - POLYGON_API_KEY=
      - CRYPTOCOMPARE_API_KEY=
      - TELEGRAM_BOT_TOKEN=
    volumes:
      - ./hived/hived.toml:/hived/hived.toml
  keydb:
    image: eqalpha/keydb:alpine_x86_64_v6.3.4
    deploy:
      resources:
        limits:
          memory: 256M
    logging:
      driver: "json-file"
      options:
        max-size: "100m"
    networks:
      - dbnet
    ports:
      - "127.0.0.1:6380:6379"
    environment:
      - ALLOW_EMPTY_PASSWORD=yes
    volumes:
      - keydb-data:/data/
networks:
  dbnet:
  apinet:
secrets:
  tg_bot_token:
    file: ./tgtoken
  polygon_api_key:
    file: ./polygon_api_key
  cmc_api_key:
    file: ./cmc_api_key
volumes:
  keydb-data:
  p