Рефакторизация структуры кода для улучшения читаемости и удобства сопровождения.
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
:8080 {
|
||||
handle_path /api/* {
|
||||
reverse_proxy tdex_tdexd_1:9092
|
||||
}
|
||||
reverse_proxy tdex_dashboard_1:8080
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
manifestVersion: 1.1
|
||||
id: tdex
|
||||
category: bitcoin
|
||||
name: TDEX Provider
|
||||
version: "1.0.1-hotfix"
|
||||
tagline: Обеспечьте ликвидность в сети TDEX, открытом протоколе для торговли активами Liquid Network.
|
||||
description: >-
|
||||
Поставщик ликвидности хранит ликвидные резервы BASE_ASSET-QUOTE_ASSET в своем некастодиальном горячем кошельке Liquid,
|
||||
применение автоматизированных стратегий маркет-мейкинга с оракулом или без него. Провайдеры заинтересованы в том, чтобы
|
||||
быть всегда включенным и должен предоставить общедоступную доступную конечную точку либо через Clearnet, либо с помощью скрытой службы Onion.
|
||||
|
||||
|
||||
Небольшую комиссию провайдера можно вычесть из каждой сделки и добавить в резервы. Поставщик ликвидности имеет полный контроль
|
||||
над рыночной стратегией, необходимой для расчета рыночной ставки, по которой можно принимать сделки. При этом,
|
||||
есть возможность применить автоматизированную стратегию маркет-мейкинга, опираясь только на остатки резервов и запрошенную сумму
|
||||
трейдером без необходимости подключения к внешнему источнику цен. Стратегией по умолчанию демона альфа является
|
||||
постоянное создание рынка продукции. Короче говоря, эта модель генерирует полную книгу заказов на основе начальной цены на рынке.
|
||||
Каждая транзакция, происходящая на этом рынке, соответствующим образом корректирует рыночные цены.
|
||||
releaseNotes: >-
|
||||
Это выпуск исправления, исправляющий ошибку, препятствующую работе новых установок приложения TDEX Provider.
|
||||
|
||||
|
||||
Примечания к предыдущей версии 1.0.1:
|
||||
|
||||
|
||||
🚨 ВАЖНО: ПЕРЕД обновлением убедитесь, что у вас записана фраза восстановления из 24 слов.
|
||||
Это обновление потребует от вас восстановить свой кошелек с помощью фразы восстановления из 24 слов.
|
||||
|
||||
|
||||
Это крупное обновление демона TDEX, содержащее ряд изменений, в том числе:
|
||||
|
||||
- Обновление до TDEXv2: интерфейс Trade демона реализует спецификации нового протокола TDEX v2. С этим обновлением демон делает
|
||||
использование PSETv2 как способа описания и построения транзакций (вместо старого PSETv0), а также предоставляет некоторые новые конечные точки в соответствии с
|
||||
по спец.
|
||||
|
||||
- Отсоединение кошелька: демону теперь требуется подключение к кошельку Ocean, который полностью отвечает за получение новых пар ключей.
|
||||
и просканируйте цепочку на их наличие. Кошелек генерирует события, потребляемые демоном для подтвержденных/неподтвержденных транзакций и utxos.
|
||||
Это значительно улучшает общую производительность службы.
|
||||
Вам больше не нужно вручную запрашивать средства, переведенные на счет дамеона.
|
||||
|
||||
- Встроенный механизм подачи цен: демон позволяет вам настраивать потоки цен для ваших рынков с подключаемыми стратегиями, чтобы их цены всегда были актуальными.
|
||||
dependencies: []
|
||||
developer: TDEX Network
|
||||
website: https://dev.tdex.network
|
||||
repo: https://github.com/tdex-network/tdex-daemon
|
||||
support: https://t.me/tdexnetwork
|
||||
submitter: TDEX Network (tiero)
|
||||
submission: https://github.com/getumbrel/dfwebos-apps/pull/151
|
||||
port: 9094
|
||||
torOnly: false
|
||||
gallery:
|
||||
- 1.jpg
|
||||
- 2.jpg
|
||||
- 3.jpg
|
||||
path: ""
|
||||
defaultUsername: ""
|
||||
defaultPassword: ""
|
||||
@@ -0,0 +1,68 @@
|
||||
version: "3.7"
|
||||
|
||||
services:
|
||||
app_proxy:
|
||||
environment:
|
||||
APP_HOST: tdex_caddy_1
|
||||
APP_PORT: 8080
|
||||
|
||||
oceand:
|
||||
image: ghcr.io/vulpemventures/oceand:v0.1.17@sha256:37b813b43b068e32d918b9f42539c33287308cc81d00909c742b7164dfefc0c4
|
||||
tty: true
|
||||
restart: on-failure
|
||||
stop_grace_period: 1m
|
||||
volumes:
|
||||
- ${APP_DATA_DIR}/ocean-data:/home/ocean/.oceand
|
||||
environment:
|
||||
OCEAN_LOG_LEVEL: 5
|
||||
OCEAN_DB_TYPE: "badger"
|
||||
OCEAN_NO_TLS: "true"
|
||||
OCEAN_NO_PROFILER: "true"
|
||||
OCEAN_UTXO_EXPIRY_DURATION_IN_SECONDS: 240
|
||||
|
||||
tdexd:
|
||||
image: ghcr.io/tdex-network/tdexd:v1.0.1@sha256:eef1f31e98208e9a35ddf308317bc1df71065e189fa0915c769c7a01394ef79a
|
||||
tty: true
|
||||
restart: on-failure
|
||||
depends_on:
|
||||
- oceand
|
||||
stop_grace_period: 1m
|
||||
volumes:
|
||||
- ${APP_DATA_DIR}/tdexd:/home/tdex/.tdex-daemon
|
||||
ports:
|
||||
- ${APP_TDEX_PORT}:${APP_TDEX_PORT}
|
||||
environment:
|
||||
TDEX_LOG_LEVEL: 5
|
||||
TDEX_OPERATOR_LISTENING_PORT: "${APP_TDEX_PORT}"
|
||||
TDEX_TRADE_LISTENING_PORT: "${APP_TDEX_PORT}"
|
||||
TDEX_NO_OPERATOR_TLS: "true"
|
||||
TDEX_WALLET_ADDR: oceand:18000
|
||||
# эти переменные используются для создания соединения URL
|
||||
# мы предполагаем всегда показывать внешнюю конечную точку
|
||||
# доступен удаленно с других панелей мониторинга через Tor
|
||||
TDEX_CONNECT_ADDR: "${APP_TDEX_DAEMON_HIDDEN_SERVICE}"
|
||||
TDEX_CONNECT_PROTO: http
|
||||
|
||||
dashboard:
|
||||
image: ghcr.io/tdex-network/dashboard:v1.0.2@sha256:71d598afb0d5ec9966306f4ef0d5f6839a9d7dc50726a935f3d0bb38f1925d78
|
||||
restart: on-failure
|
||||
environment:
|
||||
USE_PROXY: "false"
|
||||
IS_PACKAGED: "true"
|
||||
TRADER_HIDDEN_SERVICE: "${APP_TDEX_DAEMON_HIDDEN_SERVICE}"
|
||||
|
||||
caddy:
|
||||
image: caddy:2.6.4-alpine@sha256:4dfec6c3b22c36b63ea4a3633c7cdbdaa9926d1324c27db2b0e2b70ef9cd105a
|
||||
restart: on-failure
|
||||
volumes:
|
||||
- ${APP_DATA_DIR}/caddy-data/Caddyfile:/etc/caddy/Caddyfile
|
||||
|
||||
tor:
|
||||
image: getumbrel/tor:0.4.7.8@sha256:2ace83f22501f58857fa9b403009f595137fa2e7986c4fda79d82a8119072b6a
|
||||
user: "1000:1000"
|
||||
restart: on-failure
|
||||
volumes:
|
||||
- ${APP_DATA_DIR}/torrc:/etc/tor/torrc:ro
|
||||
- ${TOR_DATA_DIR}:/data
|
||||
environment:
|
||||
HOME: "/tmp"
|
||||
@@ -0,0 +1,4 @@
|
||||
export APP_TDEX_PORT="9092"
|
||||
|
||||
daemon_hidden_service_file="${EXPORTS_TOR_DATA_DIR}/app-${EXPORTS_APP_ID}-daemon/hostname"
|
||||
export APP_TDEX_DAEMON_HIDDEN_SERVICE="$(cat "${daemon_hidden_service_file}" 2>/dev/null || echo "daemon_not_yet_set.onion")"
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
APP_DATA_DIR="$(readlink -f $(dirname "${BASH_SOURCE[0]}")/..)"
|
||||
|
||||
# Обновите Caddyfile, добавив новый порт tdexd.
|
||||
CADDYFILE_PATH="${APP_DATA_DIR}/caddy-data/Caddyfile"
|
||||
sed -i 's/tdex_tdexd_1:9090/tdex_tdexd_1:9092/g' "${CADDYFILE_PATH}"
|
||||
|
||||
# Убедитесь, что каталог Ocean-data существует для приложений, обновляющихся из старой версии, в которой его не было.
|
||||
OCEAN_DATA_DIR="${APP_DATA_DIR}/ocean-data"
|
||||
|
||||
[ ! -d "${OCEAN_DATA_DIR}" ] && mkdir -p "${OCEAN_DATA_DIR}" && chown 1000:1000 "${OCEAN_DATA_DIR}"
|
||||
|
||||
# Убедитесь, что новый каталог tdexd существует для приложений, которые обновляются из старой структуры каталогов tdex-data.
|
||||
TDEXD_DATA_DIR="${APP_DATA_DIR}/tdexd"
|
||||
|
||||
[ ! -d "${TDEXD_DATA_DIR}" ] && mkdir -p "${TDEXD_DATA_DIR}" && chown 1000:1000 "${TDEXD_DATA_DIR}"
|
||||
|
||||
# Отложите загрузку TDEX до тех пор, пока скрытая служба Tor не будет готова.
|
||||
HIDDEN_SERVICE_FILE="${TOR_DATA_DIR}/app-${APP_ID}-daemon/hostname"
|
||||
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
|
||||
exit
|
||||
fi
|
||||
|
||||
"${DFWEBOS_ROOT}/scripts/app" compose "${APP_ID}" up --detach tor
|
||||
"${DFWEBOS_ROOT}/scripts/app" compose "${APP_ID}" up --detach oceand
|
||||
"${DFWEBOS_ROOT}/scripts/app" compose "${APP_ID}" up --detach tdexd
|
||||
|
||||
echo "App: ${APP_ID} - Generating Tor Hidden Service..."
|
||||
for attempt in $(seq 1 100); do
|
||||
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
|
||||
echo "App: ${APP_ID} - Hidden service file created successfully!"
|
||||
break
|
||||
fi
|
||||
sleep 0.1
|
||||
done
|
||||
|
||||
if [[ ! -f "${HIDDEN_SERVICE_FILE}" ]]; then
|
||||
echo "App: ${APP_ID} - Hidden service file wasn't created"
|
||||
fi
|
||||
@@ -0,0 +1,3 @@
|
||||
# TDEX Скрытый интерфейс публичного трейдера
|
||||
HiddenServiceDir /data/app-$APP_ID-daemon
|
||||
HiddenServicePort 80 tdex_tdexd_1:$APP_TDEX_PORT
|
||||
Reference in New Issue
Block a user