hub/docker/docker-compose.yml
2022-05-04 13:00:16 -04:00

99 lines
3.7 KiB
YAML

version: "3"
volumes:
lbcd:
lbry_rocksdb:
es01:
services:
scribe:
depends_on:
- lbcd
- scribe_elastic_sync
image: lbry/scribe:${SCRIBE_TAG:-latest-release}
restart: always
network_mode: host
volumes:
- "lbry_rocksdb:/database"
environment: # for full options, see `scribe --help`
- HUB_COMMAND=scribe
- DAEMON_URL=http://lbry:lbry@127.0.0.1:9245
- MAX_QUERY_WORKERS=2
#- CACHE_ALL_TX_HASHES=Yes # uncomment to keep an index of all tx hashes in memory. This uses lots (10+g) of memory but substantially improves performance.
scribe_elastic_sync:
depends_on:
- es01
image: lbry/scribe:${SCRIBE_TAG:-latest-release}
restart: always
network_mode: host
ports:
- "127.0.0.1:19080:19080" # elastic notifier port
volumes:
- "lbry_rocksdb:/database"
environment: # for full options, see `scribe-elastic-sync --help`
- HUB_COMMAND=scribe-elastic-sync
- MAX_QUERY_WORKERS=2
- FILTERING_CHANNEL_IDS=770bd7ecba84fd2f7607fb15aedd2b172c2e153f 95e5db68a3101df19763f3a5182e4b12ba393ee8
- BLOCKING_CHANNEL_IDS=dd687b357950f6f271999971f43c785e8067c3a9 06871aa438032244202840ec59a469b303257cad b4a2528f436eca1bf3bf3e10ff3f98c57bd6c4c6
#- ELASTIC_HOST=127.0.0.1 # elasticsearch host
#- ELASTIC_PORT=9200 # elasticsearch port
#- ELASTIC_NOTIFIER_HOST=127.0.0.1 # address for the elastic sync notifier to connect to
#- ELASTIC_NOTIFIER_PORT=19080
scribe_hub:
depends_on:
- lbcd
- scribe_elastic_sync
- scribe
image: lbry/scribe:${SCRIBE_TAG:-latest-release}
restart: always
network_mode: host
ports:
- "50001:50001" # electrum rpc port and udp ping port
- "2112:2112" # comment out to disable prometheus metrics
volumes:
- "lbry_rocksdb:/database"
environment: # for full options, see `scribe-hub --help`
- HUB_COMMAND=scribe-hub
- DAEMON_URL=http://lbry:lbry@127.0.0.1:9245 # used for broadcasting transactions
- HOST=0.0.0.0
- MAX_QUERY_WORKERS=4 # reader threads
- PROMETHEUS_PORT=2112 # comment out to disable prometheus metrics
- FILTERING_CHANNEL_IDS=770bd7ecba84fd2f7607fb15aedd2b172c2e153f 95e5db68a3101df19763f3a5182e4b12ba393ee8
- BLOCKING_CHANNEL_IDS=dd687b357950f6f271999971f43c785e8067c3a9 06871aa438032244202840ec59a469b303257cad b4a2528f436eca1bf3bf3e10ff3f98c57bd6c4c6
#- MAX_SESSIONS=100000 # uncomment to increase the maximum number of electrum connections, defaults to 1000
#- ALLOW_LAN_UDP=Yes # uncomment to reply to clients on the local network
#- ELASTIC_HOST=127.0.0.1 # elasticsearch host
#- ELASTIC_PORT=9200 # elasticsearch port
#- ELASTIC_NOTIFIER_HOST=127.0.0.1 # address for the elastic sync notifier to connect to
#- ELASTIC_NOTIFIER_PORT=19080
es01:
image: docker.elastic.co/elasticsearch/elasticsearch:7.16.0
container_name: es01
environment:
- node.name=es01
- discovery.type=single-node
- indices.query.bool.max_clause_count=8192
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Dlog4j2.formatMsgNoLookups=true -Xms8g -Xmx8g" # no more than 32, remember to disable swap
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- "es01:/usr/share/elasticsearch/data"
ports:
- "127.0.0.1:9200:9200"
lbcd:
image: lbry/lbcd:latest
restart: always
network_mode: host
command:
- "--notls"
- "--listen=0.0.0.0:9246"
- "--rpclisten=127.0.0.1:9245"
- "--rpcuser=lbry"
- "--rpcpass=lbry"
volumes:
- "lbcd:/root/.lbcd"
ports:
- "9246:9246" # p2p