forked from mohbehnia/pvra-template
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdocker-compose.yml
106 lines (100 loc) · 2.84 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
version: '3.9'
services:
aesm:
image: initc3/linux-sgx:2.13-ubuntu20.04
devices:
- /dev/isgx
volumes:
- aesmd-socket:/var/run/aesmd
user: aesmd
working_dir: /opt/intel/sgx-aesm-service/aesm
environment:
LD_LIBRARY_PATH: /opt/intel/sgx-aesm-service/aesm
command: ./aesm_service --no-daemon
billboard:
image: ghcr.io/foundry-rs/foundry:latest
ports:
- 8545:8545
volumes:
- accounts:/accounts/
environment:
ANVIL_IP_ADDR: 0.0.0.0
entrypoint: ""
command: ["anvil", "--config-out=/accounts/accounts.json", "--accounts", "10"]
enclave-sim:
image: ${APP_NAME}-enclave-sim
build:
context: ../
dockerfile: docker/Dockerfile
args:
SGX_MODE: SW
SGX_DEBUG: 1
APP_NAME: ${APP_NAME}
depends_on:
- billboard
environment:
deployment_location: DOCKER
SGX_MODE: SW
PYTHONBREAKPOINT: ipdb.set_trace
SGX_DEBUG: 1
CCF_ENABLE: 0
SGX_SPID: ${SGX_SPID}
IAS_PRIMARY_KEY: ${IAS_PRIMARY_KEY}
NUM_USERS: ${NUM_USERS}
PROJECT_ROOT: /home/photon/${APP_NAME}
volumes:
- accounts:/home/photon/${APP_NAME}/accounts/
- ../solidity:/home/photon/${APP_NAME}/solidity/
- ../enclave:/home/photon/${APP_NAME}/enclave/
- ../app:/home/photon/${APP_NAME}/app/
- ../interface:/home/photon/${APP_NAME}/interface/
- ../scripts:/home/photon/${APP_NAME}/scripts/
- ../applications/${APP_NAME}:/home/photon/${APP_NAME}/src
- ../test_sgx:/home/photon/${APP_NAME}/test_sgx
command: python demo.py
enclave:
image: ${APP_NAME}-enclave
build:
context: ../
dockerfile: docker/Dockerfile
args:
SGX_MODE: HW
SGX_DEBUG: 1
APP_NAME: ${APP_NAME}
environment:
deployment_location: DOCKER
CCF_ENABLE: ${CCF_ENABLE}
SGX_SPID: ${SGX_SPID}
IAS_PRIMARY_KEY: ${IAS_PRIMARY_KEY}
PYTHONBREAKPOINT: ipdb.set_trace
SGX_DEBUG: 1
NUM_USERS: ${NUM_USERS}
PROJECT_ROOT: /home/photon/${APP_NAME}
http_proxy: ${http_proxy}
https_proxy: ${https_proxy}
devices:
- /dev/isgx
volumes:
- aesmd-socket:/var/run/aesmd
- accounts:/home/photon/${APP_NAME}/accounts/
- ../solidity:/home/photon/${APP_NAME}/solidity/
- ../enclave:/home/photon/${APP_NAME}/enclave/
- ../app:/home/photon/${APP_NAME}/app/
- ../interface:/home/photon/${APP_NAME}/interface/
- ../scripts:/home/photon/${APP_NAME}/scripts/
- ../applications/${APP_NAME}:/home/photon/${APP_NAME}/src
stdin_open: true
tty: true
depends_on:
- billboard
- aesm
working_dir: /home/photon/${APP_NAME}/scripts
command: python demo.py
volumes:
accounts:
aesmd-socket:
driver: local
driver_opts:
type: "tmpfs"
device: "tmpfs"
o: "rw"