-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yaml
154 lines (143 loc) · 5.81 KB
/
docker-compose.yaml
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
144
145
146
147
148
149
150
151
152
153
version: '2.0'
networks:
basic:
services:
ca0:
container_name: ca0
networks:
- basic
image: hyperledger/fabric-ca:x86_64-1.0.0
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca-org
- FABRIC_CA_SERVER_TLS_ENABLED=true
- FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org.chained-voting.com-cert.pem
- FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/a9401d462cfaefcf08313a3c75e96b5cb8b84f43328f380f274f49113c188693_sk
ports:
- "7054:7054"
command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org.chained-voting.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/a9401d462cfaefcf08313a3c75e96b5cb8b84f43328f380f274f49113c188693_sk -b admin:adminpw -d'
volumes:
- ./blockchain/crypto-config/peerOrganizations/org.chained-voting.com/ca/:/etc/hyperledger/fabric-ca-server-config
orderer.chained-voting.com:
container_name: orderer.chained-voting.com
networks:
- basic
image: hyperledger/fabric-orderer:x86_64-1.0.0
environment:
- ORDERER_GENERAL_LOGLEVEL=debug
- ORDERER_GENERAL_LISTENADDRESS=0.0.0.0
- ORDERER_GENERAL_GENESISMETHOD=file
- ORDERER_GENERAL_GENESISFILE=/var/hyperledger/orderer/orderer.genesis.block
- ORDERER_GENERAL_LOCALMSPID=OrdererMSP
- ORDERER_GENERAL_LOCALMSPDIR=/var/hyperledger/orderer/msp
# enabled TLS
- ORDERER_GENERAL_TLS_ENABLED=true
- ORDERER_GENERAL_TLS_PRIVATEKEY=/var/hyperledger/orderer/tls/server.key
- ORDERER_GENERAL_TLS_CERTIFICATE=/var/hyperledger/orderer/tls/server.crt
- ORDERER_GENERAL_TLS_ROOTCAS=[/var/hyperledger/orderer/tls/ca.crt]
working_dir: /opt/gopath/src/github.com/hyperledger/fabric
command: orderer
volumes:
- ./blockchain/channel-artifacts/genesis.block:/var/hyperledger/orderer/orderer.genesis.block
- ./blockchain/crypto-config/ordererOrganizations/chained-voting.com/orderers/orderer.chained-voting.com/msp:/var/hyperledger/orderer/msp
- ./blockchain/crypto-config/ordererOrganizations/chained-voting.com/orderers/orderer.chained-voting.com/tls:/var/hyperledger/orderer/tls
ports:
- 7050:7050
peer0.org.chained-voting.com:
container_name: peer0.org.chained-voting.com
networks:
- basic
image: hyperledger/fabric-peer:x86_64-1.0.0
environment:
- CORE_PEER_ID=peer0.org.chained-voting.com
- CORE_PEER_ADDRESS=peer0.org.chained-voting.com:7051
- CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.chained-voting.com:7051
- CORE_PEER_LOCALMSPID=OrgMSP
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=chainedvoting_basic
#- CORE_LOGGING_LEVEL=ERROR
- CORE_LOGGING_LEVEL=DEBUG
- CORE_PEER_TLS_ENABLED=true
- CORE_PEER_GOSSIP_USELEADERELECTION=true
- CORE_PEER_GOSSIP_ORGLEADER=false
- CORE_PEER_PROFILE_ENABLED=true
- CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt
- CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key
- CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt
working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer
command: peer node start --peer-defaultchain=false -o orderer.chained-voting.com:7050
volumes:
- /var/run/:/host/var/run/
- ./blockchain/crypto-config/peerOrganizations/org.chained-voting.com/peers/peer0.org.chained-voting.com/msp:/etc/hyperledger/fabric/msp
- ./blockchain/crypto-config/peerOrganizations/org.chained-voting.com/peers/peer0.org.chained-voting.com/tls:/etc/hyperledger/fabric/tls
ports:
- 7051:7051
- 7053:7053
depends_on:
- orderer.chained-voting.com
server:
container_name: server
networks:
- basic
build: server
command: bash -c "npm start"
environment:
- GOPATH=/usr/src/blockchain
volumes:
- ./blockchain/crypto-config:/usr/src/app/resources/crypto-config
- ./blockchain/channel-artifacts:/usr/src/app/resources/channel-artifacts
- ./blockchain/src/chaincode:/usr/src/blockchain/src/chaincode
- $GOPATH/src/github.com:/usr/src/blockchain/src/github.com
- ./server/:/usr/src/app/
- /usr/src/app/node_modules
depends_on:
- ca0
- orderer.chained-voting.com
- peer0.org.chained-voting.com
ports:
- "3000:3000"
- "5858:5858"
client:
container_name: client
networks:
- basic
build: client
command: bash -c "npm start"
volumes:
- ./client/:/usr/src/app
depends_on:
- server
ports:
- "4200:4200"
mysql:
container_name: mysql
networks:
- basic
image: mysql/mysql-server:latest
restart: always
environment:
- MYSQL_ROOT_PASSWORD=123456
- MYSQL_DATABASE=fabricexplorer
- MYSQL_USER=user
- MYSQL_PASSWORD=pass
volumes:
- ./explorer/mysql/fabricexplorer.sql:/docker-entrypoint-initdb.d/fabricexplorer.sql
ports:
- 3306:3306
fabric-explorer:
container_name: fabric-explorer
networks:
- basic
build: explorer
command: bash -c "chmod 775 wait-for-it.sh && ./wait-for-it.sh -t 120 server:3000 -- node main.js"
volumes:
- ./explorer/config/config.json:/opt/blockchain-explorer/fabric-explorer/config.json
- ./explorer/config/network-config-tls.json:/opt/blockchain-explorer/fabric-explorer/app/network-config-tls.json
- ./explorer/config/network-config.json:/opt/blockchain-explorer/fabric-explorer/app/network-config.json
- ./blockchain/crypto-config:/opt/blockchain-explorer/fabric-explorer/artifacts/crypto-config
- ./wait-for-it.sh:/opt/blockchain-explorer/fabric-explorer/wait-for-it.sh
depends_on:
- mysql
- server
ports:
- 8080:8080