Постоянно сбрасывается синхронизация BTCPay Server Validated blocks и не может дойти до конца. Я использовал Docker при установке и вводил параметр export BTCPAYGEN_ADDITIONAL_FRAGMENTS="opt-save-storage-xs". Ставил на vps ubuntu 20, nginx, 60 гб ssd, 2 гб ОЗУ, 2 ядра. Как оказалось, в этом и была проблема.
Как выяснилось, проблема с постоянным сбросом валидации блоков в BTCPay Server может быть вызвана несколькими факторами. Ниже я расписал некоторые возможные решения проблемы:
✅ Увеличение максимального количества открытых файлов: Убедитесь, что вы установили максимальное количество открытых файлов на вашей системе в соответствии с рекомендациями BTCPay Server. Вы можете установить этот параметр в /etc/security/limits.conf с помощью следующих строк:
* soft nofile 8192
* hard nofile 65535
✅ Использование SSD: Убедитесь, что вы используете SSD вместо HDD для установки BTCPay Server, так как это ускорит процесс валидации блоков.
✅ Изменение настроек Docker: Если вы используете Docker, убедитесь, что вы настроили его правильно для работы с большим количеством файлов. В частности, вы можете использовать параметр --ulimit nofile=65535:65535, чтобы установить максимальное количество открытых файлов для контейнера.
✅ Использование другого узла: Если все вышеперечисленные решения не работают, попробуйте использовать другой узел для синхронизации сети Bitcoin. Вы можете изменить настройки BTCPay Server, чтобы использовать другой узел, добавив следующую строку в ваш файл .env:
BTCPAY_HOST_SSHKEYFILE="/path/to/sshkey"
BTCPAY_SSH_TUNNEL_USER="bitcoinuser"
BTCPAY_SSH_TUNNEL_HOST="bitcoinhost"
BTCPAY_SSH_TUNNEL_PORT="22"
✅ Проверьте логи BTCPay Server. Вы можете проверить логи BTCPay Server, чтобы узнать, почему синхронизация блокчейна не работает. Логи находятся в папке /var/log/btcpayserver/.
✅ Увеличьте объем памяти, выделенный для Docker. Если ваш сервер имеет ограниченный объем памяти, это может вызывать проблемы при синхронизации блоков Bitcoin. Чтобы увеличить объем памяти, выделенный для Docker, выполните следующую команду: sudo docker-compose --compatibility up -d (добавьте параметр --compatibility в конце, если у вас есть версия Docker ниже 17.06).
✅ Попробуйте очистить кэш Bitcoin. Если проблема все еще не решена, попробуйте выполнить следующую команду, чтобы очистить кэш Bitcoin: docker-compose down -v (обратите внимание на то, что эта команда также удалит все данные о пользователе и приложении).
✅ Настройте Docker, чтобы он мог использовать достаточное количество ресурсов для BTCPay Server. Для этого вам нужно изменить настройки Docker по умолчанию в файле /etc/docker/daemon.json. Создайте этот файл, если он еще не существует, и добавьте в него следующий код:
{
"default-address-pools": [
{
"base": "172.80.0.0/16",
"size": 24
}
],
"default-ulimits": {
"memlock": {
"Name": "memlock",
"Hard": -1,
"Soft": -1
}
}
}
Эти настройки увеличат лимиты на использование памяти и IP-адреса контейнерами Docker, что позволит BTCPay Server работать более эффективно. Перезапустите сервис Docker, чтобы применить настройки:
sudo systemctl restart docker
sudo systemctl restart nginx
После этого Docker будет оптимально настроен. Надеюсь, что эти решения помогут вам решить проблему с постоянным сбросом Validated blocks в BTCPay Server.
Лично на моём сервере не хватало процессора. Я проверил так и загрузка была 120 процентов.
sudo su -
docker stats
Решением стала покупка сервера мощнее - 4 ядра и 6 гигабайт ОЗУ. На
этом сайте можно купить такой впс за сущие копейки, по сравнению с другими.
Не забываем про:
Канал в Телеграм:
@crabs_channel
Чат в Телеграм:
@crabsmoney
Канал магазина:
@crabs_money_shop
Группа для реклам:
@crabs_ads