/ original-docker-compose.yml
original-docker-compose.yml
  1  version: '3'
  2  
  3  services:
  4    fedimintd_1:
  5      image: fedimint/fedimintd:v0.4.0-rc.6
  6      environment:
  7        - FM_DATA_DIR=/data
  8        - FM_BIND_P2P=0.0.0.0:18173
  9        - FM_P2P_URL=fedimint://fedimintd_1:18173
 10        - FM_BIND_API=0.0.0.0:18174
 11        - FM_API_URL=ws://fedimintd_1:18174
 12        - FM_DEFAULT_BITCOIND_RPC_URL=http://bitcoin:bitcoin@bitcoind:43782
 13        - FM_DEFAULT_BITCOIND_RPC_KIND=bitcoind
 14        - FM_REL_NOTES_ACK=0_4_xyz
 15      ports:
 16        - '18174:18174'
 17      volumes:
 18        - ./fm_data/1/data:/data
 19      depends_on:
 20        - bitcoind
 21  
 22    gatewayd_1:
 23      image: fedimint/gatewayd:v0.4.0-rc.6
 24      command: gatewayd lnd
 25      environment:
 26        # Path to folder containing gateway config and data files
 27        - FM_GATEWAY_DATA_DIR=/gateway_data
 28        # Gateway webserver listen address
 29        - FM_GATEWAY_LISTEN_ADDR=0.0.0.0:8175
 30        # Public URL from which the webserver API is reachable
 31        - FM_GATEWAY_API_ADDR=http://gatewayd_1:8175
 32        # Gateway webserver authentication password
 33        - FM_GATEWAY_PASSWORD=theresnosecondbest
 34        # Configured gateway routing fees Format: <base_msat>,<proportional_millionths>
 35        - FM_GATEWAY_FEES=0,1000
 36        # LND RPC address
 37        - FM_LND_RPC_ADDR=https://lnd_1:11009
 38        # LND TLS cert file path
 39        - FM_LND_TLS_CERT=/lnd_data/tls.cert
 40        # LND macaroon file path
 41        - FM_LND_MACAROON=/lnd_data/admin.macaroon
 42      volumes:
 43        - ./fm_data/gw:/gateway_data
 44        - ./misc/test/data/data:/lnd_data
 45      ports:
 46        - '8175:8175'
 47      depends_on:
 48        - lnd_1
 49  
 50    lnd_1:
 51      image: lightninglabs/lnd:v0.18.2-beta
 52      ports:
 53        - '11009:11009'
 54      volumes:
 55        - ./misc/test/data:/root/.lnd
 56        - ./misc/test/lnd.conf:/root/.lnd/lnd.conf
 57      depends_on:
 58        - bitcoind
 59        - fedimintd_1
 60  
 61    fedimintd_2:
 62      image: fedimint/fedimintd:v0.4.0-rc.6
 63      environment:
 64        - FM_DATA_DIR=/data
 65        - FM_BIND_P2P=0.0.0.0:18173
 66        - FM_P2P_URL=fedimint://fedimintd_2:18173
 67        - FM_BIND_API=0.0.0.0:18184
 68        - FM_API_URL=ws://fedimintd_2:18184
 69        - FM_DEFAULT_BITCOIND_RPC_URL=http://bitcoin:bitcoin@bitcoind:43782
 70        - FM_DEFAULT_BITCOIND_RPC_KIND=bitcoind
 71        - FM_REL_NOTES_ACK=0_4_xyz
 72      ports:
 73        - '18184:18184'
 74      volumes:
 75        - ./fm_data/2/data:/data
 76      depends_on:
 77        - bitcoind
 78  
 79    # Uncomment me for a second gateway
 80    # gatewayd_2:
 81    #   image: fedimint/gatewayd:master
 82    #   networks:
 83    #     app_network:
 84    #       ipv4_address: 10.5.0.8
 85  
 86    fedimintd_3:
 87      image: fedimint/fedimintd:v0.4.0-rc.6
 88      environment:
 89        - FM_DATA_DIR=/data
 90        - FM_BIND_P2P=0.0.0.0:18174
 91        - FM_P2P_URL=fedimint://fedimintd_3:18174
 92        - FM_BIND_API=0.0.0.0:18185
 93        - FM_API_URL=ws://fedimintd_3:18185
 94        - FM_DEFAULT_BITCOIND_RPC_URL=http://bitcoin:bitcoin@bitcoind:43782
 95        - FM_DEFAULT_BITCOIND_RPC_KIND=bitcoind
 96        - FM_REL_NOTES_ACK=0_4_xyz
 97      ports:
 98        - '18185:18185'
 99      volumes:
100        - ./fm_data/3/data:/data
101      depends_on:
102        - bitcoind
103  
104    fedimintd_4:
105      image: fedimint/fedimintd:v0.4.0-rc.6
106      environment:
107        - FM_DATA_DIR=/data
108        - FM_BIND_P2P=0.0.0.0:18175
109        - FM_P2P_URL=fedimint://fedimintd_4:18175
110        - FM_BIND_API=0.0.0.0:18186
111        - FM_API_URL=ws://fedimintd_4:18186
112        - FM_DEFAULT_BITCOIND_RPC_URL=http://bitcoin:bitcoin@bitcoind:43782
113        - FM_DEFAULT_BITCOIND_RPC_KIND=bitcoind
114        - FM_REL_NOTES_ACK=0_4_xyz
115      ports:
116        - '18186:18186'
117      volumes:
118        - ./fm_data/4/data:/data
119      depends_on:
120        - bitcoind
121  
122    bitcoind:
123      image: btcpayserver/bitcoin:26.0
124      environment:
125        BITCOIN_NETWORK: regtest
126        BITCOIN_EXTRA_ARGS: |
127          rpcport=43782
128          rpcbind=0.0.0.0:43782
129          port=39388
130          whitelist=0.0.0.0/0
131          rpcuser=bitcoin
132          rpcpassword=bitcoin
133          rpcallowip=0.0.0.0/0
134          fallbackfee=0.0004
135          txindex=1
136          server=1
137          zmqpubrawblock=tcp://0.0.0.0:38332
138          zmqpubrawtx=tcp://0.0.0.0:38333
139      expose:
140        - '43782'
141        - '39388'
142      ports:
143        - '43782:43782'
144        - '39388:39388'
145      volumes:
146        - './fm_data/bitcoin:/data'
147  
148    # Uncomment me to test out Dockerfile locally
149    # fedimint_ui:
150    #   build:
151    #     context: .
152    #     dockerfile: Dockerfile
153    #   environment:
154    #     - PORT=3000
155    #     # - REACT_APP_FM_CONFIG_API=ws://localhost:18184
156    #   expose:
157    #     - '3000'
158    #   ports:
159    #     - '3000:3000'