fix(bot): install libgssapi-krb5-2 in runtime image
PR Checks / test-and-build (pull_request) Successful in 13m32s
PR Checks / test-and-build (pull_request) Successful in 13m32s
Telegram bot's long-polling hangs after the first GetUpdates request because libgssapi-krb5.so.2 is missing from the runtime-deps:10.0-noble final image. .NET runtime attempts dlopen() of libgssapi during the HTTPS handshake; without the library the HttpClient connection pool enters an unrecoverable state and TelegramBotService never receives new updates, even though SessionSchedulerService keeps sending outgoing messages successfully. Symptom (Loki, container gmrelaybot-bot-1): Telegram bot polling started Polling error, retrying in 5s Telegram.Bot.Exceptions.RequestException: Bot API Service Failure Cannot load library libgssapi_krb5.so.2 After the single Polling error, no Error handling update, no further Polling error, and getUpdates from outside returns [] forever. Fix: install libgssapi-krb5-2 alongside wget in the final stage of src/GmRelay.Bot/Dockerfile. This also future-proofs Npgsql GSS/SSPI Kerberos authentication for PostgreSQL. Closes #129. Bump version 3.9.5 -> 3.9.6
This commit is contained in:
@@ -30,8 +30,10 @@ RUN dotnet publish "GmRelay.Bot.csproj" -c Release -a $TARGETARCH -o /app/publis
|
||||
FROM mcr.microsoft.com/dotnet/runtime-deps:10.0-noble AS final
|
||||
WORKDIR /app
|
||||
|
||||
# Устанавливаем wget для healthcheck
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends wget \
|
||||
# Устанавливаем wget для healthcheck и libgssapi-krb5-2 для Npgsql GSS/SSPI
|
||||
# и HTTPS-handshake Telegram.Bot (без неё long-polling падает на первом запросе).
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
wget libgssapi-krb5-2 \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Копируем только AOT-результаты из билда
|
||||
|
||||
Reference in New Issue
Block a user