github.com/mysteriumnetwork/node@v0.0.0-20240516044423-365054f76801/docker-compose.e2e-traversal.yml (about)

     1  version: '3.0'
     2  
     3  services:
     4    morqa:
     5      image: mysteriumnetwork/quality-oracle:latest
     6      command: >
     7        --bind-addr=:8085
     8        --prometheus=http://prometheus:9090
     9        --metrics-addr=:8080
    10      depends_on:
    11        - prometheus
    12      expose:
    13        - 8085
    14        - 8080
    15      cap_add:
    16        - NET_ADMIN
    17      sysctls:
    18        - net.ipv4.conf.default.rp_filter=0
    19        - net.ipv4.conf.all.rp_filter=0
    20        - net.ipv4.conf.eth0.rp_filter=0
    21        - net.ipv4.conf.eth1.rp_filter=0
    22      dns: 172.30.0.254
    23      networks:
    24        public0:
    25          ipv4_address: 172.30.0.198
    26        public1:
    27          ipv4_address: 172.31.0.198
    28  
    29    prometheus:
    30      image: prom/prometheus:v2.10.0
    31      volumes:
    32        - ./e2e/prometheus:/prometheus
    33      command:
    34        - '--config.file=/prometheus/config.yml'
    35        - '--storage.tsdb.path=data/'
    36      expose:
    37        - 9090
    38      dns: 172.30.0.254
    39      networks:
    40        public0:
    41          ipv4_address: 172.30.0.199
    42        public1:
    43          ipv4_address: 172.31.0.199
    44  
    45    ipify:
    46      image: mysteriumnetwork/ipify:1.0.1
    47      expose:
    48        - 3000
    49      cap_add:
    50        - NET_ADMIN
    51      sysctls:
    52        - net.ipv4.conf.default.rp_filter=0
    53        - net.ipv4.conf.all.rp_filter=0
    54        - net.ipv4.conf.eth0.rp_filter=0
    55        - net.ipv4.conf.eth1.rp_filter=0
    56      dns: 172.30.0.254
    57      networks:
    58        public0:
    59          ipv4_address: 172.30.0.10
    60        public1:
    61          ipv4_address: 172.31.0.10
    62  
    63    broker-real:
    64      image: nats:1.0.4
    65      expose:
    66        - 4222
    67      cap_add:
    68        - NET_ADMIN
    69      sysctls:
    70        - net.ipv4.conf.default.rp_filter=0
    71        - net.ipv4.conf.all.rp_filter=0
    72        - net.ipv4.conf.eth0.rp_filter=0
    73        - net.ipv4.conf.eth1.rp_filter=0
    74      dns: 172.30.0.254
    75      networks:
    76        public0:
    77          ipv4_address: 172.30.0.30
    78        public1:
    79          ipv4_address: 172.31.0.30
    80  
    81    broker:
    82      image: mysteriumnetwork/nats-proxy:1.0.1
    83      command:
    84        - '-target=broker-real:4222'
    85      depends_on:
    86        - broker-real
    87      expose:
    88        - 4222
    89      cap_add:
    90        - NET_ADMIN
    91      sysctls:
    92        - net.ipv4.conf.default.rp_filter=0
    93        - net.ipv4.conf.all.rp_filter=0
    94        - net.ipv4.conf.eth0.rp_filter=0
    95        - net.ipv4.conf.eth1.rp_filter=0
    96      dns: 172.30.0.254
    97      networks:
    98        public0:
    99          ipv4_address: 172.30.0.31
   100        public1:
   101          ipv4_address: 172.31.0.31
   102  
   103    db:
   104      image: postgres:13-alpine
   105      container_name: discovery_db
   106      ports:
   107        - 5432:5432
   108      environment:
   109        - POSTGRES_USER=discovery
   110        - POSTGRES_DB=discovery
   111        - POSTGRES_PASSWORD=discovery
   112      healthcheck:
   113        test: ["CMD-SHELL", "pg_isready -U postgres"]
   114        interval: 10s
   115        timeout: 5s
   116        retries: 5
   117      dns: 172.30.0.254
   118      networks:
   119        public0:
   120          ipv4_address: 172.30.0.201
   121        public1:
   122          ipv4_address: 172.31.0.201
   123  
   124    discovery-service:
   125      image: mysteriumnetwork/discovery:2.18.3
   126      expose:
   127        - 8081
   128      environment:
   129        - PORT=8081
   130        - DB_DSN=postgresql://discovery:discovery@db:5432/discovery
   131        - QUALITY_ORACLE_URL=http://morqa:8085
   132        - BROKER_URL=broker
   133        - UNIVERSE_JWT_SECRET=suchsecret
   134        - REDIS_ADDRESS=redis:6379
   135        - BADGER_ADDRESS=http://badger:1234
   136        - QUALITY_CACHE_TTL=20m
   137        - LOCATION_ADDRESS="badurl"
   138      depends_on:
   139        - db
   140        - redis
   141        - http-mock
   142      cap_add:
   143        - NET_ADMIN
   144      sysctls:
   145        - net.ipv4.conf.default.rp_filter=0
   146        - net.ipv4.conf.all.rp_filter=0
   147        - net.ipv4.conf.eth0.rp_filter=0
   148        - net.ipv4.conf.eth1.rp_filter=0
   149      dns: 172.30.0.254
   150      networks:
   151        public0:
   152          ipv4_address: 172.30.0.214
   153        public1:
   154          ipv4_address: 172.31.0.214
   155  
   156    discovery:
   157      image: nginx:latest
   158      expose:
   159        - 8080
   160      volumes:
   161        - ./e2e/nginx/nginx.conf:/etc/nginx/nginx.conf:ro
   162      depends_on:
   163        - discovery-service
   164        - discovery-pricer
   165      cap_add:
   166        - NET_ADMIN
   167      sysctls:
   168        - net.ipv4.conf.default.rp_filter=0
   169        - net.ipv4.conf.all.rp_filter=0
   170        - net.ipv4.conf.eth0.rp_filter=0
   171        - net.ipv4.conf.eth1.rp_filter=0
   172      dns: 172.30.0.254
   173      networks:
   174        public0:
   175          ipv4_address: 172.30.0.215
   176        public1:
   177          ipv4_address: 172.31.0.215
   178  
   179    discovery-pricer:
   180      image: mysteriumnetwork/discovery-pricer:2.18.3
   181      expose:
   182        - 8091
   183      environment:
   184        - PORT=8091
   185        - DB_DSN=postgresql://discovery:discovery@db:5432/discovery
   186        - QUALITY_ORACLE_URL=http://morqa:8085
   187        - BROKER_URL=broker
   188        - REDIS_ADDRESS=redis:6379
   189        - UNIVERSE_JWT_SECRET=suchsecret
   190        - BADGER_ADDRESS=http://badger:1234
   191        - QUALITY_CACHE_TTL=20m
   192        - LOCATION_ADDRESS="badurl"
   193        - SENTINEL_URL="https://sentinel.mysterium.network"
   194      depends_on:
   195        - db
   196        - redis
   197        - http-mock
   198      cap_add:
   199        - NET_ADMIN
   200      sysctls:
   201        - net.ipv4.conf.default.rp_filter=0
   202        - net.ipv4.conf.all.rp_filter=0
   203        - net.ipv4.conf.eth0.rp_filter=0
   204        - net.ipv4.conf.eth1.rp_filter=0
   205      dns: 172.30.0.254
   206      networks:
   207        public0:
   208          ipv4_address: 172.30.0.200
   209        public1:
   210          ipv4_address: 172.31.0.200
   211  
   212    # private blockchain
   213    ganache:
   214      image: trufflesuite/ganache:v7.3.2
   215      expose:
   216        - 8545
   217      command: >
   218        --chain.chainId 5 --chain.networkId 5 --wallet.mnemonic "amused glory pen avocado toilet dragon entry kitchen cliff retreat canyon danger"
   219      dns: 172.30.0.254
   220      sysctls:
   221        - net.ipv4.conf.default.rp_filter=0
   222        - net.ipv4.conf.all.rp_filter=0
   223        - net.ipv4.conf.eth0.rp_filter=0
   224        - net.ipv4.conf.eth1.rp_filter=0
   225      networks:
   226        public0:
   227          ipv4_address: 172.30.0.202
   228        public1:
   229          ipv4_address: 172.31.0.202
   230  
   231    ganache2:
   232      image: trufflesuite/ganache:v7.3.2
   233      expose:
   234        - 8545
   235      command: >
   236        --chain.chainId 80001 --chain.networkId 80001 --wallet.mnemonic "amused glory pen avocado toilet dragon entry kitchen cliff retreat canyon danger"
   237      dns: 172.30.0.254
   238      sysctls:
   239        - net.ipv4.conf.default.rp_filter=0
   240        - net.ipv4.conf.all.rp_filter=0
   241        - net.ipv4.conf.eth0.rp_filter=0
   242        - net.ipv4.conf.eth1.rp_filter=0
   243      networks:
   244        public0:
   245          ipv4_address: 172.30.0.209
   246        public1:
   247          ipv4_address: 172.31.0.209
   248  
   249    trust:
   250      image: mysteriumnetwork/trust-oracle:latest
   251      command: >
   252        -swaggerHost=trust
   253        -fallbackTrustedIDs=0xc4cb9a91b8498776f6f8a0d5a2a23beec9b3cef3
   254      dns: 172.30.0.254
   255      sysctls:
   256        - net.ipv4.conf.default.rp_filter=0
   257        - net.ipv4.conf.all.rp_filter=0
   258        - net.ipv4.conf.eth0.rp_filter=0
   259        - net.ipv4.conf.eth1.rp_filter=0
   260      networks:
   261        public0:
   262          ipv4_address: 172.30.0.207
   263        public1:
   264          ipv4_address: 172.31.0.207
   265  
   266    http-mock:
   267      image: mockserver/mockserver:mockserver-5.15.0
   268      dns: 172.30.0.254
   269      sysctls:
   270        - net.ipv4.conf.default.rp_filter=0
   271        - net.ipv4.conf.all.rp_filter=0
   272        - net.ipv4.conf.eth0.rp_filter=0
   273        - net.ipv4.conf.eth1.rp_filter=0
   274      ports:
   275        - 9999:1080
   276      networks:
   277        public0:
   278          ipv4_address: 172.30.0.211
   279        public1:
   280          ipv4_address: 172.31.0.211
   281  
   282  
   283    transactordatabase:
   284      image: postgres:13-alpine
   285      expose:
   286        - 5432
   287      environment:
   288        - POSTGRES_USER=transactor
   289        - POSTGRES_DB=transactor
   290        - POSTGRES_PASSWORD=transactor
   291      healthcheck:
   292        test: ["CMD-SHELL", "pg_isready -U postgres"]
   293        interval: 10s
   294        timeout: 5s
   295        retries: 5
   296      dns: 172.30.0.254
   297      networks:
   298        public0:
   299          ipv4_address: 172.30.0.210
   300        public1:
   301          ipv4_address: 172.31.0.210
   302  
   303    transactor-sidecar:
   304      image: mysteriumnetwork/transactor-sidecar:3.0.10
   305      sysctls:
   306        - net.ipv4.conf.default.rp_filter=0
   307        - net.ipv4.conf.all.rp_filter=0
   308        - net.ipv4.conf.eth0.rp_filter=0
   309        - net.ipv4.conf.eth1.rp_filter=0
   310      depends_on:
   311        - transactordatabase
   312        - redis
   313        - http-mock
   314      command: >
   315        /usr/bin/sidecar
   316        -configPaths=/transactor/sidecar_config.yaml
   317      volumes:
   318        - ./e2e/transactor:/transactor
   319      dns: 172.30.0.254
   320      networks:
   321        public0:
   322          ipv4_address: 172.30.0.212
   323        public1:
   324          ipv4_address: 172.31.0.212
   325  
   326    transactor:
   327      image: mysteriumnetwork/transactor:3.0.10
   328      environment:
   329        PORT: 8888
   330      expose:
   331        - 8888
   332      sysctls:
   333        - net.ipv4.conf.default.rp_filter=0
   334        - net.ipv4.conf.all.rp_filter=0
   335        - net.ipv4.conf.eth0.rp_filter=0
   336        - net.ipv4.conf.eth1.rp_filter=0
   337      depends_on:
   338        - ganache
   339        - redis
   340        - ganache2
   341        - transactordatabase
   342        - http-mock
   343        - transactor-sidecar
   344      command: >
   345        -configPaths=/transactor/config.yaml
   346      volumes:
   347        - ./e2e/blockchain/keystore:/keystore
   348        - ./e2e/transactor:/transactor
   349      dns: 172.30.0.254
   350      networks:
   351        public0:
   352          ipv4_address: 172.30.0.203
   353        public1:
   354          ipv4_address: 172.31.0.203
   355  
   356    hermes:
   357      image: mysteriumnetwork/hermes:2.3.17
   358      environment:
   359        LOG_LEVEL: trace
   360      expose:
   361        - 8889
   362      sysctls:
   363        - net.ipv4.conf.default.rp_filter=0
   364        - net.ipv4.conf.all.rp_filter=0
   365        - net.ipv4.conf.eth0.rp_filter=0
   366        - net.ipv4.conf.eth1.rp_filter=0
   367      depends_on:
   368        - ganache
   369        - redis
   370        - mongodb
   371        - ganache2
   372        - transactor
   373        - pilvytis-mock
   374      command: >
   375        -identityPassphrase ""
   376        -Chain1Myst 0xaa9c4e723609cb913430143fbc86d3cbe7adca21
   377        -Chain1RPCEndpoint http://ganache:8545
   378        -Chain1ChainID 5
   379        -transactorBaseUri "http://transactor:8888/api/v1/"
   380        -Chain1chImplementation 0x599d43715df3070f83355d9d90ae62c159e62a75
   381        -Chain1Registry 0x427c2bad22335710aec5e477f3e3adcd313a9bcb
   382        -operator 0x354bd098b4ef8c9e70b7f21be2d455df559705d7
   383        -Chain1HermesAddress 0x241f6e1d0bb17f45767dc60a6bd3d21cdb543a0c
   384        -Chain2Myst 0xaa9c4e723609cb913430143fbc86d3cbe7adca21
   385        -Chain2RPCEndpoint ws://ganache2:8545
   386        -Chain2ChainID 80001
   387        -Chain2chImplementation 0x599d43715df3070f83355d9d90ae62c159e62a75
   388        -Chain2Registry 0x427c2bad22335710aec5e477f3e3adcd313a9bcb
   389        -Chain2HermesAddress 0x241f6e1d0bb17f45767dc60a6bd3d21cdb543a0c
   390        -MongoReplSet rs0
   391        -keystoreDir /keystore
   392        -bcDataRefreshInterval 1ns
   393        -MongoUser hermes
   394        -transactorBaseUri "http://transactor:8888/api/v1/"
   395        -MongoPass hermes
   396        -MongoHost "mongodb:27017"
   397        -MongoDatabase hermes
   398        -MongoReplSet ""
   399        -redisAddress "redis:6379"
   400        -bindAddr "0.0.0.0:8889"
   401        -pilvytisBaseURL http://pilvytis-mock:8080
   402      volumes:
   403        - ./e2e/blockchain/keystore:/keystore
   404      dns: 172.30.0.254
   405      networks:
   406        public0:
   407          ipv4_address: 172.30.0.204
   408        public1:
   409          ipv4_address: 172.31.0.204
   410  
   411    pilvytis-mock:
   412      image: wiremock/wiremock:2.32.0
   413      expose:
   414        - 8080
   415      volumes:
   416        - ./e2e/pilvytis:/home/wiremock
   417      dns: 172.30.0.254
   418      networks:
   419        public0:
   420          ipv4_address: 172.30.0.213
   421        public1:
   422          ipv4_address: 172.31.0.213
   423  
   424    redis:
   425      image: bitnami/redis:6.2.14
   426      container_name: 'hermes_redis'
   427      expose:
   428        - 6379
   429      environment:
   430        - ALLOW_EMPTY_PASSWORD=yes
   431      dns: 172.30.0.254
   432      networks:
   433        public0:
   434          ipv4_address: 172.30.0.206
   435        public1:
   436          ipv4_address: 172.31.0.206
   437  
   438    mongodb:
   439      image: 'mongo:4.2.3'
   440      environment:
   441        - MONGO_INITDB_ROOT_PASSWORD=root
   442        - MONGO_INITDB_ROOT_USERNAME=root
   443        - MONGO_INITDB_DATABASE=admin
   444        - MONGO_NON_ROOT_USERNAME=hermes
   445        - MONGO_NON_ROOT_PASSWORD=hermes
   446        - MONGO_REPLICA_SET_NAME=rs0
   447      expose:
   448        - 27017
   449        - 27018
   450        - 27019
   451      volumes:
   452        - ./e2e/mongo-init.e2e.js:/docker-entrypoint-initdb.d/mongo-init.js:ro
   453      dns: 172.30.0.254
   454      networks:
   455        public0:
   456          ipv4_address: 172.30.0.205
   457        public1:
   458          ipv4_address: 172.31.0.205
   459      command: ["mongod", "--replSet", "rs0"]
   460      healthcheck:
   461          test: 'test $$(echo "rs.initiate({_id: \"rs0\",version: 1,members: [{ _id: 0, host : \"mongodb:27017\" }]}).ok || rs.status().ok" | mongo -u root -p root --quiet) -eq 1'
   462          interval: 5s
   463          start_period: 5s
   464  
   465    myst-consumer-hermes2:
   466      sysctls:
   467        - net.ipv6.conf.all.disable_ipv6=0
   468      build:
   469        context: .
   470        dockerfile: ./bin/docker/alpine-prebuilt/Dockerfile
   471      depends_on:
   472        - broker
   473        - discovery
   474        - ipify
   475        - transactor
   476        - hermes2
   477        - myst-provider
   478        - morqa
   479      cap_add:
   480        - NET_ADMIN
   481      devices:
   482        - /dev/net/tun
   483      environment:
   484        - DEFAULT_ROUTE=10.100.1.2
   485      command: >
   486        --discovery.ping=1s
   487        --discovery.fetch=1s
   488        --chains.1.myst=0xaa9c4e723609cb913430143fbc86d3cbe7adca21
   489        --chains.1.registry=0x427c2bad22335710aec5e477f3e3adcd313a9bcb
   490        --chains.1.channelImplementation=0x599d43715df3070f83355d9d90ae62c159e62a75
   491        --chains.1.hermes=0xfd63dc49c7163d82d6f0a4c23ff13216d702ce50
   492        --chains.1.knownHermeses=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   493        --chains.1.knownHermeses=0xfd63dc49c7163d82d6f0a4c23ff13216d702ce50
   494        --transactor.address=http://transactor:8888/api/v1
   495        --ip-detector=http://ipify:3000/?format=json
   496        --location.type=manual
   497        --log-level=debug
   498        --broker-address=broker
   499        --tequilapi.address=0.0.0.0
   500        --tequilapi.allowed-hostnames=.
   501        --discovery.address=http://discovery:8080/api/v4
   502        --chains.2.myst=0xaa9c4e723609cb913430143fbc86d3cbe7adca21
   503        --chains.2.registry=0x427c2bad22335710aec5e477f3e3adcd313a9bcb
   504        --chains.2.channelImplementation=0x599d43715df3070f83355d9d90ae62c159e62a75
   505        --chains.2.hermes=0xfd63dc49c7163d82d6f0a4c23ff13216d702ce50
   506        --chains.2.knownHermeses=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   507        --chains.2.knownHermeses=0xfd63dc49c7163d82d6f0a4c23ff13216d702ce50
   508        --chains.2.chainID=80001
   509        --chain-id=80001
   510        --ether.client.rpcl2=ws://ganache2:8545
   511        --ether.client.rpcl1=http://ganache:8545
   512        --keystore.lightweight
   513        --firewall.killSwitch.always
   514        --quality.address=http://morqa:8085/api/v3
   515        --stun-servers=""
   516        --local-service-discovery=true
   517        --payments.registry-transactor-poll.interval=1s
   518        --observer.address=""
   519        daemon
   520      dns: 172.30.0.254
   521      networks:
   522        priv1:
   523          ipv4_address: 10.100.1.105
   524  
   525    hermes2:
   526      image: mysteriumnetwork/hermes:3.3.15
   527      sysctls:
   528        - net.ipv4.conf.default.rp_filter=0
   529        - net.ipv4.conf.all.rp_filter=0
   530        - net.ipv4.conf.eth0.rp_filter=0
   531        - net.ipv4.conf.eth1.rp_filter=0
   532      environment:
   533        LOG_LEVEL: trace
   534      expose:
   535        - 8889
   536      depends_on:
   537        - ganache
   538        - ganache2
   539        - redis
   540        - transactor
   541      command: >
   542        -configPaths=/hermes/config.yaml
   543      volumes:
   544        - ./e2e/blockchain/keystore:/keystore
   545        - ./e2e/hermes:/hermes
   546      dns: 172.30.0.254
   547      networks:
   548        public0:
   549          ipv4_address: 172.30.0.208
   550        public1:
   551          ipv4_address: 172.31.0.208
   552  
   553    myst-consumer-wireguard:
   554      build:
   555        context: .
   556        dockerfile: ./bin/docker/alpine-prebuilt/Dockerfile
   557      environment:
   558        - DEFAULT_ROUTE=10.100.1.2
   559      depends_on:
   560        - forwarder
   561        - broker
   562        - discovery
   563        - ipify
   564        - transactor
   565        - hermes
   566        - morqa
   567        - ganache
   568      cap_add:
   569        - NET_ADMIN
   570      devices:
   571        - /dev/net/tun
   572      sysctls:
   573        - net.ipv6.conf.all.disable_ipv6=0
   574      command: >
   575        --discovery.ping=1s
   576        --discovery.fetch=1s
   577        --payments.bc.timeout=1s
   578        --chains.1.myst=0xaa9c4e723609cb913430143fbc86d3cbe7adca21
   579        --ip-detector=http://ipify:3000/?format=json
   580        --location.type=manual \
   581        --log-level=debug
   582        --broker-address=broker
   583        --tequilapi.address=0.0.0.0
   584        --tequilapi.allowed-hostnames=.
   585        --discovery.address=http://discovery:8080/api/v4
   586        --chains.2.myst=0xaa9c4e723609cb913430143fbc86d3cbe7adca21
   587        --chains.2.registry=0x427c2bad22335710aec5e477f3e3adcd313a9bcb
   588        --chains.2.channelImplementation=0x599d43715df3070f83355d9d90ae62c159e62a75
   589        --chains.2.hermes=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   590        --chains.2.knownHermeses=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   591        --chains.2.knownHermeses=0xfd63dc49c7163d82d6f0a4c23ff13216d702ce50
   592        --chains.2.chainID=80001
   593        --chain-id=80001
   594        --ether.client.rpcl2=ws://ganache2:8545
   595        --ether.client.rpcl1=http://ganache:8545
   596        --keystore.lightweight
   597        --chains.1.registry=0x427c2bad22335710aec5e477f3e3adcd313a9bcb
   598        --chains.1.channelImplementation=0x599d43715df3070f83355d9d90ae62c159e62a75
   599        --chains.1.hermes=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   600        --chains.1.knownHermeses=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   601        --chains.1.knownHermeses=0xfd63dc49c7163d82d6f0a4c23ff13216d702ce50
   602        --transactor.address=http://transactor:8888/api/v1
   603        --quality.address=http://morqa:8085/api/v3
   604        --firewall.killSwitch.always
   605        --stun-servers=""
   606        --local-service-discovery=true
   607        --payments.registry-transactor-poll.interval=1s
   608        --observer.address=""
   609        daemon
   610      dns: 172.30.0.254
   611      networks:
   612        priv1:
   613          ipv4_address: 10.100.1.101
   614  
   615  
   616    myst-consumer-openvpn:
   617      sysctls:
   618        - net.ipv6.conf.all.disable_ipv6=0
   619      environment:
   620        - DEFAULT_ROUTE=10.100.1.2
   621      build:
   622        context: .
   623        dockerfile: ./bin/docker/alpine-prebuilt/Dockerfile
   624      depends_on:
   625        - broker
   626        - discovery
   627        - ipify
   628        - transactor
   629        - hermes
   630        - myst-provider
   631        - morqa
   632        - ganache
   633      cap_add:
   634        - NET_ADMIN
   635      devices:
   636        - /dev/net/tun
   637      command: >
   638        --discovery.ping=1s
   639        --discovery.fetch=1s
   640        --chains.1.registry=0x427c2bad22335710aec5e477f3e3adcd313a9bcb
   641        --chains.1.channelImplementation=0x599d43715df3070f83355d9d90ae62c159e62a75
   642        --chains.1.hermes=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   643        --chains.1.knownHermeses=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   644        --chains.1.knownHermeses=0xfd63dc49c7163d82d6f0a4c23ff13216d702ce50
   645        --chains.1.myst=0xaa9c4e723609cb913430143fbc86d3cbe7adca21
   646        --transactor.address=http://transactor:8888/api/v1
   647        --ip-detector=http://ipify:3000/?format=json
   648        --location.type=manual
   649        --log-level=debug
   650        --broker-address=broker
   651        --tequilapi.address=0.0.0.0
   652        --tequilapi.allowed-hostnames=.
   653        --discovery.address=http://discovery:8080/api/v4
   654        --chains.2.myst=0xaa9c4e723609cb913430143fbc86d3cbe7adca21
   655        --chains.2.registry=0x427c2bad22335710aec5e477f3e3adcd313a9bcb
   656        --chains.2.channelImplementation=0x599d43715df3070f83355d9d90ae62c159e62a75
   657        --chains.2.hermes=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   658        --chains.2.knownHermeses=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   659        --chains.2.knownHermeses=0xfd63dc49c7163d82d6f0a4c23ff13216d702ce50
   660        --chains.2.chainID=80001
   661        --chain-id=80001
   662        --ether.client.rpcl2=ws://ganache2:8545
   663        --ether.client.rpcl1=http://ganache:8545
   664        --keystore.lightweight
   665        --firewall.killSwitch.always
   666        --quality.address=http://morqa:8085/api/v3
   667        --stun-servers=""
   668        --local-service-discovery=true
   669        --payments.registry-transactor-poll.interval=1s
   670        --observer.address=""
   671        daemon
   672      dns: 172.30.0.254
   673      networks:
   674        priv1:
   675          ipv4_address: 10.100.1.103
   676  
   677    myst-consumer-noop:
   678      sysctls:
   679        - net.ipv6.conf.all.disable_ipv6=0
   680      environment:
   681        - DEFAULT_ROUTE=10.100.1.2
   682      build:
   683        context: .
   684        dockerfile: ./bin/docker/alpine-prebuilt/Dockerfile
   685      volumes:
   686        - ./e2e/myst-consumer/keystore/remember.json:/var/lib/mysterium-node/keystore/remember.json
   687        - ./e2e/myst-consumer/keystore/UTC--2020-07-31T02-37-15.148642000Z--c4cb9a91b8498776f6f8a0d5a2a23beec9b3cef3:/var/lib/mysterium-node/keystore/UTC--2020-07-31T02-37-15.148642000Z--c4cb9a91b8498776f6f8a0d5a2a23beec9b3cef3
   688      depends_on:
   689        - broker
   690        - discovery
   691        - ipify
   692        - transactor
   693        - hermes
   694        - myst-provider
   695        - morqa
   696        - ganache
   697      cap_add:
   698        - NET_ADMIN
   699      command: >
   700        --discovery.ping=1s
   701        --discovery.fetch=1s
   702        --discovery.type api --discovery.type broker
   703        --chains.1.myst=0xaa9c4e723609cb913430143fbc86d3cbe7adca21
   704        --chains.1.registry=0x427c2bad22335710aec5e477f3e3adcd313a9bcb
   705        --chains.1.hermes=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   706        --chains.1.knownHermeses=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   707        --chains.1.knownHermeses=0xfd63dc49c7163d82d6f0a4c23ff13216d702ce50
   708        --transactor.address=http://transactor:8888/api/v1
   709        --chains.1.channelImplementation=0x599d43715df3070f83355d9d90ae62c159e62a75
   710        --ip-detector=http://ipify:3000/?format=json
   711        --location.type=manual
   712        --log-level=debug
   713        --chains.2.myst=0xaa9c4e723609cb913430143fbc86d3cbe7adca21
   714        --chains.2.registry=0x427c2bad22335710aec5e477f3e3adcd313a9bcb
   715        --chains.2.channelImplementation=0x599d43715df3070f83355d9d90ae62c159e62a75
   716        --chains.2.hermes=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   717        --chains.2.knownHermeses=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   718        --chains.2.knownHermeses=0xfd63dc49c7163d82d6f0a4c23ff13216d702ce50
   719        --chains.2.chainID=80001
   720        --chain-id=80001
   721        --broker-address=broker
   722        --tequilapi.address=0.0.0.0
   723        --tequilapi.allowed-hostnames=.
   724        --ether.client.rpcl2=ws://ganache2:8545
   725        --ether.client.rpcl1=http://ganache:8545
   726        --discovery.address=http://discovery:8080/api/v4
   727        --keystore.lightweight
   728        --firewall.killSwitch.always
   729        --quality.address=http://morqa:8085/api/v3
   730        --stun-servers=""
   731        --local-service-discovery=true
   732        --payments.registry-transactor-poll.interval=1s
   733        --observer.address=""
   734        daemon
   735      dns: 172.30.0.254
   736      networks:
   737        priv1:
   738          ipv4_address: 10.100.1.104
   739  
   740    myst-provider:
   741      build:
   742        context: .
   743        dockerfile: ./bin/docker/alpine-prebuilt/Dockerfile
   744      environment:
   745        - DEFAULT_ROUTE=10.100.0.2
   746      depends_on:
   747        - forwarder2
   748        - broker
   749        - discovery
   750        - ipify
   751        - transactor
   752        - hermes
   753        - hermes2
   754        - morqa
   755        - trust
   756      cap_add:
   757        - NET_ADMIN
   758      devices:
   759        - /dev/net/tun
   760      expose:
   761        - 1194
   762        - 4050
   763      volumes:
   764        - ./e2e/myst-provider/keystore:/var/lib/mysterium-node/keystore
   765      command: >
   766        --discovery.ping=1s
   767        --discovery.fetch=1s
   768        --chains.1.myst=0xaa9c4e723609cb913430143fbc86d3cbe7adca21
   769        --ip-detector=http://ipify:3000/?format=json
   770        --location.type=manual
   771        --location.country=e2e-land
   772        --broker-address=broker
   773        --tequilapi.address=0.0.0.0
   774        --tequilapi.allowed-hostnames=.
   775        --firewall.protected.networks=""
   776        --chains.1.registry=0x427c2bad22335710aec5e477f3e3adcd313a9bcb
   777        --chains.1.chainID=5
   778        --chains.1.channelImplementation=0x599d43715df3070f83355d9d90ae62c159e62a75
   779        --chains.1.hermes=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   780        --chains.1.knownHermeses=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   781        --chains.1.knownHermeses=0xfd63dc49c7163d82d6f0a4c23ff13216d702ce50
   782        --chains.2.myst=0xaa9c4e723609cb913430143fbc86d3cbe7adca21
   783        --chains.2.registry=0x427c2bad22335710aec5e477f3e3adcd313a9bcb
   784        --chains.2.channelImplementation=0x599d43715df3070f83355d9d90ae62c159e62a75
   785        --chains.2.hermes=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   786        --chains.2.knownHermeses=0xd68defb97d0765741f8ecf179df2f9564e1466a3
   787        --chains.2.knownHermeses=0xfd63dc49c7163d82d6f0a4c23ff13216d702ce50
   788        --chains.2.chainID=80001
   789        --chain-id=80001
   790        --ether.client.rpcl2=ws://ganache2:8545
   791        --ether.client.rpcl1=http://ganache:8545
   792        --firewall.protected.networks=""
   793        --discovery.address=http://discovery:8080/api/v4
   794        --transactor.address=http://transactor:8888/api/v1
   795        --keystore.lightweight
   796        --log-level=debug
   797        --quality.address=http://morqa:8085/api/v3
   798        --payments.provider.invoice-frequency=1s
   799        --access-policy.address=http://trust:8080/api/v1/access-policies/
   800        --access-policy.fetch=1s
   801        --stun-servers=""
   802        --local-service-discovery=true
   803        --payments.registry-transactor-poll.interval=1s
   804        --payments.hermes.settle.check-interval=1s
   805        --observer.address=""
   806        service
   807        --agreed-terms-and-conditions
   808        --identity=0xd1a23227bd5ad77f36ba62badcb78a410a1db6c5
   809        --identity.passphrase=localprovider
   810        --active-services=openvpn,noop,wireguard
   811      dns: 172.31.0.254
   812      networks:
   813        priv0:
   814          ipv4_address: 10.100.0.102
   815  
   816    go-runner:
   817      build:
   818        context: .
   819        dockerfile: ./e2e/gorunner/Dockerfile.precompiled
   820      volumes:
   821        - ./e2e/blockchain/keystore:/node/keystore
   822      working_dir: /node
   823      dns: 172.30.0.254
   824      cap_add:
   825        - NET_ADMIN
   826      networks:
   827        public0:
   828          ipv4_address: 172.30.0.222
   829        public1:
   830          ipv4_address: 172.31.0.222
   831        priv0:
   832          ipv4_address: 10.100.0.222
   833        priv1:
   834          ipv4_address: 10.100.1.222
   835  
   836    router:
   837      build:
   838        context: .
   839        dockerfile: ./e2e/forwarder/Dockerfile
   840      cap_add:
   841        - NET_ADMIN
   842      environment:
   843        - EXT_NAT=172.30.0.1
   844      networks:
   845        public0:
   846          ipv4_address: 172.30.0.254
   847        public1:
   848          ipv4_address: 172.31.0.254
   849  
   850    forwarder:
   851      build:
   852        context: .
   853        dockerfile: ./e2e/forwarder/Dockerfile
   854      cap_add:
   855        - NET_ADMIN
   856      depends_on:
   857        - router
   858      environment:
   859        - GATEWAY=172.30.0.254
   860      networks:
   861        public0:
   862          ipv4_address: 172.30.0.2
   863        priv1:
   864          ipv4_address: 10.100.1.2
   865  
   866    forwarder2:
   867      build:
   868        context: .
   869        dockerfile: ./e2e/forwarder/Dockerfile
   870      cap_add:
   871        - NET_ADMIN
   872      depends_on:
   873        - router
   874      environment:
   875        - GATEWAY=172.31.0.254
   876      dns: 172.31.0.254
   877      networks:
   878        public1:
   879          ipv4_address: 172.31.0.2
   880        priv0:
   881          ipv4_address: 10.100.0.2
   882  
   883  networks:
   884    public0:
   885      driver: "bridge"
   886      ipam:
   887        driver: default
   888        config:
   889          - subnet: 172.30.0.0/24
   890    public1:
   891      driver: "bridge"
   892      ipam:
   893        config:
   894          - subnet: 172.31.0.0/24
   895    priv0:
   896      driver: "bridge"
   897      ipam:
   898        config:
   899          - subnet: 10.100.0.0/24
   900    priv1:
   901      driver: "bridge"
   902      ipam:
   903        config:
   904          - subnet: 10.100.1.0/24