zebra/docker/docker-compose.lwd.yml

60 lines
1.7 KiB
YAML

version: "3.8"
services:
zebra:
ports:
- "8232:8232" # Opens an RPC endpoint (for lightwalletd and mining)
healthcheck:
start_period: 1m
interval: 15s
timeout: 10s
retries: 3
test: ["CMD-SHELL", "curl --data-binary '{\"id\":\"curltest\", \"method\": \"getinfo\"}' -H 'content-type: application/json' 127.0.0.1:8232 || exit 1"]
lightwalletd:
image: electriccoinco/lightwalletd
platform: linux/amd64
depends_on:
zebra:
condition: service_started
restart: unless-stopped
deploy:
resources:
reservations:
cpus: "4"
memory: 16G
environment:
- LWD_GRPC_PORT=9067
- LWD_HTTP_PORT=9068
configs:
- source: lwd_config
target: /etc/lightwalletd/zcash.conf
uid: '2002' # Golang's container default user uid
gid: '2002' # Golang's container default group gid
mode: 0440
volumes:
- litewalletd-data:/var/lib/lightwalletd/db
#! This setup with --no-tls-very-insecure is only for testing purposes
#! For production environments follow the guidelines here: https://github.com/zcash/lightwalletd#production-usage
command: >
--no-tls-very-insecure
--grpc-bind-addr=0.0.0.0:9067
--http-bind-addr=0.0.0.0:9068
--zcash-conf-path=/etc/lightwalletd/zcash.conf
--data-dir=/var/lib/lightwalletd/db
--log-file=/dev/stdout
--log-level=7
ports:
- "9067:9067" # gRPC
- "9068:9068" # HTTP
configs:
lwd_config:
# Change the following line to point to a zcash.conf on your host machine
# to allow for easy configuration changes without rebuilding the image
file: ./zcash-lightwalletd/zcash.conf
volumes:
litewalletd-data:
driver: local