aboutsummaryrefslogtreecommitdiffstats
path: root/compose.yml.sample
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-02-07 12:39:58 -0800
committerAdam Soltys <[email protected]>2026-02-07 12:39:58 -0800
commite2cc17b8998249563472394a3633793773b4e55b (patch)
tree147d80edc7994d31fdbb0c98dbb2191369e6902d /compose.yml.sample
parentc8ec6fa5d3be57d570cc67cc10692b631df0f921 (diff)
downloadcoinos-server-e2cc17b8998249563472394a3633793773b4e55b.tar.gz
coinos-server-e2cc17b8998249563472394a3633793773b4e55b.zip
new sample compose
Diffstat (limited to 'compose.yml.sample')
-rw-r--r--compose.yml.sample306
1 files changed, 257 insertions, 49 deletions
diff --git a/compose.yml.sample b/compose.yml.sample
index 7e24f0c2..a7fbb914 100644
--- a/compose.yml.sample
+++ b/compose.yml.sample
@@ -1,5 +1,42 @@
-version: '3.6'
services:
+ arkd:
+ image: asoltys/arkd
+ container_name: arkd
+ restart: unless-stopped
+ depends_on:
+ - arkd-wallet
+ ports:
+ - "7070:7070"
+ environment:
+ - ARKD_LOG_LEVEL=6
+ - ARKD_NO_MACAROONS=true
+ - ARKD_VTXO_TREE_EXPIRY=100
+ - ARKD_SCHEDULER_TYPE=block
+ - ARKD_UNILATERAL_EXIT_DELAY=512
+ - ARKD_BOARDING_EXIT_DELAY=1024
+ - ARKD_DATADIR=./data/regtest
+ - ARKD_WALLET_ADDR=arkd-wallet:6060
+ - ARKD_ESPLORA_URL=http://cs:3000
+ - ARKD_VTXO_MIN_AMOUNT=1
+ - ARKD_LIVE_STORE_TYPE=inmemory
+ - ARKD_EVENT_DB_TYPE=badger
+ - ARKD_DB_TYPE=sqlite
+ - ARKD_ROUND_INTERVAL=10
+ - ARKD_ALLOW_CSV_BLOCK_TYPE=true
+ - ARKD_UNLOCKER_TYPE=env
+ - ARKD_UNLOCKER_PASSWORD=testpassword
+ volumes:
+ - ./data/ark:/app/data
+ tb:
+ image: ghcr.io/tigerbeetle/tigerbeetle:latest
+ container_name: tb
+ privileged: true
+ command: ["start", "--addresses=0.0.0.0:3000", "/data/0_0.tigerbeetle"]
+ volumes:
+ - ./data/tigerbeetle:/data
+ ports:
+ - "3001:3000"
+ restart: always
app:
image: asoltys/coinos-server
container_name: app
@@ -7,10 +44,12 @@ services:
- db
- bc
- cl
+ - sf
+ - tb
+ security_opt:
+ - seccomp:unconfined
command: "bun run dev"
environment:
- NODE_OPTIONS: "--import ./hooks.js"
- NODE_ENV: development
URL: http://localhost:5173
ports:
- '3119:3119'
@@ -19,17 +58,18 @@ services:
- ./:/home/bun/app
- ./logs:/logs
- ./data/bitcoin/bitcoin.conf:/bitcoin.conf
+ - ./data/sockets:/sockets
+ - ./mklittlefs:/usr/bin/mklittlefs
+ - /home/adam/lightning-client-js:/home/bun/lightning-client-js
restart: always
bc:
- image: asoltys/bitcoin
+ image: asoltys/bitcoin:28.0
container_name: bc
- ports:
- - '18443:18443'
volumes:
- ./data/bitcoin:/home/bitcoin/.bitcoin
restart: always
lq:
- image: asoltys/liquid:23.x
+ image: asoltys/elements:23.2.4
container_name: lq
volumes:
- ./data/liquid:/home/elements/.elements
@@ -37,15 +77,18 @@ services:
ports:
- 7043:7040
cl:
- image: asoltys/cln
+ image: elementsproject/lightningd:v25.12.1
container_name: cl
environment:
LIGHTNINGD_NETWORK: regtest
volumes:
- ./data/lightning:/root/.lightning
+ ports:
+ - '3010:3010'
+ - '1984:1984'
restart: always
clb:
- image: elementsproject/lightningd:v23.11.1-amd64
+ image: elementsproject/lightningd:v25.05
container_name: clb
environment:
LIGHTNINGD_NETWORK: regtest
@@ -53,7 +96,7 @@ services:
- ./data/lightningb:/root/.lightning
restart: always
clc:
- image: elementsproject/lightningd:v23.11.1-amd64
+ image: elementsproject/lightningd:v25.05
container_name: clc
environment:
LIGHTNINGD_NETWORK: regtest
@@ -61,71 +104,212 @@ services:
- ./data/lightningc:/root/.lightning
restart: always
db:
- image: eqalpha/keydb:alpine_x86_64_v6.3.4
+ image: valkey/valkey:8.0
container_name: db
ports:
- '6379:6379'
+ command: ["valkey-server", "/etc/valkey/valkey.conf"]
volumes:
- ./data/db:/data
- - ./data/db/keydb.conf:/etc/keydb/keydb.conf
+ - ./data/db/valkey.conf:/etc/valkey/valkey.conf
restart: always
- archive:
- image: eqalpha/keydb:alpine_x86_64_v6.3.4
- container_name: archive
+ arc:
+ image: apache/kvrocks
+ container_name: arc
ports:
- '6380:6379'
+ entrypoint: ["kvrocks", "-c", "/data/kvrocks.conf", "--dir", "/data", "--bind", "0.0.0.0"]
volumes:
- - ./data/archive:/data
- restart: always
- nostr:
- container_name: nostr
- image: asoltys/nostr-rs-relay
+ - ./data/archive-kv:/data
restart: always
- user: 100:100
+ sf:
+ container_name: sf
+ image: asoltys/strsrv
+ cap_add:
+ - SYS_PTRACE
+ security_opt:
+ - seccomp:unconfined
volumes:
- - "./data/nostr/data:/usr/src/app/db"
- - "./data/nostr/config.toml:/usr/src/app/config.toml"
+ - ./strsrv:/app/strsrv
+ - ./data/strfry/strfry.conf:/etc/strfry.conf
+ - ./data/strfry/db:/app/strfry-db
+ - ./data/sockets:/app/sockets
ports:
- - '8082:8080'
+ - "7777:7777"
+ mon:
+ container_name: mon
+ image: asoltys/mon
+ volumes:
+ - /var/run/docker.sock:/var/run/docker.sock
+ environment:
+ - RUNE=S9ybLdb07sJLlsAXMM7k4wa-VBw2nZ-_6XQtIwT8maw9MA==
+ cs:
+ image: ghcr.io/vulpemventures/nigiri-chopsticks:latest
+ container_name: cs
+ command:
+ - --wallet-name
+ - coinos
+ - --use-faucet
+ - --use-logger
+ - --rpc-addr
+ - bc:18443
+ - --electrs-addr
+ - eb:30000
+ - --addr
+ - 0.0.0.0:3000
+ depends_on:
+ - bc
+ - eb
+ restart: unless-stopped
+ ports:
+ - "3000:3000"
+ arkd-wallet:
+ restart: unless-stopped
+ build:
+ context: .
+ dockerfile: wallet.Dockerfile
+ container_name: arkd-wallet
+ depends_on:
+ - nbxplorer
+ ports:
+ - "6060:6060"
+ environment:
+ - ARKD_WALLET_LOG_LEVEL=5
+ - ARKD_WALLET_NBXPLORER_URL=http://nbxplorer:32838
+ - ARKD_WALLET_DATADIR=./data/regtest
+ - ARKD_WALLET_NETWORK=regtest
+ - ARKD_WALLET_SIGNER_KEY=afcd3fa10f82a05fddc9574fdb13b3991b568e89cc39a72ba4401df8abef35f0
+ volumes:
+ - ./data/arkd-wallet:/app/data
+ nbxplorer:
+ restart: unless-stopped
+ container_name: nbxplorer
+ ports:
+ - 32838:32838
+ image: nicolasdorier/nbxplorer:2.5.30
+ environment:
+ - NBXPLORER_NETWORK=regtest
+ - NBXPLORER_CHAINS=btc
+ - NBXPLORER_BTCRPCURL=http://bc:18443/wallet/coinos
+ - NBXPLORER_BTCNODEENDPOINT=bc:18444
+ - NBXPLORER_BTCRPCUSER=admin1
+ - NBXPLORER_BTCRPCPASSWORD=123
+ - NBXPLORER_VERBOSE=1
+ - NBXPLORER_BIND=0.0.0.0:32838
+ - NBXPLORER_TRIMEVENTS=10000
+ - NBXPLORER_SIGNALFILESDIR=/datadir
+ - NBXPLORER_POSTGRES=User ID=postgres;Host=pgnbxplorer;Port=5432;Application Name=nbxplorer;MaxPoolSize=20;Database=nbxplorer
+ - NBXPLORER_EXPOSERPC=1
+ - NBXPLORER_NOAUTH=1
+ volumes:
+ - type: tmpfs
+ target: /datadir
+ depends_on:
+ pgnbxplorer:
+ condition: service_healthy
+ eb:
+ image: ghcr.io/vulpemventures/electrs:latest
+ container_name: eb
+ entrypoint:
+ - /build/electrs
+ command:
+ - --jsonrpc-import
+ - -vvvv
+ - --network
+ - regtest
+ - --daemon-dir
+ - /config
+ - --daemon-rpc-addr
+ - bc:18443
+ - --cookie
+ - admin1:123
+ - --http-addr
+ - 0.0.0.0:30000
+ - --electrum-rpc-addr
+ - 0.0.0.0:50000
+ - --cors
+ - "*"
+ depends_on:
+ - bc
+ volumes:
+ - ./data/bitcoin:/config
+ restart: unless-stopped
+ # el:
+ # image: vulpemventures/electrs-liquid:latest
+ # container_name: el
+ # entrypoint:
+ # - /build/electrs
+ # command:
+ # - --jsonrpc-import
+ # - -vvvv
+ # - --parent-network
+ # - regtest
+ # - --network
+ # - liquidregtest
+ # - --daemon-dir
+ # - /config
+ # - --daemon-rpc-addr
+ # - lq:7040
+ # - --cookie
+ # - admin1:123
+ # - --http-addr
+ # - 0.0.0.0:3002
+ # - --electrum-rpc-addr
+ # - 0.0.0.0:60401
+ # - --cors
+ # - "*"
+ # depends_on:
+ # - lq
+ # ports:
+ # - '3003:3002'
+ # restart: unless-stopped
mint:
- image: asoltys/nutshell
+ image: asoltys/nutshell:main
container_name: mint
ports:
- "3338:3338"
environment:
+ - MINT_RPC_SERVER_ENABLE=TRUE
+ - MINT_RPC_SERVER_ADDR=localhost
+ - MINT_RPC_SERVER_PORT=8086
+ - MINT_RPC_SERVER_KEY=./server_private.pem
+ - MINT_RPC_SERVER_CERT=./server_cert.pem
+ - MINT_RPC_SERVER_CA=./ca_cert.pem
- MINT_CLNREST_URL=http://cl:3010
- - MINT_CLNREST_RUNE=lC9j5Z8-x7uN3oPqEGbpcNk2yknxQ4h5To5Z2Dp8ONE9Mg==
+ - MINT_CLNREST_RUNE=S9ybLdb07sJLlsAXMM7k4wa-VBw2nZ-_6XQtIwT8maw9MA==
- MINT_BACKEND_BOLT11_SAT=CLNRestWallet
+ - MINT_INFO_CONTACT=[["email","[email protected]"],["twitter","@coinoswallet"],["nostr","npub1h2qfjpnxau9k7ja9qkf50043xfpfy8j5v60xsqryef64y44puwnq28w8ch"]]
+ - MINT_INFO_ICON_URL="https://coinos.io/images/icon.png"
# - MINT_BACKEND_BOLT11_SAT=FakeWallet
- MINT_LISTEN_HOST=0.0.0.0
- MINT_LISTEN_PORT=3338
- MINT_PRIVATE_KEY=TEST_PRIVATE_KEY
- MINT_CLNREST_COINOS_URL=http://app:3119
- - MINT_CLNREST_COINOS_JWT=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjVjYTM0YWU4LTdiMTItNDU4OS04ODMyLTUyMTNjOWVhMjc5NyIsImlhdCI6MTcyNDA0NjI3OH0.bdX1YLnpgqpjmjrkCdIdDbdmZUdViNSVrAJ0OX3ByPo
- command: ["poetry", "run", "mint"]
- volumes:
- - "./data/nutshell:/app"
- - "./data/mint:/app/data/mint"
- mintb:
- image: asoltys/nutshell
- container_name: mintb
- ports:
- - "3339:3338"
- environment:
- - MINT_CLNREST_URL=http://clb:3010
- - MINT_CLNREST_RUNE=kTyXJ6yJwESVezCl4yB4z0zGMjXi11qggnKRQ4nnc2Y9MA==
- - MINT_BACKEND_BOLT11_SAT=CLNRestWallet
- # - MINT_BACKEND_BOLT11_SAT=FakeWallet
- - MINT_LISTEN_HOST=0.0.0.0
- - MINT_LISTEN_PORT=3338
- - MINT_PRIVATE_KEY=TEST_PRIVATE_KEYB
- - MINT_CLNREST_COINOS_URL=http://app:3119
- - MINT_CLNREST_COINOS_JWT=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjVjYTM0YWU4LTdiMTItNDU4OS04ODMyLTUyMTNjOWVhMjc5NyIsImlhdCI6MTcyNDA0NjI3OH0.bdX1YLnpgqpjmjrkCdIdDbdmZUdViNSVrAJ0OX3ByPo
+ - MINT_CLNREST_COINOS_JWT=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjI4MDE4NmMwLWQzODktNDViZS1iOGI2LWM4N2EwN2VlNjA5ZiIsImlhdCI6MTc0MTgwNDQyN30.oDDQeHN2CxjAOSOa6x75La8mQYnozkuSbVrBnTTto4A
command: ["poetry", "run", "mint"]
volumes:
- - "./data/nutshell:/app"
+ - "/home/adam/nutshell:/app"
- "./data/mint:/app/data/mint"
-
+ # mintb:
+ # image: asoltys/nutshell
+ # container_name: mintb
+ # ports:
+ # - "3339:3338"
+ # environment:
+ # - MINT_CLNREST_URL=http://clb:3010
+ # - MINT_CLNREST_RUNE=kTyXJ6yJwESVezCl4yB4z0zGMjXi11qggnKRQ4nnc2Y9MA==
+ # - MINT_BACKEND_BOLT11_SAT=CLNRestWallet
+ # # - MINT_BACKEND_BOLT11_SAT=FakeWallet
+ # - MINT_LISTEN_HOST=0.0.0.0
+ # - MINT_LISTEN_PORT=3338
+ # - MINT_PRIVATE_KEY=TEST_PRIVATE_KEYB
+ # - MINT_CLNREST_COINOS_URL=http://app:3119
+ # - MINT_CLNREST_COINOS_JWT=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjVjYTM0YWU4LTdiMTItNDU4OS04ODMyLTUyMTNjOWVhMjc5NyIsImlhdCI6MTcyNDA0NjI3OH0.bdX1YLnpgqpjmjrkCdIdDbdmZUdViNSVrAJ0OX3ByPo
+ # command: ["poetry", "run", "mint"]
+ # volumes:
+ # - "/home/adam/nutshell:/app"
+ # - "./data/mint:/app/data/mint"
+ #
wallet:
image: asoltys/nutshell
container_name: wallet
@@ -136,4 +320,28 @@ services:
environment:
- MINT_URL=http://mint:3338
- API_HOST=0.0.0.0
- command: ["poetry", "run", "cashu", "-d"] \ No newline at end of file
+ command: ["poetry", "run", "cashu", "-d"]
+ pgnbxplorer:
+ restart: unless-stopped
+ image: postgres:16
+ container_name: pgnbxplorer
+ ports:
+ - 5432:5432
+ environment:
+ - POSTGRES_HOST_AUTH_METHOD=trust
+ volumes:
+ - type: tmpfs
+ target: /var/lib/postgresql/data
+ healthcheck:
+ test:
+ [
+ "CMD-SHELL",
+ "pg_isready -U postgres -d nbxplorer -h 127.0.0.1 -p 5432",
+ ]
+ interval: 2s
+ timeout: 2s
+ retries: 30
+networks:
+ default:
+ name: net
+ external: true