-
Notifications
You must be signed in to change notification settings - Fork 4
/
docker-compose.yml
143 lines (130 loc) · 4.65 KB
/
docker-compose.yml
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
version: "3.2"
# Starts ebics-service with a libeufin as a banking backend
services:
postgres:
container_name: pg
image: postgres:11
restart: always
environment:
- POSTGRES_USER=pgrootuser
- POSTGRES_PASSWORD=pgrootpassword
- POSTGRES_DB=libeufindb
- POSTGRES_NON_ROOT_USER=pguser
- POSTGRES_NON_ROOT_PASSWORD=pgpassword
# - PGDATA="/var/lib/postgresql/data/pgdata"
# ports:
# - "5432:5432"
libeufin:
container_name: libeufin
image: e36io/libeufin:hyperfridge
# local dev:
# build:
# context: ../LibEuFin
depends_on:
- postgres
environment:
- LIBEUFIN_SANDBOX_URL=http://localhost:5016/
- LIBEUFIN_SANDBOX_DB_CONNECTION=jdbc:postgresql://postgres:5432/libeufindb?user=pgrootuser&password=pgrootpassword
- LIBEUFIN_NEXUS_DB_CONNECTION=jdbc:postgresql://postgres:5432/libeufindb?user=pgrootuser&password=pgrootpassword
- LIBEUFIN_NEXUS_URL=http://localhost:5000/
- LIBEUFIN_NEXUS_USERNAME=foo
- LIBEUFIN_NEXUS_PASSWORD=superpassword
- LIBEUFIN_SANDBOX_ADMIN_PASSWORD=superpassword
- LIBEUFIN_SANDBOX_USERNAME=admin
- LIBEUFIN_SANDBOX_PASSWORD=superpassword
- EBICS_BASE_URL=http://localhost:5016/ebicsweb
- POSTGRES_USER=pgrootuser
- POSTGRES_PASSWORD=pgrootpassword
- POSTGRES_HOST=postgres
- POSTGRES_DB=libeufindb
- DANGEROUSLY_DISABLE_HOST_CHECK=true
# not used because they are default values
# - CLIENT_PR_KEY_OUT=/app/keys/client_private_key.pem
# - CLIENT_PUB_KEY_OUT=/app/keys/client_public_key.pem
# - BANK_PUB_KEY_OUT=/app/keys/bank_public_key.pem
command: /app/scripts/init_libeufin_sandbox.sh
tty: true
stdin_open: true # without this node doesn't start; https://stackoverflow.com/questions/61857267/how-to-make-yarn-start-work-inside-docker-image-with-react-scripts-3-4-and-babel
ports:
- "5016:5016" # sandbox
- "5001:5000" # nexus
- "3000:3000" # ui - login: foo/superpassword
expose:
- 5016
- 3000
- 5001
volumes:
- ./scripts:/app/scripts:rw
- ./keys:/app/keys:rw
- ./trace:/app/trace:rw
ebics-service:
image: e36io/ebics-service:hyperfridge
# container_name: ebics
# build:
# context: .
depends_on:
- libeufin
environment:
- spring_profiles_active=sandbox
- LIBEUFIN_SANDBOX_URL=http://libeufin:5016 # overwrite localhost in configs
- LIBEUFIN_NEXUS_URL=http://libeufin:5000
- LIBEUFIN_SANDBOX_ADMIN_PASSWORD=superpassword
- LIBEUFIN_SANDBOX_USERNAME=admin
- LIBEUFIN_SANDBOX_PASSWORD=superpassword
- FRIDGE_OUT_DIR=file:/app/work_out/
ports:
- "8093:8093"
expose:
- 8093
volumes:
- recipie-dir:/app/work_out/:rw
hyperfridge:
container_name: fridge
image: e36io/hyperfridge-r0:latest
# build:
# context: /home/w/workspace/hyperfridge-r0
# dockerfile: ${DOCKERFILE:-DockerfileLinux} # Default to DockerfileLinux, override with DOCKERFILE environment variable if provided
environment:
# for watchdog.sh which generates a new proof in /app/out/ as soon as new file ebics file is dedected in /app/in/
- CLIENT_PR_KEY=/app/keys/client_private_key.pem
- CLIENT_PUB_KEY=/app/keys/client_public_key.pem
- BANK_PUB_KEY=/app/keys/bank_public_key.pem
- WITNESS_PUB_KEY=/data/pub_witness.pem
- WITNESS_PR_KEY=/data/witness.pem
- IN_DIR=/app/in/
- WORK_DIR=/app/work/
- OUT_DIR=/app/out/
- HOST_CMD=/app/host
command: /data/watchdog.sh
working_dir: /data
volumes:
- recipie-dir:/app/out/:rw
- ./keys/:/app/keys/:ro
- ./trace:/app/in:ro
# for DEV
# - /home/w/workspace/hyperfridge-r0/data/checkResponse.sh:/data/checkResponse.sh
# - /home/w/workspace/hyperfridge-r0/data/watchdog.sh:/data/watchdog.sh
pgadmin:
profiles:
- dev
container_name: dbadmin
image: dpage/pgadmin4:7.6
environment:
PGADMIN_DEFAULT_EMAIL: [email protected]
PGADMIN_DEFAULT_PASSWORD: root
MAX_LOGIN_ATTEMPTS: '15' # Ensure this is a string, not a number
POSTGRES_USER: pgrootuser
POSTGRES_PASSWORD: pgrootpassword
POSTGRES_HOST: postgres
POSTGRES_DB: libeufindb
DANGEROUSLY_DISABLE_HOST_CHECK: 'true' # Ensure this is a string, not a boolean
depends_on:
- postgres
volumes:
- /home/w/pgadmin:/var/lib/pgadmin:rw
user: root
ports:
- "53603:53603"
- "8081:80" #mapped on w.e36.io:35050; [email protected] root; add server medi medi medi
volumes:
recipie-dir: