File size: 2,229 Bytes
dc89ab8
 
e919aa3
258f7cd
 
 
dc89ab8
e919aa3
 
f1ab0d5
e919aa3
 
 
f1ab0d5
e919aa3
f1ab0d5
258f7cd
e919aa3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
dc89ab8
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
version: "3.9"  # optional since v1.27.0
services:
  python:
    build:
      dockerfile: Dockerfile.python
      context: .
    environment:
       GECKO_HOST: geckodriver
       GECKO_PORT: 4444
    depends_on:
      - "geckodriver"
    links:
      - "geckodriver"
    volumes:
      - "./python:/app/python:z" # for debugging
      - "./data:/app/data:z"

  geckodriver:
    image: docker.io/instrumentisto/geckodriver
    entrypoint: ["sh", "-c", "while true; do geckodriver --binary=/opt/firefox/firefox --log warn --port 4444 --host 0.0.0.0; sleep 2; done"]
    ports: # this is not required but nice for local debug
      - "4444:4444"
  # crawler:
  #   build:
  #     dockerfile: Dockerfile.python
  #     context: .
  #   command: "sh -c 'while true; do python3 src/get_entities.py; touch data/entities.csv; sleep 24h; done'"
  #   volumes:
  #     - "./data:/app/data:z"

  # cutter:
  #   build:
  #     dockerfile: Dockerfile.python
  #     context: .
  #   environment:
  #      GECKO_HOST: geckodriver
  #      GECKO_PORT: 4444
  #   depends_on:
  #     - "geckodriver"
  #   links:
  #     - "geckodriver"
  #   volumes:
  #     - "./python:/app/src:z" # for debugging
  #     - "./data:/app/data:z"

  # browserless:
  #    image: docker.io/zenika/alpine-chrome
  #    entrypoint: ["sh", "-c", "while true; do chromium-browser --headless --use-gl=swiftshader --disable-software-rasterizer --disable-dev-shm-usage --no-sandbox --remote-debugging-address=0.0.0.0 --remote-debugging-port=3000; sleep 2; done"]
  #    ports:
  #      - "3000:3000"

  # puppet:
  #   build:
  #     dockerfile: Dockerfile.deno
  #     context: .
  #   links:
  #     - browserless
  #   environment:
  #     BROWSERLESS_HOST: browserless
  #     BROWSERLESS_PORT: 3000
  #     DEBUG: "puppet"
  #   depends_on:
  #     - "browserless"
  #   #command: "sh -c 'while echo deno; do sleep 3h; done'" # debug
  #   command: "deno run --allow-net --allow-env --allow-read --allow-write src/index.ts"
  #   volumes:
  #      - "./deno:/app/src:z" # for debugging
  #      - "./data:/app/data:z"
  #   #restart: unless-stopped:600
  #   deploy:
  #     restart_policy:
  #       condition: any
  #       delay: 600s
  #       window: 300s