btcpayserver/BTCPayServer.Tests/docker-compose.yml

324 lines
8.8 KiB
YAML
Raw Normal View History

2022-02-10 04:25:14 +01:00
version: "3"
2017-09-28 09:35:29 +02:00
2017-12-13 07:49:19 +01:00
# Run `docker-compose up dev` for bootstrapping your development environment
2018-03-17 07:45:44 +01:00
# Doing so will expose NBXplorer, Bitcoind RPC and postgres port to the host so that tests can Run,
2019-01-05 10:18:01 +01:00
# The Visual Studio launch setting `Docker-regtest` is configured to use this environment.
2017-09-28 09:35:29 +02:00
services:
2017-09-28 11:49:24 +02:00
tests:
2017-09-28 11:49:24 +02:00
build:
context: ..
dockerfile: BTCPayServer.Tests/Dockerfile
args:
CONFIGURATION_NAME: Release
2017-09-28 11:49:24 +02:00
environment:
TESTS_EXPERIMENTALV2_CONFIRM: "true"
TESTS_BTCRPCCONNECTION: server=http://bitcoind:43782;ceiwHEbqWI83:DwubwWsoo3
TESTS_BTCNBXPLORERURL: http://nbxplorer:32838/
TESTS_DB: "Postgres"
TESTS_POSTGRES: User ID=postgres;Include Error Detail=true;Host=postgres;Port=5432;Database=btcpayserver
2022-07-05 07:39:50 +02:00
TESTS_EXPLORER_POSTGRES: User ID=postgres;Include Error Detail=true;Host=postgres;Port=5432;Database=nbxplorer
TESTS_HOSTNAME: tests
2021-07-08 12:53:47 +02:00
TESTS_RUN_EXTERNAL_INTEGRATION: ${TESTS_RUN_EXTERNAL_INTEGRATION:-"false"}
2019-04-22 10:19:04 +02:00
TESTS_AzureBlobStorageConnectionString: ${TESTS_AzureBlobStorageConnectionString:-none}
2018-12-18 14:35:58 +01:00
TEST_MERCHANTLIGHTNINGD: "type=clightning;server=unix://etc/merchant_lightningd_datadir/lightning-rpc"
TEST_CUSTOMERLIGHTNINGD: "type=clightning;server=unix://etc/customer_lightningd_datadir/lightning-rpc"
TEST_MERCHANTLND: "http://merchant_lnd:8080/"
TESTS_INCONTAINER: "true"
2019-09-06 09:59:20 +02:00
TESTS_SSHCONNECTION: "root@sshd:22"
TESTS_SSHPASSWORD: ""
TESTS_SSHKEYFILE: ""
TESTS_SOCKSENDPOINT: "tor:9050"
expose:
- "80"
Transfer Processors (#3476) * Automated Transfer processors This PR introduces a few things: * Payouts can now be directly nested under a store instead of through a pull payment. * The Wallet Send screen now has an option to "schedule" instead of simply creating a transaction. When you click on schedule, all transaction destinations are converted into approved payouts. Any options relating to fees or coin selection are discarded. * There is a new concept introduced, called "Transfer Processors". Transfer Processors are services for stores that process payouts that are awaiting payment. Each processor specifies which payment methods it can handle. BTCPay Server will have some forms of transfer processors baked in but it has been designed to allow the Plugin System to provide additional processors. * The initial transfer processors provided are "automated processors", for on chain and lightning payment methods. They can be configured to process payouts every X amount of minutes. For on-chain, this means payments are batched into one transaction, resulting in more efficient and cheaper fees for processing. * * fix build * extract * remove magic string stuff * fix error message when scheduling * Paginate migration * add payout count to payment method tab * remove unused var * add protip * optimzie payout migration dramatically * Remove useless double condition * Fix bunch of warnings * Remove warning * Remove warnigns * Rename to Payout processors * fix typo Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2022-04-24 05:19:34 +02:00
depends_on:
- dev
- selenium
2022-02-10 04:25:14 +01:00
extra_hosts:
- "tests:127.0.0.1"
networks:
default:
custom:
ipv4_address: 172.23.0.18
volumes:
- "sshd_datadir:/root/.ssh"
- "customer_lightningd_datadir:/etc/customer_lightningd_datadir"
- "merchant_lightningd_datadir:/etc/merchant_lightningd_datadir"
2017-09-28 11:49:24 +02:00
2017-12-13 07:49:19 +01:00
# The dev container is not actually used, it is just handy to run `docker-compose up dev` to start all services
2022-02-10 04:25:14 +01:00
dev:
2019-09-10 06:02:52 +02:00
image: alpine:3.7
command: [ "/bin/sh", "-c", "trap : TERM INT; while :; do echo Ready to code and debug like a rockstar!!!; sleep 2073600; done & wait" ]
Transfer Processors (#3476) * Automated Transfer processors This PR introduces a few things: * Payouts can now be directly nested under a store instead of through a pull payment. * The Wallet Send screen now has an option to "schedule" instead of simply creating a transaction. When you click on schedule, all transaction destinations are converted into approved payouts. Any options relating to fees or coin selection are discarded. * There is a new concept introduced, called "Transfer Processors". Transfer Processors are services for stores that process payouts that are awaiting payment. Each processor specifies which payment methods it can handle. BTCPay Server will have some forms of transfer processors baked in but it has been designed to allow the Plugin System to provide additional processors. * The initial transfer processors provided are "automated processors", for on chain and lightning payment methods. They can be configured to process payouts every X amount of minutes. For on-chain, this means payments are batched into one transaction, resulting in more efficient and cheaper fees for processing. * * fix build * extract * remove magic string stuff * fix error message when scheduling * Paginate migration * add payout count to payment method tab * remove unused var * add protip * optimzie payout migration dramatically * Remove useless double condition * Fix bunch of warnings * Remove warning * Remove warnigns * Rename to Payout processors * fix typo Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2022-04-24 05:19:34 +02:00
depends_on:
- nbxplorer
- postgres
- customer_lightningd
- merchant_lightningd
- customer_lnd
- merchant_lnd
- sshd
- tor
sshd:
build:
context: .
dockerfile: sshd.Dockerfile
ports:
- "21622:22"
expose:
- 22
volumes:
- "sshd_datadir:/root/.ssh"
2022-02-10 04:25:14 +01:00
devlnd:
2023-12-12 05:08:40 +01:00
image: btcpayserver/bitcoin:26.0
environment:
2018-10-18 18:35:07 +02:00
BITCOIN_NETWORK: regtest
BITCOIN_WALLETDIR: "/data/wallets"
BITCOIN_EXTRA_ARGS: |
2018-10-18 18:35:07 +02:00
deprecatedrpc=signrawtransaction
connect=bitcoind:39388
2020-09-24 08:38:51 +02:00
fallbackfee=0.0002
rpcallowip=0.0.0.0/0
Transfer Processors (#3476) * Automated Transfer processors This PR introduces a few things: * Payouts can now be directly nested under a store instead of through a pull payment. * The Wallet Send screen now has an option to "schedule" instead of simply creating a transaction. When you click on schedule, all transaction destinations are converted into approved payouts. Any options relating to fees or coin selection are discarded. * There is a new concept introduced, called "Transfer Processors". Transfer Processors are services for stores that process payouts that are awaiting payment. Each processor specifies which payment methods it can handle. BTCPay Server will have some forms of transfer processors baked in but it has been designed to allow the Plugin System to provide additional processors. * The initial transfer processors provided are "automated processors", for on chain and lightning payment methods. They can be configured to process payouts every X amount of minutes. For on-chain, this means payments are batched into one transaction, resulting in more efficient and cheaper fees for processing. * * fix build * extract * remove magic string stuff * fix error message when scheduling * Paginate migration * add payout count to payment method tab * remove unused var * add protip * optimzie payout migration dramatically * Remove useless double condition * Fix bunch of warnings * Remove warning * Remove warnigns * Rename to Payout processors * fix typo Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2022-04-24 05:19:34 +02:00
depends_on:
- nbxplorer
- postgres
- customer_lnd
- merchant_lnd
selenium:
2022-05-06 05:07:53 +02:00
image: selenium/standalone-chrome:101.0
extra_hosts:
- "tests:172.23.0.18"
expose:
- "4444"
networks:
default:
custom:
nbxplorer:
2024-01-18 09:21:15 +01:00
image: nicolasdorier/nbxplorer:2.5.0
2018-10-27 16:14:26 +02:00
restart: unless-stopped
ports:
- "32838:32838"
2022-02-10 04:25:14 +01:00
expose:
2017-09-28 11:49:24 +02:00
- "32838"
2017-09-28 09:35:29 +02:00
environment:
2019-01-05 10:18:01 +01:00
NBXPLORER_NETWORK: regtest
NBXPLORER_CHAINS: "btc"
NBXPLORER_BTCRPCURL: http://bitcoind:43782/
NBXPLORER_BTCNODEENDPOINT: bitcoind:39388
NBXPLORER_BTCRPCUSER: ceiwHEbqWI83
NBXPLORER_BTCRPCPASSWORD: DwubwWsoo3
2017-09-28 11:49:24 +02:00
NBXPLORER_BIND: 0.0.0.0:32838
2020-01-18 08:20:03 +01:00
NBXPLORER_MINGAPSIZE: 5
NBXPLORER_MAXGAPSIZE: 10
2017-11-06 09:31:02 +01:00
NBXPLORER_VERBOSE: 1
2022-04-05 07:46:42 +02:00
NBXPLORER_POSTGRES: User ID=postgres;Include Error Detail=true;Host=postgres;Port=5432;Database=nbxplorer
NBXPLORER_EXPOSERPC: 1
2017-09-28 09:35:29 +02:00
NBXPLORER_NOAUTH: 1
Transfer Processors (#3476) * Automated Transfer processors This PR introduces a few things: * Payouts can now be directly nested under a store instead of through a pull payment. * The Wallet Send screen now has an option to "schedule" instead of simply creating a transaction. When you click on schedule, all transaction destinations are converted into approved payouts. Any options relating to fees or coin selection are discarded. * There is a new concept introduced, called "Transfer Processors". Transfer Processors are services for stores that process payouts that are awaiting payment. Each processor specifies which payment methods it can handle. BTCPay Server will have some forms of transfer processors baked in but it has been designed to allow the Plugin System to provide additional processors. * The initial transfer processors provided are "automated processors", for on chain and lightning payment methods. They can be configured to process payouts every X amount of minutes. For on-chain, this means payments are batched into one transaction, resulting in more efficient and cheaper fees for processing. * * fix build * extract * remove magic string stuff * fix error message when scheduling * Paginate migration * add payout count to payment method tab * remove unused var * add protip * optimzie payout migration dramatically * Remove useless double condition * Fix bunch of warnings * Remove warning * Remove warnigns * Rename to Payout processors * fix typo Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2022-04-24 05:19:34 +02:00
depends_on:
2017-09-28 09:35:29 +02:00
- bitcoind
2017-12-02 17:56:26 +01:00
2017-09-28 09:35:29 +02:00
bitcoind:
2018-12-20 13:20:30 +01:00
restart: unless-stopped
2023-12-12 05:08:40 +01:00
image: btcpayserver/bitcoin:26.0
2017-09-28 09:35:29 +02:00
environment:
2019-01-05 10:18:01 +01:00
BITCOIN_NETWORK: regtest
BITCOIN_WALLETDIR: "/data/wallets"
2018-12-20 13:20:30 +01:00
BITCOIN_EXTRA_ARGS: |-
rpcuser=ceiwHEbqWI83
rpcpassword=DwubwWsoo3
2019-05-03 04:10:01 +02:00
rpcport=43782
2019-05-03 04:04:19 +02:00
rpcbind=0.0.0.0:43782
rpcallowip=0.0.0.0/0
port=39388
whitelist=0.0.0.0/0
zmqpubrawblock=tcp://0.0.0.0:28332
2018-09-28 10:07:58 +02:00
zmqpubrawtx=tcp://0.0.0.0:28333
2018-12-20 13:34:09 +01:00
deprecatedrpc=signrawtransaction
2020-09-24 08:38:51 +02:00
fallbackfee=0.0002
2022-02-10 04:25:14 +01:00
ports:
- "43782:43782"
- "39388:39388"
expose:
- "43782" # RPC
- "39388" # P2P
2018-10-02 12:33:25 +02:00
- "28332" # ZMQ
- "28333" # ZMQ
volumes:
- "bitcoin_datadir:/data"
customer_lightningd:
2024-04-15 11:22:30 +02:00
image: btcpayserver/lightning:v24.02.2
2018-11-06 07:38:07 +01:00
stop_signal: SIGKILL
2018-10-27 16:14:26 +02:00
restart: unless-stopped
2022-02-10 04:25:14 +01:00
environment:
2018-03-20 17:10:10 +01:00
EXPOSE_TCP: "true"
2019-08-17 08:25:00 +02:00
LIGHTNINGD_CHAIN: "btc"
2019-08-17 08:35:41 +02:00
LIGHTNINGD_NETWORK: "regtest"
LIGHTNINGD_OPT: |
2024-04-15 11:22:30 +02:00
developer
bitcoin-datadir=/etc/bitcoin
bitcoin-rpcconnect=bitcoind
2022-12-06 14:15:06 +01:00
announce-addr=customer_lightningd:9735
log-level=debug
funding-confirms=1
2019-10-29 08:46:10 +01:00
dev-fast-gossip
2018-08-28 11:06:07 +02:00
dev-bitcoind-poll=1
ports:
- "30992:9835" # api port
expose:
- "9735" # server port
- "9835" # api port
volumes:
- "bitcoin_datadir:/etc/bitcoin"
- "customer_lightningd_datadir:/root/.lightning"
Transfer Processors (#3476) * Automated Transfer processors This PR introduces a few things: * Payouts can now be directly nested under a store instead of through a pull payment. * The Wallet Send screen now has an option to "schedule" instead of simply creating a transaction. When you click on schedule, all transaction destinations are converted into approved payouts. Any options relating to fees or coin selection are discarded. * There is a new concept introduced, called "Transfer Processors". Transfer Processors are services for stores that process payouts that are awaiting payment. Each processor specifies which payment methods it can handle. BTCPay Server will have some forms of transfer processors baked in but it has been designed to allow the Plugin System to provide additional processors. * The initial transfer processors provided are "automated processors", for on chain and lightning payment methods. They can be configured to process payouts every X amount of minutes. For on-chain, this means payments are batched into one transaction, resulting in more efficient and cheaper fees for processing. * * fix build * extract * remove magic string stuff * fix error message when scheduling * Paginate migration * add payout count to payment method tab * remove unused var * add protip * optimzie payout migration dramatically * Remove useless double condition * Fix bunch of warnings * Remove warning * Remove warnigns * Rename to Payout processors * fix typo Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2022-04-24 05:19:34 +02:00
depends_on:
- bitcoind
merchant_lightningd:
2024-04-15 11:22:30 +02:00
image: btcpayserver/lightning:v24.02.2
2018-11-06 07:38:07 +01:00
stop_signal: SIGKILL
2022-02-10 04:25:14 +01:00
environment:
2018-03-20 17:10:10 +01:00
EXPOSE_TCP: "true"
2019-08-17 08:25:00 +02:00
LIGHTNINGD_CHAIN: "btc"
LIGHTNINGD_NETWORK: "regtest"
2018-03-17 07:45:44 +01:00
LIGHTNINGD_OPT: |
2024-04-15 11:22:30 +02:00
developer
2018-03-17 07:45:44 +01:00
bitcoin-datadir=/etc/bitcoin
bitcoin-rpcconnect=bitcoind
2022-12-06 14:15:06 +01:00
announce-addr=merchant_lightningd:9735
funding-confirms=1
2018-03-17 07:45:44 +01:00
log-level=debug
2019-10-29 08:46:10 +01:00
dev-fast-gossip
dev-bitcoind-poll=1
ports:
- "30993:9835" # api port
expose:
- "9735" # server port
2018-03-17 07:45:44 +01:00
- "9835" # api port
volumes:
- "bitcoin_datadir:/etc/bitcoin"
- "merchant_lightningd_datadir:/root/.lightning"
Transfer Processors (#3476) * Automated Transfer processors This PR introduces a few things: * Payouts can now be directly nested under a store instead of through a pull payment. * The Wallet Send screen now has an option to "schedule" instead of simply creating a transaction. When you click on schedule, all transaction destinations are converted into approved payouts. Any options relating to fees or coin selection are discarded. * There is a new concept introduced, called "Transfer Processors". Transfer Processors are services for stores that process payouts that are awaiting payment. Each processor specifies which payment methods it can handle. BTCPay Server will have some forms of transfer processors baked in but it has been designed to allow the Plugin System to provide additional processors. * The initial transfer processors provided are "automated processors", for on chain and lightning payment methods. They can be configured to process payouts every X amount of minutes. For on-chain, this means payments are batched into one transaction, resulting in more efficient and cheaper fees for processing. * * fix build * extract * remove magic string stuff * fix error message when scheduling * Paginate migration * add payout count to payment method tab * remove unused var * add protip * optimzie payout migration dramatically * Remove useless double condition * Fix bunch of warnings * Remove warning * Remove warnigns * Rename to Payout processors * fix typo Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2022-04-24 05:19:34 +02:00
depends_on:
2018-03-17 07:45:44 +01:00
- bitcoind
2017-09-28 09:35:29 +02:00
postgres:
2021-09-29 06:16:53 +02:00
image: postgres:13.4
environment:
POSTGRES_HOST_AUTH_METHOD: trust
ports:
2017-11-01 10:17:39 +01:00
- "39372:5432"
2017-12-13 07:49:19 +01:00
expose:
- "5432"
merchant_lnd:
image: btcpayserver/lnd:v0.17.4-beta
2018-10-27 16:14:26 +02:00
restart: unless-stopped
environment:
2018-07-10 12:33:54 +02:00
LND_CHAIN: "btc"
2019-01-05 10:18:01 +01:00
LND_ENVIRONMENT: "regtest"
2018-12-20 13:20:30 +01:00
LND_EXPLORERURL: "http://nbxplorer:32838/"
LND_REST_LISTEN_HOST: http://merchant_lnd:8080
2018-07-10 12:33:54 +02:00
LND_EXTRA_ARGS: |
restlisten=merchant_lnd:8080
2018-12-20 13:20:30 +01:00
rpclisten=127.0.0.1:10008
rpclisten=merchant_lnd:10009
2018-07-10 12:33:54 +02:00
bitcoin.node=bitcoind
bitcoind.rpchost=bitcoind:43782
bitcoind.rpcuser=ceiwHEbqWI83
bitcoind.rpcpass=DwubwWsoo3
2018-09-28 10:07:58 +02:00
bitcoind.zmqpubrawblock=tcp://bitcoind:28332
bitcoind.zmqpubrawtx=tcp://bitcoind:28333
2018-07-10 12:33:54 +02:00
externalip=merchant_lnd:9735
bitcoin.defaultchanconfs=1
2018-07-10 12:33:54 +02:00
no-macaroons=1
debuglevel=debug
2018-08-28 11:13:28 +02:00
trickledelay=1000
no-rest-tls=1
ports:
- "35531:8080"
- "53280:10009"
expose:
2022-02-10 04:25:14 +01:00
- "8080"
- "9735"
2022-02-10 04:25:14 +01:00
- "10009"
volumes:
2018-07-10 12:33:54 +02:00
- "merchant_lnd_datadir:/data"
- "bitcoin_datadir:/deps/.bitcoin"
Transfer Processors (#3476) * Automated Transfer processors This PR introduces a few things: * Payouts can now be directly nested under a store instead of through a pull payment. * The Wallet Send screen now has an option to "schedule" instead of simply creating a transaction. When you click on schedule, all transaction destinations are converted into approved payouts. Any options relating to fees or coin selection are discarded. * There is a new concept introduced, called "Transfer Processors". Transfer Processors are services for stores that process payouts that are awaiting payment. Each processor specifies which payment methods it can handle. BTCPay Server will have some forms of transfer processors baked in but it has been designed to allow the Plugin System to provide additional processors. * The initial transfer processors provided are "automated processors", for on chain and lightning payment methods. They can be configured to process payouts every X amount of minutes. For on-chain, this means payments are batched into one transaction, resulting in more efficient and cheaper fees for processing. * * fix build * extract * remove magic string stuff * fix error message when scheduling * Paginate migration * add payout count to payment method tab * remove unused var * add protip * optimzie payout migration dramatically * Remove useless double condition * Fix bunch of warnings * Remove warning * Remove warnigns * Rename to Payout processors * fix typo Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2022-04-24 05:19:34 +02:00
depends_on:
- bitcoind
customer_lnd:
image: btcpayserver/lnd:v0.17.4-beta
2018-10-27 16:14:26 +02:00
restart: unless-stopped
environment:
2018-07-10 12:33:54 +02:00
LND_CHAIN: "btc"
2019-01-05 10:18:01 +01:00
LND_ENVIRONMENT: "regtest"
2018-12-20 13:20:30 +01:00
LND_EXPLORERURL: "http://nbxplorer:32838/"
LND_REST_LISTEN_HOST: http://customer_lnd:8080
2018-07-10 12:33:54 +02:00
LND_EXTRA_ARGS: |
restlisten=customer_lnd:8080
2018-12-20 13:20:30 +01:00
rpclisten=127.0.0.1:10008
rpclisten=customer_lnd:10009
2018-07-10 12:33:54 +02:00
bitcoin.node=bitcoind
bitcoind.rpchost=bitcoind:43782
bitcoind.rpcuser=ceiwHEbqWI83
bitcoind.rpcpass=DwubwWsoo3
2018-09-28 10:07:58 +02:00
bitcoind.zmqpubrawblock=tcp://bitcoind:28332
bitcoind.zmqpubrawtx=tcp://bitcoind:28333
2022-02-10 04:25:14 +01:00
externalip=customer_lnd:9735
bitcoin.defaultchanconfs=1
2018-07-10 12:33:54 +02:00
no-macaroons=1
debuglevel=debug
2018-08-28 11:13:28 +02:00
trickledelay=1000
no-rest-tls=1
ports:
- "35532:8080"
expose:
- "8080"
2022-02-10 04:25:14 +01:00
- "9735"
- "10009"
volumes:
- "customer_lnd_datadir:/root/.lnd"
2018-07-10 12:33:54 +02:00
- "bitcoin_datadir:/deps/.bitcoin"
Transfer Processors (#3476) * Automated Transfer processors This PR introduces a few things: * Payouts can now be directly nested under a store instead of through a pull payment. * The Wallet Send screen now has an option to "schedule" instead of simply creating a transaction. When you click on schedule, all transaction destinations are converted into approved payouts. Any options relating to fees or coin selection are discarded. * There is a new concept introduced, called "Transfer Processors". Transfer Processors are services for stores that process payouts that are awaiting payment. Each processor specifies which payment methods it can handle. BTCPay Server will have some forms of transfer processors baked in but it has been designed to allow the Plugin System to provide additional processors. * The initial transfer processors provided are "automated processors", for on chain and lightning payment methods. They can be configured to process payouts every X amount of minutes. For on-chain, this means payments are batched into one transaction, resulting in more efficient and cheaper fees for processing. * * fix build * extract * remove magic string stuff * fix error message when scheduling * Paginate migration * add payout count to payment method tab * remove unused var * add protip * optimzie payout migration dramatically * Remove useless double condition * Fix bunch of warnings * Remove warning * Remove warnigns * Rename to Payout processors * fix typo Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2022-04-24 05:19:34 +02:00
depends_on:
- bitcoind
tor:
restart: unless-stopped
2021-10-11 05:34:42 +02:00
image: btcpayserver/tor:0.4.6.5
container_name: tor
environment:
TOR_PASSWORD: btcpayserver
ports:
- "9050:9050" # SOCKS
- "9051:9051" # Tor Control
volumes:
- "tor_datadir:/home/tor/.tor"
- "torrcdir:/usr/local/etc/tor"
- "tor_servicesdir:/var/lib/tor/hidden_services"
volumes:
sshd_datadir:
bitcoin_datadir:
2019-12-24 08:20:44 +01:00
elementsd_liquid_datadir:
customer_lightningd_datadir:
merchant_lightningd_datadir:
lightning_charge_datadir:
customer_lnd_datadir:
merchant_lnd_datadir:
tor_datadir:
torrcdir:
tor_servicesdir:
networks:
default:
driver: bridge
custom:
driver: bridge
ipam:
config:
- subnet: 172.23.0.0/16