-
Notifications
You must be signed in to change notification settings - Fork 2
/
docker-compose.dep.yml
131 lines (126 loc) · 4.41 KB
/
docker-compose.dep.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
# Spins up all the external dependencies to test the aries-controller
# This requires varies HL Aries components: indy pool, wallets db, multitenant agent, tails server; our agency
#
version: '3.5'
networks:
agency-network:
name: agency-network
driver: bridge
ipam:
driver: default
config:
-
subnet: 10.0.0.0/24
services:
# External service dependencies for full test
protocol-indy-pool:
build:
context: resources
dockerfile: indy-pool-kiva.dockerfile
args:
pool_ip: '10.0.0.2'
image: ac-indy-pool
container_name: ac-indy-pool
working_dir: /home/indy
ports:
- "9701:9701"
- "9702:9702"
- "9703:9703"
- "9704:9704"
- "9705:9705"
- "9706:9706"
- "9707:9707"
- "9708:9708"
networks:
agency-network:
ipv4_address: 10.0.0.2
aries-guardianship-agency:
image: kivaprotocol/aries-guardianship-agency:latest
container_name: ac-guardianship-agency
working_dir: /www
ports:
- "3010:3010"
expose:
- "3010"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
networks:
- agency-network
depends_on:
- protocol-indy-pool
tty: true
privileged: true
environment:
- NODE_ENV=LOCAL
- PUBLIC_URL=http://aries-guardianship-agency:3010
- WALLET_DB_HOST=protocol-identity-wallet-db
- WALLET_DB_PORT=5432
- WALLET_DB_USER=postgres
- WALLET_DB_PASS=dbpass
- WALLET_DB_ADMIN_USER=postgres
- WALLET_DB_ADMIN_PASS=dbpass
- TAILS_URL=http://tails-server:6543
- ACAPY_ADMIN_API_KEY=adminApiKey
protocol-identity-wallet-db:
image: postgres:11
container_name: ac-wallet-db
command: postgres -c logging_collector=on -c log_destination=stderr
volumes:
- ./resources:/docker-entrypoint-initdb.d/
networks:
- agency-network
depends_on:
- aries-guardianship-agency
tty: true
environment:
- POSTGRES_HOST=protocol-identity-wallet-db
- POSTGRES_DB=wallets
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=dbpass
multitenant:
image: bcgovimages/aries-cloudagent:py36-1.16-1_0.7.1
container_name: ac-multitenant
networks:
- agency-network
depends_on:
- protocol-indy-pool
- protocol-identity-wallet-db
- aries-guardianship-agency
ports:
- "3020:3020"
- "3021:3021"
expose:
- "3020"
- "3021"
volumes:
- ./resources/:/home/indy/resources
# Have multitenant wait a few seconds until indy ledger is up
# Also for some reason inbound transport doesn't work via env args so using commmand line here
entrypoint: /bin/bash
command: [
"-c",
"sleep 14;
aca-py start \
--inbound-transport http '0.0.0.0' 3020"
]
environment:
- ACAPY_OUTBOUND_TRANSPORT=http
- ACAPY_ADMIN=[0.0.0.0,3021]
- ACAPY_ENDPOINT=http://multitenant:3020
- ACAPY_WEBHOOK_URL=http://aries-guardianship-agency:3010/v1/controller/multitenant
- ACAPY_ADMIN_API_KEY=adminApiKey
- ACAPY_LABEL=multitenant
- ACAPY_WALLET_NAME=multitenant_name
- ACAPY_WALLET_KEY=multitenant_key
- ACAPY_WALLET_TYPE=indy
- ACAPY_WALLET_STORAGE_TYPE=postgres_storage
- ACAPY_WALLET_SEED=0000000000000000000000000000Any1
- ACAPY_WALLET_STORAGE_CONFIG={"url":"protocol-identity-wallet-db:5432","wallet_scheme":"MultiWalletSingleTable"}
- ACAPY_WALLET_STORAGE_CREDS={"account":"postgres","password":"dbpass","admin_account":"postgres","admin_password":"dbpass"}
- ACAPY_GENESIS_FILE=/home/indy/resources/pool_transactions_genesis_local_dev
- ACAPY_WALLET_LOCAL_DID=true
- ACAPY_LOG_LEVEL=info
- ACAPY_AUTO_PROVISION=true
- ACAPY_MULTITENANT=true
- ACAPY_MULTITENANT_ADMIN=true
- ACAPY_MULTITENANT_JWT_SECRET=jwtSecret