From 1dd70cc2c2b9b0a9f65a704ded9e322afabf736f Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Fri, 16 Oct 2026 12:57:19 -0700 Subject: Make this the coinosv3-server repo: the services, with coinosv3 pinned Carved out of coinosv3 (names, feed, nwcpush, blossom, vmedia, bridge and their tests, with history). The shared wallet code they import (src/ark, noffer, bolt12, popular-feed) now comes from a coinosv3 submodule pinned at 082fc2e, the commit the services have actually run on, so moving here changes no behaviour; bumping it is its own commit. The two text helpers translation uses arrived on the server later than that commit and are vendored under names/vendor at the versions deployed, until the pin moves past them. Root package.json pins the npm versions installed on the server. compose.yml runs names, nwcpush and blossom from this checkout (read-only) with configs and state under $STATE, outside the repo, and pins the Bun image. Co-Authored-By: Claude Opus 5.5 --- compose.yml | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 compose.yml (limited to 'compose.yml') diff --git a/compose.yml b/compose.yml new file mode 100644 index 0000000..df0d2d1 --- /dev/null +++ b/compose.yml @@ -0,0 +1,62 @@ +# The coinos v3 services. Each runs this checkout under Bun. +# +# Secrets and state live outside the checkout, under $STATE (set it in a .env +# file next to this one; see README.md): +# $STATE/names/config.json $STATE/names/data/ (names.db) +# $STATE/nwcpush/config.json $STATE/nwcpush/data/ +# $STATE/blossom/data/ +services: + names: + image: oven/bun:1.3.14 + container_name: names + working_dir: /app + command: bun names/server.js + environment: + NAMES_CONFIG: /etc/coinosv3/config.json + volumes: + - .:/app:ro + - ${STATE:?set STATE in .env}/names/config.json:/etc/coinosv3/config.json:ro + - ${STATE}/names/data:/data + - ${CLN_RPC:?set CLN_RPC in .env}:/cln/lightning-rpc + - ${CLN_MUT_RPC:-/dev/null}:/cln-mut/lightning-rpc + ports: + - 127.0.0.1:8798:8798 + networks: [net] + restart: unless-stopped + + nwcpush: + image: oven/bun:1.3.14 + container_name: nwcpush + working_dir: /app + command: bun nwcpush/server.js + environment: + NWCPUSH_CONFIG: /etc/coinosv3/config.json + volumes: + - .:/app:ro + - ${STATE}/nwcpush/config.json:/etc/coinosv3/config.json:ro + - ${STATE}/nwcpush/data:/data + ports: + - 127.0.0.1:8797:8797 + networks: [net] + restart: unless-stopped + + blossom: + image: oven/bun:1.3.14 + container_name: blossom + working_dir: /app + command: bun blossom/server.js + environment: + BLOSSOM_DATA: /data + BLOSSOM_PORT: "8796" + BLOSSOM_HOST: blossom.coinos.io + volumes: + - .:/app:ro + - ${STATE}/blossom/data:/data + ports: + - 127.0.0.1:8796:8796 + networks: [net] + restart: unless-stopped + +networks: + net: + external: true -- cgit v1.2.3