feat(signer): ajouter sdk_signer (docker-support), route WSS /signer/ws via Nginx

This commit is contained in:
Debian 2025-08-26 10:06:56 +00:00
parent 599f37f45d
commit eca6052c91
4 changed files with 49 additions and 1 deletions

4
.gitmodules vendored
View File

@ -2,3 +2,7 @@
path = sdk_storage path = sdk_storage
url = https://git.4nkweb.com/4nk/sdk_storage.git url = https://git.4nkweb.com/4nk/sdk_storage.git
branch = docker-support branch = docker-support
[submodule "sdk_signer"]
path = sdk_signer
url = https://git.4nkweb.com/4nk/sdk_signer.git
branch = docker-support

View File

@ -231,6 +231,7 @@ services:
depends_on: depends_on:
- sdk_relay_1 - sdk_relay_1
- sdk_storage - sdk_storage
- sdk_signer
volumes: volumes:
- ./proxy/nginx.conf:/etc/nginx/conf.d/default.conf:ro - ./proxy/nginx.conf:/etc/nginx/conf.d/default.conf:ro
- ./certs:/etc/nginx/certs:ro - ./certs:/etc/nginx/certs:ro
@ -247,6 +248,8 @@ services:
build: ./sdk_storage build: ./sdk_storage
container_name: sdk-storage container_name: sdk-storage
restart: unless-stopped restart: unless-stopped
entrypoint: >
/bin/sh -lc "chown -R 10001:10001 /app/storage || true; exec /usr/local/bin/sdk_storage --permanent"
networks: networks:
btcnet: btcnet:
aliases: aliases:
@ -255,6 +258,27 @@ services:
- sdk_storage_data:/app/storage - sdk_storage_data:/app/storage
# Service interne: aucun port exposé # Service interne: aucun port exposé
sdk_signer:
build: ./sdk_signer
container_name: sdk-signer
restart: unless-stopped
environment:
- PORT=9090
- API_KEY=dev-change-me
- RELAY_URLS=ws://sdk_relay_1:8090
- LOG_LEVEL=info
- DATABASE_PATH=/app/data/server.db
networks:
btcnet:
aliases:
- sdk_signer
depends_on:
sdk_relay_1:
condition: service_started
volumes:
- sdk_signer_data:/app/data
# Service interne: aucun port exposé
volumes: volumes:
bitcoin_data: bitcoin_data:
name: 4nk_node_bitcoin_data name: 4nk_node_bitcoin_data
@ -268,6 +292,8 @@ volumes:
name: 4nk_node_sdk_relay_3_data name: 4nk_node_sdk_relay_3_data
sdk_storage_data: sdk_storage_data:
name: 4nk_node_sdk_storage_data name: 4nk_node_sdk_storage_data
sdk_signer_data:
name: 4nk_node_sdk_signer_data
networks: networks:
btcnet: btcnet:

View File

@ -48,10 +48,13 @@ server {
# sdk_storage HTTP (tide 8081) # sdk_storage HTTP (tide 8081)
location /storage/ { location /storage/ {
proxy_pass http://sdk_storage:8081/; proxy_pass http://sdk_storage:8081/;
proxy_set_header Host $host; proxy_http_version 1.1;
proxy_set_header Host sdk_storage;
proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 60s;
proxy_send_timeout 60s;
} }
# WebSocket sdk_relay # WebSocket sdk_relay
@ -68,6 +71,20 @@ server {
proxy_send_timeout 86400; proxy_send_timeout 86400;
} }
# WebSocket sdk_signer (port 9090)
location /signer/ws/ {
proxy_pass http://sdk_signer:9090;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 86400;
proxy_send_timeout 86400;
}
# Healthcheck simple # Healthcheck simple
location = /health { location = /health {
return 200; return 200;

1
sdk_signer Submodule

@ -0,0 +1 @@
Subproject commit ca198149c2c65c3c7c1581ed65723c37a4b5db16