[GH-ISSUE #172] [Bug]Borked Layout of Web-UI in 2.0.0-rc[X]: #61

Closed
opened 2026-02-26 17:37:05 +03:00 by kerem · 14 comments
Owner

Originally created by @tastelessbrain on GitHub (Feb 18, 2026).
Original GitHub issue: https://github.com/Corsinvest/cv4pve-admin/issues/172

Edition

Community Edition (CE)

Version

2.0.0-rc2

Deployment Type

Docker

Bug Description

When i Use any 2.0.0-rc image the Layout and or Scaling of the webui is completly gone.

Image

Steps to Reproduce

  1. curl -fsSL https://raw.githubusercontent.com/Corsinvest/cv4pve-admin/main/install.sh | bash
  2. Choose: CE; 2.0.0-rc2; and default pw
  3. cd cv4pve-admin-docker
  4. docker compose up -d
  5. go to http://localhost:8080

Expected Behavior

I expected something like this:
https://corsinvest.github.io/cv4pve-admin/images/login.png

Actual Behavior

I get this:
Image

Image

Relevant Logs

brm@rbrm:~/cv4pve-admin-docker$ docker logs -f cv4pve-admin-docker-cv4pve-admin-1
Cannot load library libgssapi_krb5.so.2 
Error: libgssapi_krb5.so.2: cannot open shared object file: No such file or directory
2026-02-18 16:40:14.300 +01:00 [ERR] An error occurred using the connection to database 'cv4pve-admin-db' on server 'tcp://postgres:5432'.   <s:Microsoft.EntityFrameworkCore.Database.Connection>
2026-02-18 16:40:14.320 +01:00 [ERR] An exception occurred while iterating over the results of a query for context type 'Corsinvest.ProxmoxVE.Admin.Module.System.Persistence.ModuleDbContext'.
Npgsql.PostgresException (0x80004005): 58P01: could not open file "global/pg_filenode.map": No such file or directory
   at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage)
   at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)
   at Npgsql.Internal.NpgsqlConnector.Authenticate(String username, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.Internal.NpgsqlConnector.<Open>g__OpenCore|209_0(NpgsqlConnector conn, String username, SslMode sslMode, GssEncryptionMode gssEncMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.Internal.NpgsqlConnector.<Open>g__OpenCore|209_0(NpgsqlConnector conn, String username, SslMode sslMode, GssEncryptionMode gssEncMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.Internal.NpgsqlConnector.Open(NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.PoolingDataSource.OpenNewConnector(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.PoolingDataSource.<Get>g__RentAsync|33_0(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlConnection.<Open>g__OpenAsync|42_0(Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlConnection.Open()
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorsExpected)
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternal(Boolean errorsExpected)
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorsExpected)
   at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject)
   at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.InitializeReader(Enumerator enumerator)
   at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.<>c.<MoveNext>b__21_0(DbContext _, Enumerator enumerator)
   at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
   at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext()
  Exception data:
    Severity: FATAL
    SqlState: 58P01
    MessageText: could not open file "global/pg_filenode.map": No such file or directory
    File: relmapper.c
    Line: 816
    Routine: read_relmap_file   <s:Microsoft.EntityFrameworkCore.Query>
Npgsql.PostgresException (0x80004005): 58P01: could not open file "global/pg_filenode.map": No such file or directory
   at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage)
   at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)
   at Npgsql.Internal.NpgsqlConnector.Authenticate(String username, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.Internal.NpgsqlConnector.<Open>g__OpenCore|209_0(NpgsqlConnector conn, String username, SslMode sslMode, GssEncryptionMode gssEncMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.Internal.NpgsqlConnector.<Open>g__OpenCore|209_0(NpgsqlConnector conn, String username, SslMode sslMode, GssEncryptionMode gssEncMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.Internal.NpgsqlConnector.Open(NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.PoolingDataSource.OpenNewConnector(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.PoolingDataSource.<Get>g__RentAsync|33_0(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlConnection.<Open>g__OpenAsync|42_0(Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlConnection.Open()
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorsExpected)
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternal(Boolean errorsExpected)
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorsExpected)
   at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject)
   at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.InitializeReader(Enumerator enumerator)
   at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.<>c.<MoveNext>b__21_0(DbContext _, Enumerator enumerator)
   at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
   at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext()
  Exception data:
    Severity: FATAL
    SqlState: 58P01
    MessageText: could not open file "global/pg_filenode.map": No such file or directory
    File: relmapper.c
    Line: 816
    Routine: read_relmap_file
2026-02-18 16:40:14.323 +01:00 [ERR] Database error while retrieving settings for section 'Corsinvest.ProxmoxVE.Admin.Core.Configuration.AppSettings', key 'Corsinvest.ProxmoxVE.Admin.Core.Configuration.AppSettings', context 'System'   <s:Corsinvest.ProxmoxVE.Admin.Module.System.Settings.Services.SettingsService>
Npgsql.PostgresException (0x80004005): 58P01: could not open file "global/pg_filenode.map": No such file or directory
   at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage)
   at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)
   at Npgsql.Internal.NpgsqlConnector.Authenticate(String username, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.Internal.NpgsqlConnector.<Open>g__OpenCore|209_0(NpgsqlConnector conn, String username, SslMode sslMode, GssEncryptionMode gssEncMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.Internal.NpgsqlConnector.<Open>g__OpenCore|209_0(NpgsqlConnector conn, String username, SslMode sslMode, GssEncryptionMode gssEncMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.Internal.NpgsqlConnector.Open(NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.PoolingDataSource.OpenNewConnector(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.PoolingDataSource.<Get>g__RentAsync|33_0(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlConnection.<Open>g__OpenAsync|42_0(Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlConnection.Open()
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorsExpected)
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternal(Boolean errorsExpected)
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorsExpected)
   at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject)
   at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.InitializeReader(Enumerator enumerator)
   at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.<>c.<MoveNext>b__21_0(DbContext _, Enumerator enumerator)
   at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
   at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext()
   at System.Linq.Enumerable.TryGetSingle[TSource](IEnumerable`1 source, Boolean& found)
   at lambda_method43(Closure, QueryContext)
   at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.ExecuteCore[TResult](Expression query, Boolean async, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.Execute[TResult](Expression query)
   at Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryProvider.Execute[TResult](Expression expression)
   at Corsinvest.ProxmoxVE.Admin.Module.System.Settings.Services.SettingsService.<>c__DisplayClass13_0.<Get>b__0(CancellationToken _) in /home/runner/work/cv4pve-admin/cv4pve-admin/src/Corsinvest.ProxmoxVE.Admin.Module.System/Settings/Services/SettingsService.cs:line 44
  Exception data:
    Severity: FATAL
    SqlState: 58P01
    MessageText: could not open file "global/pg_filenode.map": No such file or directory
    File: relmapper.c
    Line: 816
    Routine: read_relmap_file
2026-02-18 16:40:29.390 +01:00 [INF] Start installing Hangfire SQL objects...   <s:Hangfire.PostgreSql.PostgreSqlStorage>
2026-02-18 16:40:29.503 +01:00 [INF] Hangfire SQL objects installed.   <s:Hangfire.PostgreSql.PostgreSqlStorage>
2026-02-18 16:40:29.509 +01:00 [INF] Starting Detection version 8.20.0.0   <s:Detection.Startup>
2026-02-18 16:40:29.572 +01:00 [ERR] Failed executing DbCommand (2ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
SELECT "MigrationId", "ProductVersion"
FROM system."__EFMigrationsHistory"
ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
2026-02-18 16:40:30.896 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
SELECT "MigrationId", "ProductVersion"
FROM autosnap."__EFMigrationsHistory"
ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
2026-02-18 16:40:30.942 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
SELECT "MigrationId", "ProductVersion"
FROM diagnostic."__EFMigrationsHistory"
ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
2026-02-18 16:40:30.966 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
SELECT "MigrationId", "ProductVersion"
FROM node_protect."__EFMigrationsHistory"
ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
2026-02-18 16:40:30.992 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
SELECT "MigrationId", "ProductVersion"
FROM backup_insights."__EFMigrationsHistory"
ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
2026-02-18 16:40:31.011 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
SELECT "MigrationId", "ProductVersion"
FROM replication_insights."__EFMigrationsHistory"
ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
2026-02-18 16:40:31.031 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
SELECT "MigrationId", "ProductVersion"
FROM dashboard."__EFMigrationsHistory"
ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
2026-02-18 16:40:31.059 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
SELECT "MigrationId", "ProductVersion"
FROM system_reports."__EFMigrationsHistory"
ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
2026-02-18 16:40:31.114 +01:00 [WRN] No XML encryptor configured. Key {b702e92c-ec49-43ae-ac92-ce138c8511af} may be persisted to storage in unencrypted form.   <s:Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager>
2026-02-18 16:40:31.120 +01:00 [INF] Release Check Service started   <s:Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseCheckHostedService>
2026-02-18 16:40:31.120 +01:00 [WRN] Overriding HTTP_PORTS '8080' and HTTPS_PORTS ''. Binding to values defined by URLS instead 'http://+:8080'.   <s:Microsoft.AspNetCore.Hosting.Diagnostics>
2026-02-18 16:40:31.169 +01:00 [ERR] Error fetching releases   <s:Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseService>
System.Net.Http.HttpRequestException: Connection refused (registry.hub.docker.com:443)
 ---> System.Net.Sockets.SocketException (111): Connection refused
   at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
   at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token)
   at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken)
   --- End of inner exception stack trace ---
   at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.InjectNewHttp11ConnectionAsync(QueueItem queueItem)
   at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionWaiter`1.WaitForConnectionWithTelemetryAsync(HttpRequestMessage request, HttpConnectionPool pool, Boolean async, CancellationToken requestCancellationToken)
   at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
   at System.Net.Http.DiagnosticsHandler.SendAsyncCore(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.SocketsHttpHandler.<SendAsync>g__CreateHandlerAndSendAsync|115_0(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.Extensions.Http.Logging.LoggingHttpMessageHandler.<SendCoreAsync>g__Core|4_0(HttpRequestMessage request, Boolean useAsync, CancellationToken cancellationToken)
   at Microsoft.Extensions.ServiceDiscovery.Http.ResolvingHttpDelegatingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.Extensions.Http.Logging.LoggingScopeHttpMessageHandler.<SendCoreAsync>g__Core|4_0(HttpRequestMessage request, Boolean useAsync, CancellationToken cancellationToken)
   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
   at Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.DockerHubFetcher.GetReleasesAsync(IHttpClientFactory httpClientFactory, ILogger logger, CancellationToken cancellationToken) in /home/runner/work/cv4pve-admin/cv4pve-admin/src/Corsinvest.ProxmoxVE.Admin.Module.System/ReleaseChecker/DockerHubFetcher.cs:line 32
   at Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseService.GetReleasesAsync(CancellationToken cancellationToken) in /home/runner/work/cv4pve-admin/cv4pve-admin/src/Corsinvest.ProxmoxVE.Admin.Module.System/ReleaseChecker/ReleaseService.cs:line 27
   at Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseService.GetLatestReleaseAsync(Boolean includePrerelease, CancellationToken cancellationToken) in /home/runner/work/cv4pve-admin/cv4pve-admin/src/Corsinvest.ProxmoxVE.Admin.Module.System/ReleaseChecker/ReleaseService.cs:line 69
2026-02-18 16:40:31.211 +01:00 [INF] Starting Hangfire Server using job storage: 'PostgreSQL Server: Host: postgres, DB: cv4pve-admin-db, Schema: hangfire'   <s:Hangfire.BackgroundJobServer>
2026-02-18 16:40:31.211 +01:00 [INF] Using the following options for PostgreSQL job storage:   <s:Hangfire.BackgroundJobServer>
2026-02-18 16:40:31.211 +01:00 [INF]     Queue poll interval: 00:00:15.   <s:Hangfire.BackgroundJobServer>
2026-02-18 16:40:31.211 +01:00 [INF]     Invisibility timeout: 00:30:00.   <s:Hangfire.BackgroundJobServer>
2026-02-18 16:40:31.211 +01:00 [INF]     Use sliding invisibility timeout: False.   <s:Hangfire.BackgroundJobServer>
2026-02-18 16:40:31.211 +01:00 [INF] Using the following options for Hangfire Server:
    Worker count: 20
    Listening queues: 'default'
    Shutdown timeout: 00:00:15
    Schedule polling interval: 00:00:15   <s:Hangfire.BackgroundJobServer>
2026-02-18 16:40:31.214 +01:00 [INF] Listening on: http://[::]:8080   <s:Corsinvest.ProxmoxVE.Admin>
2026-02-18 16:40:31.242 +01:00 [INF] Server c65f1e0a1004:1:4ff22f28 successfully announced in 26.717 ms   <s:Hangfire.Server.BackgroundServerProcess>
2026-02-18 16:40:31.243 +01:00 [INF] Server c65f1e0a1004:1:4ff22f28 is starting the registered dispatchers: ServerWatchdog, ServerJobCancellationWatcher, ExpirationManager, CountersAggregator, Worker, DelayedJobScheduler, RecurringJobScheduler...   <s:Hangfire.Server.BackgroundServerProcess>
2026-02-18 16:40:31.246 +01:00 [INF] Server c65f1e0a1004:1:4ff22f28 all the dispatchers started   <s:Hangfire.Server.BackgroundServerProcess>
2026-02-18 16:40:31.714 +01:00 [WRN] Failed to determine the https port for redirect.   <s:Microsoft.AspNetCore.HttpsPolicy.HttpsRedirectionMiddleware>
2026-02-18 16:40:31.752 +01:00 [ERR] An exception was thrown while deserializing the token.   <s:Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery>
Microsoft.AspNetCore.Antiforgery.AntiforgeryValidationException: The antiforgery token could not be decrypted.
 ---> System.Security.Cryptography.CryptographicException: The key {5342f524-adf2-498c-a8b9-1750141749b4} was not found in the key ring. For more information go to https://aka.ms/aspnet/dataprotectionwarning
   at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.UnprotectCore(Byte[] protectedData, Boolean allowOperationsOnRevokedKeys, UnprotectStatus& status)
   at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.Unprotect(Byte[] protectedData)
   at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken)
   --- End of inner exception stack trace ---
   at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken)
   at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery.GetCookieTokenDoesNotThrow(HttpContext httpContext)
2026-02-18 16:55:22.471 +01:00 [INF] Successful Login-Password for user: admin@local. Details: null  admin@local <s:Corsinvest.ProxmoxVE.Admin.Module.System.Security.Services.AuditService>

Environment Details

No response

Additional Context

No response

Originally created by @tastelessbrain on GitHub (Feb 18, 2026). Original GitHub issue: https://github.com/Corsinvest/cv4pve-admin/issues/172 ### Edition Community Edition (CE) ### Version 2.0.0-rc2 ### Deployment Type Docker ### Bug Description When i Use any 2.0.0-rc image the Layout and or Scaling of the webui is completly gone. <img width="2558" height="1439" alt="Image" src="https://github.com/user-attachments/assets/f1e98372-a426-45aa-ac04-4ea1673e1cf4" /> ### Steps to Reproduce 1. curl -fsSL https://raw.githubusercontent.com/Corsinvest/cv4pve-admin/main/install.sh | bash 2. Choose: CE; 2.0.0-rc2; and default pw 3. cd cv4pve-admin-docker 4. docker compose up -d 5. go to http://localhost:8080 ### Expected Behavior I expected something like this: https://corsinvest.github.io/cv4pve-admin/images/login.png ### Actual Behavior I get this: <img width="2558" height="1439" alt="Image" src="https://github.com/user-attachments/assets/f1e98372-a426-45aa-ac04-4ea1673e1cf4" /> <img width="2565" height="1294" alt="Image" src="https://github.com/user-attachments/assets/7eeee056-1e95-4624-81b0-d21f2f80e101" /> ### Relevant Logs ```shell brm@rbrm:~/cv4pve-admin-docker$ docker logs -f cv4pve-admin-docker-cv4pve-admin-1 Cannot load library libgssapi_krb5.so.2 Error: libgssapi_krb5.so.2: cannot open shared object file: No such file or directory 2026-02-18 16:40:14.300 +01:00 [ERR] An error occurred using the connection to database 'cv4pve-admin-db' on server 'tcp://postgres:5432'. <s:Microsoft.EntityFrameworkCore.Database.Connection> 2026-02-18 16:40:14.320 +01:00 [ERR] An exception occurred while iterating over the results of a query for context type 'Corsinvest.ProxmoxVE.Admin.Module.System.Persistence.ModuleDbContext'. Npgsql.PostgresException (0x80004005): 58P01: could not open file "global/pg_filenode.map": No such file or directory at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage) at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token) at Npgsql.Internal.NpgsqlConnector.Authenticate(String username, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.Internal.NpgsqlConnector.<Open>g__OpenCore|209_0(NpgsqlConnector conn, String username, SslMode sslMode, GssEncryptionMode gssEncMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.Internal.NpgsqlConnector.<Open>g__OpenCore|209_0(NpgsqlConnector conn, String username, SslMode sslMode, GssEncryptionMode gssEncMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.Internal.NpgsqlConnector.Open(NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.PoolingDataSource.OpenNewConnector(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.PoolingDataSource.<Get>g__RentAsync|33_0(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.NpgsqlConnection.<Open>g__OpenAsync|42_0(Boolean async, CancellationToken cancellationToken) at Npgsql.NpgsqlConnection.Open() at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorsExpected) at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternal(Boolean errorsExpected) at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorsExpected) at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject) at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.InitializeReader(Enumerator enumerator) at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.<>c.<MoveNext>b__21_0(DbContext _, Enumerator enumerator) at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded) at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext() Exception data: Severity: FATAL SqlState: 58P01 MessageText: could not open file "global/pg_filenode.map": No such file or directory File: relmapper.c Line: 816 Routine: read_relmap_file <s:Microsoft.EntityFrameworkCore.Query> Npgsql.PostgresException (0x80004005): 58P01: could not open file "global/pg_filenode.map": No such file or directory at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage) at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token) at Npgsql.Internal.NpgsqlConnector.Authenticate(String username, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.Internal.NpgsqlConnector.<Open>g__OpenCore|209_0(NpgsqlConnector conn, String username, SslMode sslMode, GssEncryptionMode gssEncMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.Internal.NpgsqlConnector.<Open>g__OpenCore|209_0(NpgsqlConnector conn, String username, SslMode sslMode, GssEncryptionMode gssEncMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.Internal.NpgsqlConnector.Open(NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.PoolingDataSource.OpenNewConnector(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.PoolingDataSource.<Get>g__RentAsync|33_0(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.NpgsqlConnection.<Open>g__OpenAsync|42_0(Boolean async, CancellationToken cancellationToken) at Npgsql.NpgsqlConnection.Open() at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorsExpected) at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternal(Boolean errorsExpected) at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorsExpected) at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject) at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.InitializeReader(Enumerator enumerator) at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.<>c.<MoveNext>b__21_0(DbContext _, Enumerator enumerator) at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded) at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext() Exception data: Severity: FATAL SqlState: 58P01 MessageText: could not open file "global/pg_filenode.map": No such file or directory File: relmapper.c Line: 816 Routine: read_relmap_file 2026-02-18 16:40:14.323 +01:00 [ERR] Database error while retrieving settings for section 'Corsinvest.ProxmoxVE.Admin.Core.Configuration.AppSettings', key 'Corsinvest.ProxmoxVE.Admin.Core.Configuration.AppSettings', context 'System' <s:Corsinvest.ProxmoxVE.Admin.Module.System.Settings.Services.SettingsService> Npgsql.PostgresException (0x80004005): 58P01: could not open file "global/pg_filenode.map": No such file or directory at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage) at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token) at Npgsql.Internal.NpgsqlConnector.Authenticate(String username, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.Internal.NpgsqlConnector.<Open>g__OpenCore|209_0(NpgsqlConnector conn, String username, SslMode sslMode, GssEncryptionMode gssEncMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.Internal.NpgsqlConnector.<Open>g__OpenCore|209_0(NpgsqlConnector conn, String username, SslMode sslMode, GssEncryptionMode gssEncMode, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.Internal.NpgsqlConnector.Open(NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.PoolingDataSource.OpenNewConnector(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.PoolingDataSource.<Get>g__RentAsync|33_0(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.NpgsqlConnection.<Open>g__OpenAsync|42_0(Boolean async, CancellationToken cancellationToken) at Npgsql.NpgsqlConnection.Open() at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorsExpected) at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenInternal(Boolean errorsExpected) at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorsExpected) at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject) at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.InitializeReader(Enumerator enumerator) at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.<>c.<MoveNext>b__21_0(DbContext _, Enumerator enumerator) at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded) at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext() at System.Linq.Enumerable.TryGetSingle[TSource](IEnumerable`1 source, Boolean& found) at lambda_method43(Closure, QueryContext) at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.ExecuteCore[TResult](Expression query, Boolean async, CancellationToken cancellationToken) at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.Execute[TResult](Expression query) at Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryProvider.Execute[TResult](Expression expression) at Corsinvest.ProxmoxVE.Admin.Module.System.Settings.Services.SettingsService.<>c__DisplayClass13_0.<Get>b__0(CancellationToken _) in /home/runner/work/cv4pve-admin/cv4pve-admin/src/Corsinvest.ProxmoxVE.Admin.Module.System/Settings/Services/SettingsService.cs:line 44 Exception data: Severity: FATAL SqlState: 58P01 MessageText: could not open file "global/pg_filenode.map": No such file or directory File: relmapper.c Line: 816 Routine: read_relmap_file 2026-02-18 16:40:29.390 +01:00 [INF] Start installing Hangfire SQL objects... <s:Hangfire.PostgreSql.PostgreSqlStorage> 2026-02-18 16:40:29.503 +01:00 [INF] Hangfire SQL objects installed. <s:Hangfire.PostgreSql.PostgreSqlStorage> 2026-02-18 16:40:29.509 +01:00 [INF] Starting Detection version 8.20.0.0 <s:Detection.Startup> 2026-02-18 16:40:29.572 +01:00 [ERR] Failed executing DbCommand (2ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] SELECT "MigrationId", "ProductVersion" FROM system."__EFMigrationsHistory" ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> 2026-02-18 16:40:30.896 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] SELECT "MigrationId", "ProductVersion" FROM autosnap."__EFMigrationsHistory" ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> 2026-02-18 16:40:30.942 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] SELECT "MigrationId", "ProductVersion" FROM diagnostic."__EFMigrationsHistory" ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> 2026-02-18 16:40:30.966 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] SELECT "MigrationId", "ProductVersion" FROM node_protect."__EFMigrationsHistory" ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> 2026-02-18 16:40:30.992 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] SELECT "MigrationId", "ProductVersion" FROM backup_insights."__EFMigrationsHistory" ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> 2026-02-18 16:40:31.011 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] SELECT "MigrationId", "ProductVersion" FROM replication_insights."__EFMigrationsHistory" ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> 2026-02-18 16:40:31.031 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] SELECT "MigrationId", "ProductVersion" FROM dashboard."__EFMigrationsHistory" ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> 2026-02-18 16:40:31.059 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] SELECT "MigrationId", "ProductVersion" FROM system_reports."__EFMigrationsHistory" ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> 2026-02-18 16:40:31.114 +01:00 [WRN] No XML encryptor configured. Key {b702e92c-ec49-43ae-ac92-ce138c8511af} may be persisted to storage in unencrypted form. <s:Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager> 2026-02-18 16:40:31.120 +01:00 [INF] Release Check Service started <s:Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseCheckHostedService> 2026-02-18 16:40:31.120 +01:00 [WRN] Overriding HTTP_PORTS '8080' and HTTPS_PORTS ''. Binding to values defined by URLS instead 'http://+:8080'. <s:Microsoft.AspNetCore.Hosting.Diagnostics> 2026-02-18 16:40:31.169 +01:00 [ERR] Error fetching releases <s:Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseService> System.Net.Http.HttpRequestException: Connection refused (registry.hub.docker.com:443) ---> System.Net.Sockets.SocketException (111): Connection refused at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken) at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.InjectNewHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionWaiter`1.WaitForConnectionWithTelemetryAsync(HttpRequestMessage request, HttpConnectionPool pool, Boolean async, CancellationToken requestCancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.DiagnosticsHandler.SendAsyncCore(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.SocketsHttpHandler.<SendAsync>g__CreateHandlerAndSendAsync|115_0(HttpRequestMessage request, CancellationToken cancellationToken) at Microsoft.Extensions.Http.Logging.LoggingHttpMessageHandler.<SendCoreAsync>g__Core|4_0(HttpRequestMessage request, Boolean useAsync, CancellationToken cancellationToken) at Microsoft.Extensions.ServiceDiscovery.Http.ResolvingHttpDelegatingHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) at Microsoft.Extensions.Http.Logging.LoggingScopeHttpMessageHandler.<SendCoreAsync>g__Core|4_0(HttpRequestMessage request, Boolean useAsync, CancellationToken cancellationToken) at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken) at Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.DockerHubFetcher.GetReleasesAsync(IHttpClientFactory httpClientFactory, ILogger logger, CancellationToken cancellationToken) in /home/runner/work/cv4pve-admin/cv4pve-admin/src/Corsinvest.ProxmoxVE.Admin.Module.System/ReleaseChecker/DockerHubFetcher.cs:line 32 at Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseService.GetReleasesAsync(CancellationToken cancellationToken) in /home/runner/work/cv4pve-admin/cv4pve-admin/src/Corsinvest.ProxmoxVE.Admin.Module.System/ReleaseChecker/ReleaseService.cs:line 27 at Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseService.GetLatestReleaseAsync(Boolean includePrerelease, CancellationToken cancellationToken) in /home/runner/work/cv4pve-admin/cv4pve-admin/src/Corsinvest.ProxmoxVE.Admin.Module.System/ReleaseChecker/ReleaseService.cs:line 69 2026-02-18 16:40:31.211 +01:00 [INF] Starting Hangfire Server using job storage: 'PostgreSQL Server: Host: postgres, DB: cv4pve-admin-db, Schema: hangfire' <s:Hangfire.BackgroundJobServer> 2026-02-18 16:40:31.211 +01:00 [INF] Using the following options for PostgreSQL job storage: <s:Hangfire.BackgroundJobServer> 2026-02-18 16:40:31.211 +01:00 [INF] Queue poll interval: 00:00:15. <s:Hangfire.BackgroundJobServer> 2026-02-18 16:40:31.211 +01:00 [INF] Invisibility timeout: 00:30:00. <s:Hangfire.BackgroundJobServer> 2026-02-18 16:40:31.211 +01:00 [INF] Use sliding invisibility timeout: False. <s:Hangfire.BackgroundJobServer> 2026-02-18 16:40:31.211 +01:00 [INF] Using the following options for Hangfire Server: Worker count: 20 Listening queues: 'default' Shutdown timeout: 00:00:15 Schedule polling interval: 00:00:15 <s:Hangfire.BackgroundJobServer> 2026-02-18 16:40:31.214 +01:00 [INF] Listening on: http://[::]:8080 <s:Corsinvest.ProxmoxVE.Admin> 2026-02-18 16:40:31.242 +01:00 [INF] Server c65f1e0a1004:1:4ff22f28 successfully announced in 26.717 ms <s:Hangfire.Server.BackgroundServerProcess> 2026-02-18 16:40:31.243 +01:00 [INF] Server c65f1e0a1004:1:4ff22f28 is starting the registered dispatchers: ServerWatchdog, ServerJobCancellationWatcher, ExpirationManager, CountersAggregator, Worker, DelayedJobScheduler, RecurringJobScheduler... <s:Hangfire.Server.BackgroundServerProcess> 2026-02-18 16:40:31.246 +01:00 [INF] Server c65f1e0a1004:1:4ff22f28 all the dispatchers started <s:Hangfire.Server.BackgroundServerProcess> 2026-02-18 16:40:31.714 +01:00 [WRN] Failed to determine the https port for redirect. <s:Microsoft.AspNetCore.HttpsPolicy.HttpsRedirectionMiddleware> 2026-02-18 16:40:31.752 +01:00 [ERR] An exception was thrown while deserializing the token. <s:Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery> Microsoft.AspNetCore.Antiforgery.AntiforgeryValidationException: The antiforgery token could not be decrypted. ---> System.Security.Cryptography.CryptographicException: The key {5342f524-adf2-498c-a8b9-1750141749b4} was not found in the key ring. For more information go to https://aka.ms/aspnet/dataprotectionwarning at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.UnprotectCore(Byte[] protectedData, Boolean allowOperationsOnRevokedKeys, UnprotectStatus& status) at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.Unprotect(Byte[] protectedData) at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken) --- End of inner exception stack trace --- at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken) at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery.GetCookieTokenDoesNotThrow(HttpContext httpContext) 2026-02-18 16:55:22.471 +01:00 [INF] Successful Login-Password for user: admin@local. Details: null admin@local <s:Corsinvest.ProxmoxVE.Admin.Module.System.Security.Services.AuditService> ``` ### Environment Details _No response_ ### Additional Context _No response_
kerem 2026-02-26 17:37:05 +03:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@franklupo commented on GitHub (Feb 18, 2026):

Hi @tastelessbrain,

Looking at your logs, the broken layout is caused by the app failing to run database migrations and read settings at startup:

Failed executing DbCommand — SELECT "MigrationId" FROM system."__EFMigrationsHistory"
Failed executing DbCommand — SELECT "MigrationId" FROM dashboard."__EFMigrationsHistory"
...
could not open file "global/pg_filenode.map": No such file or directory

The PostgreSQL volume appears to be corrupted or in an inconsistent state, which prevents migrations from running and settings from being loaded — resulting in the broken UI layout.

To fix, try a clean restart:

docker compose down
docker compose up -d

If that doesn't help, remove the corrupted PostgreSQL volume and start fresh:

docker compose down -v
docker compose up -d

⚠️ -v will delete all existing data (clusters, settings, etc.).

Also note: the Connection refused error on registry.hub.docker.com just means the container has no internet access — this does not affect the layout.

Please let us know if this resolves the issue!

<!-- gh-comment-id:3922237273 --> @franklupo commented on GitHub (Feb 18, 2026): Hi @tastelessbrain, Looking at your logs, the broken layout is caused by the app failing to run database migrations and read settings at startup: ``` Failed executing DbCommand — SELECT "MigrationId" FROM system."__EFMigrationsHistory" Failed executing DbCommand — SELECT "MigrationId" FROM dashboard."__EFMigrationsHistory" ... could not open file "global/pg_filenode.map": No such file or directory ``` The PostgreSQL volume appears to be corrupted or in an inconsistent state, which prevents migrations from running and settings from being loaded — resulting in the broken UI layout. **To fix, try a clean restart:** ```bash docker compose down docker compose up -d ``` If that doesn't help, remove the corrupted PostgreSQL volume and start fresh: ```bash docker compose down -v docker compose up -d ``` > ⚠️ `-v` will delete all existing data (clusters, settings, etc.). Also note: the `Connection refused` error on `registry.hub.docker.com` just means the container has no internet access — this does not affect the layout. Please let us know if this resolves the issue!
Author
Owner

@franklupo commented on GitHub (Feb 18, 2026):

Hi @tastelessbrain,

Looking at your screenshots, it seems the broken layout is on the login page. Can you confirm:

  1. Is the broken layout only on the login page, or does it persist after logging in as well?
  2. If you open the browser developer tools (F12) → Console tab, do you see any errors?

Thanks!

<!-- gh-comment-id:3922290569 --> @franklupo commented on GitHub (Feb 18, 2026): Hi @tastelessbrain, Looking at your screenshots, it seems the broken layout is on the **login page**. Can you confirm: 1. Is the broken layout only on the login page, or does it persist after logging in as well? 2. If you open the browser developer tools (F12) → Console tab, do you see any errors? Thanks!
Author
Owner

@tastelessbrain commented on GitHub (Feb 18, 2026):

@franklupo as you can see on the second screenshot its also on the setupwizard after login.
Ill look into the tip from your 1st response.
Thx so far.

<!-- gh-comment-id:3922989300 --> @tastelessbrain commented on GitHub (Feb 18, 2026): @franklupo as you can see on the second screenshot its also on the setupwizard after login. Ill look into the tip from your 1st response. Thx so far.
Author
Owner

@franklupo commented on GitHub (Feb 18, 2026):

Thanks for the confirmation! The broken layout on both the login page and setup wizard looks like missing CSS/static files rather than a data issue. We're investigating this further.

<!-- gh-comment-id:3923066872 --> @franklupo commented on GitHub (Feb 18, 2026): Thanks for the confirmation\! The broken layout on both the login page and setup wizard looks like missing CSS/static files rather than a data issue. We're investigating this further.
Author
Owner

@tastelessbrain commented on GitHub (Feb 18, 2026):

[EDIT: Format and added logs of postgres.]
So i spun the setup up at my home machine for testing using the same steps. But without any firewall in front. result is the same. Exept the refused connection i think.

The console output you asked for:

Image

I also added the ls -lah output of my dircetorys as a txt file.
ls-lah.txt

Logs after compose down & up only (no change in behaviour):
026-02-18 21:33:40.419 +01:00 [INF] Start installing Hangfire SQL objects...   <s:Hangfire.PostgreSql.PostgreSqlStorage>
2026-02-18 21:33:40.452 +01:00 [INF] Hangfire SQL objects installed.   <s:Hangfire.PostgreSql.PostgreSqlStorage>
2026-02-18 21:33:40.461 +01:00 [INF] Starting Detection version 8.20.0.0   <s:Detection.Startup>
2026-02-18 21:33:41.229 +01:00 [INF] Release Check Service started   <s:Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseCheckHostedService>
2026-02-18 21:33:41.231 +01:00 [WRN] Overriding HTTP_PORTS '8080' and HTTPS_PORTS ''. Binding to values defined by URLS instead 'http://+:8080'.   <s:Microsoft.AspNetCore.Hosting.Diagnostics>
2026-02-18 21:33:41.374 +01:00 [INF] Starting Hangfire Server using job storage: 'PostgreSQL Server: Host: postgres, DB: cv4pve-admin-db, Schema: hangfire'   <s:Hangfire.BackgroundJobServer>
2026-02-18 21:33:41.375 +01:00 [INF] Using the following options for PostgreSQL job storage:   <s:Hangfire.BackgroundJobServer>
2026-02-18 21:33:41.375 +01:00 [INF]     Queue poll interval: 00:00:15.   <s:Hangfire.BackgroundJobServer>
2026-02-18 21:33:41.375 +01:00 [INF]     Invisibility timeout: 00:30:00.   <s:Hangfire.BackgroundJobServer>
2026-02-18 21:33:41.375 +01:00 [INF]     Use sliding invisibility timeout: False.   <s:Hangfire.BackgroundJobServer>
2026-02-18 21:33:41.375 +01:00 [INF] Using the following options for Hangfire Server:
    Worker count: 20
    Listening queues: 'default'
    Shutdown timeout: 00:00:15
    Schedule polling interval: 00:00:15   <s:Hangfire.BackgroundJobServer>
2026-02-18 21:33:41.380 +01:00 [INF] Listening on: http://[::]:8080   <s:Corsinvest.ProxmoxVE.Admin>
2026-02-18 21:33:41.426 +01:00 [INF] Server c8766d44cb56:1:12463c17 successfully announced in 44.4287 ms   <s:Hangfire.Server.BackgroundServerProcess>
2026-02-18 21:33:41.427 +01:00 [INF] Server c8766d44cb56:1:12463c17 is starting the registered dispatchers: ServerWatchdog, ServerJobCancellationWatcher, ExpirationManager, CountersAggregator, Worker, DelayedJo
bScheduler, RecurringJobScheduler...   <s:Hangfire.Server.BackgroundServerProcess>
2026-02-18 21:33:41.432 +01:00 [INF] Server c8766d44cb56:1:12463c17 all the dispatchers started   <s:Hangfire.Server.BackgroundServerProcess>
2026-02-18 21:33:44.293 +01:00 [WRN] Failed to determine the https port for redirect.   <s:Microsoft.AspNetCore.HttpsPolicy.HttpsRedirectionMiddleware>
2026-02-18 21:33:44.400 +01:00 [ERR] An exception was thrown while deserializing the token.   <s:Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery>
Microsoft.AspNetCore.Antiforgery.AntiforgeryValidationException: The antiforgery token could not be decrypted.
 ---> System.Security.Cryptography.CryptographicException: The key {885962a4-8273-4010-abe9-eb2f1e18442a} was not found in the key ring. For more information go to https://aka.ms/aspnet/dataprotectionwarning
   at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.UnprotectCore(Byte[] protectedData, Boolean allowOperationsOnRevokedKeys, UnprotectStatus& status)
   at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.Unprotect(Byte[] protectedData)
   at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken)
   --- End of inner exception stack trace ---
   at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken)
   at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery.GetCookieTokenDoesNotThrow(HttpContext httpContext)
Logs after docker compose down -v && docker compose up -d (also tried the ./adminctl but to no evail):
sudo docker compose down -v                                                                                                                                          1 ✘ 
sudo docker compose up
[+] down 7/7
 ✔ Container cv4pve-admin-docker-watchtower-1        Removed                                                                                                                                                 0.2s 
 ✔ Container cv4pve-admin-docker-cv4pve-admin-1      Removed                                                                                                                                                 0.5s 
 ✔ Container cv4pve-admin-docker-cv4pve-admin-init-1 Removed                                                                                                                                                 0.0s 
 ✔ Container cv4pve-admin-docker-postgres-1          Removed                                                                                                                                                 0.3s 
 ✔ Network cv4pve-admin-docker_publicnet             Removed                                                                                                                                                 0.1s 
 ✔ Network cv4pve-admin-docker_appnet                Removed                                                                                                                                                 0.3s 
 ✔ Network cv4pve-admin-docker_default               Removed                                                                                                                                                 0.4s 
WARN[0000] No services to build                         
[+] up 7/7
 ✔ Network cv4pve-admin-docker_publicnet             Created                                                                                                                                                 0.0s 
 ✔ Network cv4pve-admin-docker_appnet                Created                                                                                                                                                 0.0s 
 ✔ Network cv4pve-admin-docker_default               Created                                                                                                                                                 0.0s 
 ✔ Container cv4pve-admin-docker-cv4pve-admin-init-1 Created                                                                                                                                                 0.0s 
 ✔ Container cv4pve-admin-docker-postgres-1          Created                                                                                                                                                 0.0s 
 ✔ Container cv4pve-admin-docker-watchtower-1        Created                                                                                                                                                 0.0s 
 ✔ Container cv4pve-admin-docker-cv4pve-admin-1      Created                                                                                                                                                 0.0s 
Attaching to cv4pve-admin-1, cv4pve-admin-init-1, postgres-1, watchtower-1
Container cv4pve-admin-docker-postgres-1 Waiting 
Container cv4pve-admin-docker-cv4pve-admin-init-1 Waiting 
postgres-1  | 
postgres-1  | PostgreSQL Database directory appears to contain a database; Skipping initialization
postgres-1  | 
postgres-1  | 2026-02-18 20:41:15.329 UTC [1] LOG:  starting PostgreSQL 17.8 on x86_64-pc-linux-musl, compiled by gcc (Alpine 15.2.0) 15.2.0, 64-bit
postgres-1  | 2026-02-18 20:41:15.329 UTC [1] LOG:  listening on IPv4 address "0.0.0.0", port 5432
postgres-1  | 2026-02-18 20:41:15.329 UTC [1] LOG:  listening on IPv6 address "::", port 5432
postgres-1  | 2026-02-18 20:41:15.331 UTC [1] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
postgres-1  | 2026-02-18 20:41:15.334 UTC [30] LOG:  database system was shut down at 2026-02-18 20:41:14 UTC
postgres-1  | 2026-02-18 20:41:15.339 UTC [1] LOG:  database system is ready to accept connections
cv4pve-admin-init-1 exited with code 0
Container cv4pve-admin-docker-cv4pve-admin-init-1 Exited 
watchtower-1         | time="2026-02-18T20:41:16Z" level=info msg="Watchtower 1.14.2 using Docker API v1.51"
watchtower-1         | time="2026-02-18T20:41:16Z" level=info msg="Using no notifications"
watchtower-1         | time="2026-02-18T20:41:16Z" level=info msg="HTTP API enabled and periodic updates disabled"
watchtower-1         | time="2026-02-18T20:41:16Z" level=info msg="The HTTP API is enabled at :8080."
watchtower-1         | time="2026-02-18T20:41:16Z" level=info msg="Starting HTTP API server" addr=":8080"
Container cv4pve-admin-docker-postgres-1 Healthy 
cv4pve-admin-1       | Cannot load library libgssapi_krb5.so.2 
cv4pve-admin-1       | Error: libgssapi_krb5.so.2: cannot open shared object file: No such file or directory
cv4pve-admin-1       | 2026-02-18 21:41:22.236 +01:00 [INF] Start installing Hangfire SQL objects...   <s:Hangfire.PostgreSql.PostgreSqlStorage>
cv4pve-admin-1       | 2026-02-18 21:41:22.268 +01:00 [INF] Hangfire SQL objects installed.   <s:Hangfire.PostgreSql.PostgreSqlStorage>
cv4pve-admin-1       | 2026-02-18 21:41:22.277 +01:00 [INF] Starting Detection version 8.20.0.0   <s:Detection.Startup>
cv4pve-admin-1       | 2026-02-18 21:41:23.039 +01:00 [INF] Release Check Service started   <s:Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseCheckHostedService>
cv4pve-admin-1       | 2026-02-18 21:41:23.042 +01:00 [WRN] Overriding HTTP_PORTS '8080' and HTTPS_PORTS ''. Binding to values defined by URLS instead 'http://+:8080'.   <s:Microsoft.AspNetCore.Hosting.Diagnostics>
cv4pve-admin-1       | 2026-02-18 21:41:23.187 +01:00 [INF] Starting Hangfire Server using job storage: 'PostgreSQL Server: Host: postgres, DB: cv4pve-admin-db, Schema: hangfire'   <s:Hangfire.BackgroundJobServer>
cv4pve-admin-1       | 2026-02-18 21:41:23.188 +01:00 [INF] Using the following options for PostgreSQL job storage:   <s:Hangfire.BackgroundJobServer>
cv4pve-admin-1       | 2026-02-18 21:41:23.188 +01:00 [INF]     Queue poll interval: 00:00:15.   <s:Hangfire.BackgroundJobServer>
cv4pve-admin-1       | 2026-02-18 21:41:23.188 +01:00 [INF]     Invisibility timeout: 00:30:00.   <s:Hangfire.BackgroundJobServer>
cv4pve-admin-1       | 2026-02-18 21:41:23.188 +01:00 [INF]     Use sliding invisibility timeout: False.   <s:Hangfire.BackgroundJobServer>
cv4pve-admin-1       | 2026-02-18 21:41:23.188 +01:00 [INF] Using the following options for Hangfire Server:
cv4pve-admin-1       |     Worker count: 20
cv4pve-admin-1       |     Listening queues: 'default'
cv4pve-admin-1       |     Shutdown timeout: 00:00:15
cv4pve-admin-1       |     Schedule polling interval: 00:00:15   <s:Hangfire.BackgroundJobServer>
cv4pve-admin-1       | 2026-02-18 21:41:23.194 +01:00 [INF] Listening on: http://[::]:8080   <s:Corsinvest.ProxmoxVE.Admin>
cv4pve-admin-1       | 2026-02-18 21:41:23.240 +01:00 [INF] Server 8942aa4696ab:1:1cdae356 successfully announced in 44.8528 ms   <s:Hangfire.Server.BackgroundServerProcess>
cv4pve-admin-1       | 2026-02-18 21:41:23.242 +01:00 [INF] Server 8942aa4696ab:1:1cdae356 is starting the registered dispatchers: ServerWatchdog, ServerJobCancellationWatcher, ExpirationManager, CountersAggregator, Worker, DelayedJobScheduler, RecurringJobScheduler...   <s:Hangfire.Server.BackgroundServerProcess>
cv4pve-admin-1       | 2026-02-18 21:41:23.246 +01:00 [INF] Server 8942aa4696ab:1:1cdae356 all the dispatchers started   <s:Hangfire.Server.BackgroundServerProcess>
cv4pve-admin-1       | 2026-02-18 21:41:26.291 +01:00 [WRN] Failed to determine the https port for redirect.   <s:Microsoft.AspNetCore.HttpsPolicy.HttpsRedirectionMiddleware>
Logs after completly deleting the folders and starting new:
curl -fsSL https://raw.githubusercontent.com/Corsinvest/cv4pve-admin/main/install.sh | bash                                                                                                ✔ 
===================================================================
           CV4PVE Admin - Docker Installation
===================================================================

Welcome! This script will download and configure CV4PVE Admin.

Choose edition:
  1) Community Edition (CE)
  2) Enterprise Edition (EE)

Select [1-2] (default: 1): 1
Selected: Community Edition

Fetching available tags from Docker Hub...
  Recent tags: latest  2.0.0-rc2 2.0.0-rc1 1.3.1 
  All tags: https://hub.docker.com/r/corsinvest/cv4pve-admin/tags

Docker image tag (default: latest): 2.0.0-rc2
Using tag: 2.0.0-rc2

PostgreSQL password (press ENTER for default): 
Using default password 'cv4pve-admin' (CHANGE IT LATER!)

Creating directory: cv4pve-admin-docker

Downloading files...
  - .env
  - docker-compose-ce.yaml
  - docker-compose-ee.yaml
  - adminctl
  - README.md
Configured: docker-compose-ce.yaml -> docker-compose.yaml
Configuration updated in .env

===================================================================
                  Installation completed!
===================================================================

Next steps:
  1. cd cv4pve-admin-docker
  2. docker compose up -d

Access: http://localhost:8080
Default credentials: admin@local / Password123!

Tip: Use './adminctl' for easy Docker management

    ~/docker1  cd cv4pve-admin-docker                                                                                                                                                             ✔  16s  
    ~/docker1/cv4pve-admin-docker  sudo docker compose up                                                                                                                                                 ✔ 
WARN[0000] No services to build                         
[+] up 7/7
 ✔ Network cv4pve-admin-docker_publicnet             Created                                                                                                                                                 0.0s 
 ✔ Network cv4pve-admin-docker_default               Created                                                                                                                                                 0.0s 
 ✔ Network cv4pve-admin-docker_appnet                Created                                                                                                                                                 0.0s 
 ✔ Container cv4pve-admin-docker-cv4pve-admin-init-1 Created                                                                                                                                                 0.0s 
 ✔ Container cv4pve-admin-docker-watchtower-1        Created                                                                                                                                                 0.0s 
 ✔ Container cv4pve-admin-docker-postgres-1          Created                                                                                                                                                 0.0s 
 ✔ Container cv4pve-admin-docker-cv4pve-admin-1      Created                                                                                                                                                 0.0s 
Attaching to cv4pve-admin-1, cv4pve-admin-init-1, postgres-1, watchtower-1
Container cv4pve-admin-docker-postgres-1 Waiting 
Container cv4pve-admin-docker-cv4pve-admin-init-1 Waiting 
postgres-1  | The files belonging to this database system will be owned by user "postgres".
postgres-1  | This user must also own the server process.
postgres-1  | 
postgres-1  | The database cluster will be initialized with locale "en_US.utf8".
postgres-1  | The default database encoding has accordingly been set to "UTF8".
postgres-1  | The default text search configuration will be set to "english".
postgres-1  | 
postgres-1  | Data page checksums are disabled.
postgres-1  | 
postgres-1  | fixing permissions on existing directory /var/lib/postgresql/data ... ok
postgres-1  | creating subdirectories ... ok
postgres-1  | selecting dynamic shared memory implementation ... posix
postgres-1  | selecting default "max_connections" ... 100
postgres-1  | selecting default "shared_buffers" ... 128MB
postgres-1  | selecting default time zone ... UTC
postgres-1  | creating configuration files ... ok
cv4pve-admin-init-1 exited with code 0
postgres-1           | running bootstrap script ... ok
postgres-1           | sh: locale: not found
postgres-1           | 2026-02-18 20:44:44.058 UTC [36] WARNING:  no usable system locales were found
Container cv4pve-admin-docker-cv4pve-admin-init-1 Exited 
postgres-1           | performing post-bootstrap initialization ... ok
watchtower-1         | time="2026-02-18T20:44:44Z" level=info msg="Watchtower 1.14.2 using Docker API v1.51"
watchtower-1         | time="2026-02-18T20:44:44Z" level=info msg="Using no notifications"
watchtower-1         | time="2026-02-18T20:44:44Z" level=info msg="HTTP API enabled and periodic updates disabled"
watchtower-1         | time="2026-02-18T20:44:44Z" level=info msg="The HTTP API is enabled at :8080."
watchtower-1         | time="2026-02-18T20:44:44Z" level=info msg="Starting HTTP API server" addr=":8080"
postgres-1           | initdb: warning: enabling "trust" authentication for local connections
postgres-1           | initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.
postgres-1           | syncing data to disk ... ok
postgres-1           | 
postgres-1           | 
postgres-1           | Success. You can now start the database server using:
postgres-1           | 
postgres-1           |     pg_ctl -D /var/lib/postgresql/data -l logfile start
postgres-1           | 
postgres-1           | waiting for server to start....2026-02-18 20:44:45.379 UTC [42] LOG:  starting PostgreSQL 17.8 on x86_64-pc-linux-musl, compiled by gcc (Alpine 15.2.0) 15.2.0, 64-bit
postgres-1           | 2026-02-18 20:44:45.380 UTC [42] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
postgres-1           | 2026-02-18 20:44:45.384 UTC [45] LOG:  database system was shut down at 2026-02-18 20:44:44 UTC
postgres-1           | 2026-02-18 20:44:45.388 UTC [42] LOG:  database system is ready to accept connections
postgres-1           |  done
postgres-1           | server started
postgres-1           | CREATE DATABASE
postgres-1           | 
postgres-1           | 
postgres-1           | /usr/local/bin/docker-entrypoint.sh: ignoring /docker-entrypoint-initdb.d/*
postgres-1           | 
postgres-1           | waiting for server to shut down....2026-02-18 20:44:45.519 UTC [42] LOG:  received fast shutdown request
postgres-1           | 2026-02-18 20:44:45.520 UTC [42] LOG:  aborting any active transactions
postgres-1           | 2026-02-18 20:44:45.522 UTC [42] LOG:  background worker "logical replication launcher" (PID 48) exited with exit code 1
postgres-1           | 2026-02-18 20:44:45.522 UTC [43] LOG:  shutting down
postgres-1           | 2026-02-18 20:44:45.524 UTC [43] LOG:  checkpoint starting: shutdown immediate
postgres-1           | 2026-02-18 20:44:45.833 UTC [43] LOG:  checkpoint complete: wrote 925 buffers (5.6%); 0 WAL file(s) added, 0 removed, 0 recycled; write=0.028 s, sync=0.275 s, total=0.311 s; sync files=301, longest=0.002 s, average=0.001 s; distance=4255 kB, estimate=4255 kB; lsn=0/19150E0, redo lsn=0/19150E0
postgres-1           | 2026-02-18 20:44:45.840 UTC [42] LOG:  database system is shut down
postgres-1           |  done
postgres-1           | server stopped
postgres-1           | 
postgres-1           | PostgreSQL init process complete; ready for start up.
postgres-1           | 
postgres-1           | 2026-02-18 20:44:45.939 UTC [1] LOG:  starting PostgreSQL 17.8 on x86_64-pc-linux-musl, compiled by gcc (Alpine 15.2.0) 15.2.0, 64-bit
postgres-1           | 2026-02-18 20:44:45.939 UTC [1] LOG:  listening on IPv4 address "0.0.0.0", port 5432
postgres-1           | 2026-02-18 20:44:45.939 UTC [1] LOG:  listening on IPv6 address "::", port 5432
postgres-1           | 2026-02-18 20:44:45.941 UTC [1] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
postgres-1           | 2026-02-18 20:44:45.945 UTC [58] LOG:  database system was shut down at 2026-02-18 20:44:45 UTC
postgres-1           | 2026-02-18 20:44:45.949 UTC [1] LOG:  database system is ready to accept connections
Container cv4pve-admin-docker-postgres-1 Healthy 
cv4pve-admin-1       | Cannot load library libgssapi_krb5.so.2 
cv4pve-admin-1       | Error: libgssapi_krb5.so.2: cannot open shared object file: No such file or directory
postgres-1           | 2026-02-18 20:44:50.618 UTC [70] ERROR:  relation "system.Settings" does not exist at character 23
postgres-1           | 2026-02-18 20:44:50.618 UTC [70] STATEMENT:  SELECT s."Value"
postgres-1           |  FROM system."Settings" AS s
postgres-1           |  WHERE s."Context" = $1 AND s."Section" = $2 AND s."Key" = $3
postgres-1           |  LIMIT 1
cv4pve-admin-1       | 2026-02-18 21:44:50.630 +01:00 [ERR] Failed executing DbCommand (33ms) [Parameters=[@context='?', @section='?', @key='?'], CommandType='Text', CommandTimeout='30']
cv4pve-admin-1       | SELECT s."Value"
cv4pve-admin-1       | FROM system."Settings" AS s
cv4pve-admin-1       | WHERE s."Context" = @context AND s."Section" = @section AND s."Key" = @key
cv4pve-admin-1       | LIMIT 1   <s:Microsoft.EntityFrameworkCore.Database.Command>
cv4pve-admin-1       | 2026-02-18 21:44:50.666 +01:00 [ERR] An exception occurred while iterating over the results of a query for context type 'Corsinvest.ProxmoxVE.Admin.Module.System.Persistence.ModuleDbContext'.
cv4pve-admin-1       | Npgsql.PostgresException (0x80004005): 42P01: relation "system.Settings" does not exist
cv4pve-admin-1       | 
cv4pve-admin-1       | POSITION: 23
cv4pve-admin-1       |    at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage)
cv4pve-admin-1       |    at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)
cv4pve-admin-1       |    at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)
cv4pve-admin-1       |    at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)
cv4pve-admin-1       |    at Npgsql.NpgsqlDataReader.NextResult()
cv4pve-admin-1       |    at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken)
cv4pve-admin-1       |    at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken)
cv4pve-admin-1       |    at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior)
cv4pve-admin-1       |    at Npgsql.NpgsqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.InitializeReader(Enumerator enumerator)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.<>c.<MoveNext>b__21_0(DbContext _, Enumerator enumerator)
cv4pve-admin-1       |    at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext()
cv4pve-admin-1       |   Exception data:
cv4pve-admin-1       |     Severity: ERROR
cv4pve-admin-1       |     SqlState: 42P01
cv4pve-admin-1       |     MessageText: relation "system.Settings" does not exist
cv4pve-admin-1       |     Position: 23
cv4pve-admin-1       |     File: parse_relation.c
cv4pve-admin-1       |     Line: 1428
cv4pve-admin-1       |     Routine: parserOpenTable   <s:Microsoft.EntityFrameworkCore.Query>
cv4pve-admin-1       | Npgsql.PostgresException (0x80004005): 42P01: relation "system.Settings" does not exist
cv4pve-admin-1       | 
cv4pve-admin-1       | POSITION: 23
cv4pve-admin-1       |    at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage)
cv4pve-admin-1       |    at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)
cv4pve-admin-1       |    at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)
cv4pve-admin-1       |    at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)
cv4pve-admin-1       |    at Npgsql.NpgsqlDataReader.NextResult()
cv4pve-admin-1       |    at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken)
cv4pve-admin-1       |    at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken)
cv4pve-admin-1       |    at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior)
cv4pve-admin-1       |    at Npgsql.NpgsqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.InitializeReader(Enumerator enumerator)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.<>c.<MoveNext>b__21_0(DbContext _, Enumerator enumerator)
cv4pve-admin-1       |    at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext()
cv4pve-admin-1       |   Exception data:
cv4pve-admin-1       |     Severity: ERROR

postgres-1           | 2026-02-18 20:44:50.685 UTC [70] ERROR:  relation "hangfire.schema" does not exist at character 42
cv4pve-admin-1       |     SqlState: 42P01
postgres-1           | 2026-02-18 20:44:50.685 UTC [70] STATEMENT:  SELECT true "VersionAlreadyApplied" FROM "hangfire"."schema" WHERE "version" >= $1
cv4pve-admin-1       |     MessageText: relation "system.Settings" does not exist


cv4pve-admin-1       |     Position: 23
cv4pve-admin-1       |     File: parse_relation.c
cv4pve-admin-1       |     Line: 1428
cv4pve-admin-1       |     Routine: parserOpenTable
cv4pve-admin-1       | 2026-02-18 21:44:50.670 +01:00 [ERR] Database error while retrieving settings for section 'Corsinvest.ProxmoxVE.Admin.Core.Configuration.AppSettings', key 'Corsinvest.ProxmoxVE.Admin.Core.Configuration.AppSettings', context 'System'   <s:Corsinvest.ProxmoxVE.Admin.Module.System.Settings.Services.SettingsService>
cv4pve-admin-1       | Npgsql.PostgresException (0x80004005): 42P01: relation "system.Settings" does not exist
cv4pve-admin-1       | 
cv4pve-admin-1       | POSITION: 23
cv4pve-admin-1       |    at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage)
cv4pve-admin-1       |    at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)
cv4pve-admin-1       |    at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)
cv4pve-admin-1       |    at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)
cv4pve-admin-1       |    at Npgsql.NpgsqlDataReader.NextResult()
cv4pve-admin-1       |    at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken)
cv4pve-admin-1       |    at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken)
cv4pve-admin-1       |    at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior)
cv4pve-admin-1       |    at Npgsql.NpgsqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.InitializeReader(Enumerator enumerator)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.<>c.<MoveNext>b__21_0(DbContext _, Enumerator enumerator)
cv4pve-admin-1       |    at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext()
cv4pve-admin-1       |    at System.Linq.Enumerable.TryGetSingle[TSource](IEnumerable`1 source, Boolean& found)
cv4pve-admin-1       |    at lambda_method43(Closure, QueryContext)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.ExecuteCore[TResult](Expression query, Boolean async, CancellationToken cancellationToken)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.Execute[TResult](Expression query)
cv4pve-admin-1       |    at Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryProvider.Execute[TResult](Expression expression)
cv4pve-admin-1       |    at Corsinvest.ProxmoxVE.Admin.Module.System.Settings.Services.SettingsService.<>c__DisplayClass13_0.<Get>b__0(CancellationToken _) in /home/runner/work/cv4pve-admin/cv4pve-admin/src/Corsinvest.ProxmoxVE.Admin.Module.System/Settings/Services/SettingsService.cs:line 44
cv4pve-admin-1       |   Exception data:
cv4pve-admin-1       |     Severity: ERROR
cv4pve-admin-1       |     SqlState: 42P01
cv4pve-admin-1       |     MessageText: relation "system.Settings" does not exist
cv4pve-admin-1       |     Position: 23
cv4pve-admin-1       |     File: parse_relation.c
cv4pve-admin-1       |     Line: 1428
cv4pve-admin-1       |     Routine: parserOpenTable
cv4pve-admin-1       | 2026-02-18 21:44:50.683 +01:00 [INF] Start installing Hangfire SQL objects...   <s:Hangfire.PostgreSql.PostgreSqlStorage>
cv4pve-admin-1       | 2026-02-18 21:44:50.886 +01:00 [INF] Hangfire SQL objects installed.   <s:Hangfire.PostgreSql.PostgreSqlStorage>
cv4pve-admin-1       | 2026-02-18 21:44:50.893 +01:00 [INF] Starting Detection version 8.20.0.0   <s:Detection.Startup>
postgres-1           | 2026-02-18 20:44:50.995 UTC [70] ERROR:  relation "system.__EFMigrationsHistory" does not exist at character 45
postgres-1           | 2026-02-18 20:44:50.995 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
postgres-1           |  FROM system."__EFMigrationsHistory"
postgres-1           |  ORDER BY "MigrationId"
cv4pve-admin-1       | 2026-02-18 21:44:50.997 +01:00 [ERR] Failed executing DbCommand (3ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
cv4pve-admin-1       | SELECT "MigrationId", "ProductVersion"
cv4pve-admin-1       | FROM system."__EFMigrationsHistory"
cv4pve-admin-1       | ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
postgres-1           | 2026-02-18 20:44:52.471 UTC [70] ERROR:  relation "autosnap.__EFMigrationsHistory" does not exist at character 45
postgres-1           | 2026-02-18 20:44:52.471 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
postgres-1           |  FROM autosnap."__EFMigrationsHistory"
postgres-1           |  ORDER BY "MigrationId"
cv4pve-admin-1       | 2026-02-18 21:44:52.471 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
cv4pve-admin-1       | SELECT "MigrationId", "ProductVersion"
cv4pve-admin-1       | FROM autosnap."__EFMigrationsHistory"
cv4pve-admin-1       | ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
postgres-1           | 2026-02-18 20:44:52.544 UTC [70] ERROR:  relation "diagnostic.__EFMigrationsHistory" does not exist at character 45
postgres-1           | 2026-02-18 20:44:52.544 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
postgres-1           |  FROM diagnostic."__EFMigrationsHistory"
postgres-1           |  ORDER BY "MigrationId"
cv4pve-admin-1       | 2026-02-18 21:44:52.544 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
cv4pve-admin-1       | SELECT "MigrationId", "ProductVersion"
cv4pve-admin-1       | FROM diagnostic."__EFMigrationsHistory"
cv4pve-admin-1       | ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
postgres-1           | 2026-02-18 20:44:52.585 UTC [70] ERROR:  relation "node_protect.__EFMigrationsHistory" does not exist at character 45
postgres-1           | 2026-02-18 20:44:52.585 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
postgres-1           |  FROM node_protect."__EFMigrationsHistory"
postgres-1           |  ORDER BY "MigrationId"
cv4pve-admin-1       | 2026-02-18 21:44:52.585 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
cv4pve-admin-1       | SELECT "MigrationId", "ProductVersion"
cv4pve-admin-1       | FROM node_protect."__EFMigrationsHistory"
cv4pve-admin-1       | ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
postgres-1           | 2026-02-18 20:44:52.625 UTC [70] ERROR:  relation "backup_insights.__EFMigrationsHistory" does not exist at character 45
postgres-1           | 2026-02-18 20:44:52.625 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
postgres-1           |  FROM backup_insights."__EFMigrationsHistory"
postgres-1           |  ORDER BY "MigrationId"
cv4pve-admin-1       | 2026-02-18 21:44:52.626 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
cv4pve-admin-1       | SELECT "MigrationId", "ProductVersion"
cv4pve-admin-1       | FROM backup_insights."__EFMigrationsHistory"
cv4pve-admin-1       | ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
postgres-1           | 2026-02-18 20:44:52.663 UTC [70] ERROR:  relation "replication_insights.__EFMigrationsHistory" does not exist at character 45
postgres-1           | 2026-02-18 20:44:52.663 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
postgres-1           |  FROM replication_insights."__EFMigrationsHistory"
postgres-1           |  ORDER BY "MigrationId"
cv4pve-admin-1       | 2026-02-18 21:44:52.663 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
cv4pve-admin-1       | SELECT "MigrationId", "ProductVersion"
cv4pve-admin-1       | FROM replication_insights."__EFMigrationsHistory"
cv4pve-admin-1       | ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
postgres-1           | 2026-02-18 20:44:52.695 UTC [70] ERROR:  relation "dashboard.__EFMigrationsHistory" does not exist at character 45
postgres-1           | 2026-02-18 20:44:52.695 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
postgres-1           |  FROM dashboard."__EFMigrationsHistory"
postgres-1           |  ORDER BY "MigrationId"
cv4pve-admin-1       | 2026-02-18 21:44:52.695 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
cv4pve-admin-1       | SELECT "MigrationId", "ProductVersion"
cv4pve-admin-1       | FROM dashboard."__EFMigrationsHistory"
cv4pve-admin-1       | ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
postgres-1           | 2026-02-18 20:44:52.745 UTC [70] ERROR:  relation "system_reports.__EFMigrationsHistory" does not exist at character 45
postgres-1           | 2026-02-18 20:44:52.745 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
postgres-1           |  FROM system_reports."__EFMigrationsHistory"
postgres-1           |  ORDER BY "MigrationId"
cv4pve-admin-1       | 2026-02-18 21:44:52.746 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
cv4pve-admin-1       | SELECT "MigrationId", "ProductVersion"
cv4pve-admin-1       | FROM system_reports."__EFMigrationsHistory"
cv4pve-admin-1       | ORDER BY "MigrationId";   <s:Microsoft.EntityFrameworkCore.Database.Command>
cv4pve-admin-1       | 2026-02-18 21:44:52.805 +01:00 [WRN] No XML encryptor configured. Key {59480bc6-eebd-432a-b4cc-d01b75d44c37} may be persisted to storage in unencrypted form.   <s:Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager>
cv4pve-admin-1       | 2026-02-18 21:44:52.813 +01:00 [INF] Release Check Service started   <s:Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseCheckHostedService>
cv4pve-admin-1       | 2026-02-18 21:44:52.813 +01:00 [WRN] Overriding HTTP_PORTS '8080' and HTTPS_PORTS ''. Binding to values defined by URLS instead 'http://+:8080'.   <s:Microsoft.AspNetCore.Hosting.Diagnostics>
cv4pve-admin-1       | 2026-02-18 21:44:52.971 +01:00 [INF] Starting Hangfire Server using job storage: 'PostgreSQL Server: Host: postgres, DB: cv4pve-admin-db, Schema: hangfire'   <s:Hangfire.BackgroundJobServer>
cv4pve-admin-1       | 2026-02-18 21:44:52.972 +01:00 [INF] Using the following options for PostgreSQL job storage:   <s:Hangfire.BackgroundJobServer>
cv4pve-admin-1       | 2026-02-18 21:44:52.972 +01:00 [INF]     Queue poll interval: 00:00:15.   <s:Hangfire.BackgroundJobServer>
cv4pve-admin-1       | 2026-02-18 21:44:52.972 +01:00 [INF]     Invisibility timeout: 00:30:00.   <s:Hangfire.BackgroundJobServer>
cv4pve-admin-1       | 2026-02-18 21:44:52.972 +01:00 [INF]     Use sliding invisibility timeout: False.   <s:Hangfire.BackgroundJobServer>
cv4pve-admin-1       | 2026-02-18 21:44:52.972 +01:00 [INF] Using the following options for Hangfire Server:
cv4pve-admin-1       |     Worker count: 20
cv4pve-admin-1       |     Listening queues: 'default'
cv4pve-admin-1       |     Shutdown timeout: 00:00:15
cv4pve-admin-1       |     Schedule polling interval: 00:00:15   <s:Hangfire.BackgroundJobServer>
cv4pve-admin-1       | 2026-02-18 21:44:52.978 +01:00 [INF] Listening on: http://[::]:8080   <s:Corsinvest.ProxmoxVE.Admin>
cv4pve-admin-1       | 2026-02-18 21:44:53.024 +01:00 [INF] Server 8c7147c925ea:1:295fc776 successfully announced in 45.06 ms   <s:Hangfire.Server.BackgroundServerProcess>
cv4pve-admin-1       | 2026-02-18 21:44:53.026 +01:00 [INF] Server 8c7147c925ea:1:295fc776 is starting the registered dispatchers: ServerWatchdog, ServerJobCancellationWatcher, ExpirationManager, CountersAggregator, Worker, DelayedJobScheduler, RecurringJobScheduler...   <s:Hangfire.Server.BackgroundServerProcess>
cv4pve-admin-1       | 2026-02-18 21:44:53.030 +01:00 [INF] Server 8c7147c925ea:1:295fc776 all the dispatchers started   <s:Hangfire.Server.BackgroundServerProcess>
cv4pve-admin-1       | 2026-02-18 21:45:00.712 +01:00 [WRN] Failed to determine the https port for redirect.   <s:Microsoft.AspNetCore.HttpsPolicy.HttpsRedirectionMiddleware>
cv4pve-admin-1       | 2026-02-18 21:45:00.773 +01:00 [ERR] An exception was thrown while deserializing the token.   <s:Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery>
cv4pve-admin-1       | Microsoft.AspNetCore.Antiforgery.AntiforgeryValidationException: The antiforgery token could not be decrypted.
cv4pve-admin-1       |  ---> System.Security.Cryptography.CryptographicException: The key {425ab4c3-1577-4776-8968-b1d7933c431f} was not found in the key ring. For more information go to https://aka.ms/aspnet/dataprotectionwarning
cv4pve-admin-1       |    at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.UnprotectCore(Byte[] protectedData, Boolean allowOperationsOnRevokedKeys, UnprotectStatus& status)
cv4pve-admin-1       |    at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.Unprotect(Byte[] protectedData)
cv4pve-admin-1       |    at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken)
cv4pve-admin-1       |    --- End of inner exception stack trace ---
cv4pve-admin-1       |    at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken)
cv4pve-admin-1       |    at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery.GetCookieTokenDoesNotThrow(HttpContext httpContext)
Postgres Logs:
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.

The database cluster will be initialized with locale "en_US.utf8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".

Data page checksums are disabled.

fixing permissions on existing directory /var/lib/postgresql/data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default "max_connections" ... 100
selecting default "shared_buffers" ... 128MB
selecting default time zone ... UTC
creating configuration files ... ok
running bootstrap script ... ok
sh: locale: not found
2026-02-18 20:44:44.058 UTC [36] WARNING:  no usable system locales were found
performing post-bootstrap initialization ... ok
initdb: warning: enabling "trust" authentication for local connections
initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.
syncing data to disk ... ok


Success. You can now start the database server using:

    pg_ctl -D /var/lib/postgresql/data -l logfile start

waiting for server to start....2026-02-18 20:44:45.379 UTC [42] LOG:  starting PostgreSQL 17.8 on x86_64-pc-linux-musl, compiled by gcc (Alpine 15.2.0) 15.2.0, 64-bit
2026-02-18 20:44:45.380 UTC [42] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2026-02-18 20:44:45.384 UTC [45] LOG:  database system was shut down at 2026-02-18 20:44:44 UTC
2026-02-18 20:44:45.388 UTC [42] LOG:  database system is ready to accept connections
 done
server started
CREATE DATABASE


/usr/local/bin/docker-entrypoint.sh: ignoring /docker-entrypoint-initdb.d/*

waiting for server to shut down....2026-02-18 20:44:45.519 UTC [42] LOG:  received fast shutdown request
2026-02-18 20:44:45.520 UTC [42] LOG:  aborting any active transactions
2026-02-18 20:44:45.522 UTC [42] LOG:  background worker "logical replication launcher" (PID 48) exited with exit code 1
2026-02-18 20:44:45.522 UTC [43] LOG:  shutting down
2026-02-18 20:44:45.524 UTC [43] LOG:  checkpoint starting: shutdown immediate
2026-02-18 20:44:45.833 UTC [43] LOG:  checkpoint complete: wrote 925 buffers (5.6%); 0 WAL file(s) added, 0 removed, 0 recycled; write=0.028 s, sync=0.275 s, total=0.311 s; sync files=301, longest=0.002 s, average=0.001 s; distance=4255 kB, estimate=4255 kB; lsn=0/19150E0, redo lsn=0/19150E0
2026-02-18 20:44:45.840 UTC [42] LOG:  database system is shut down
 done
server stopped

PostgreSQL init process complete; ready for start up.

2026-02-18 20:44:45.939 UTC [1] LOG:  starting PostgreSQL 17.8 on x86_64-pc-linux-musl, compiled by gcc (Alpine 15.2.0) 15.2.0, 64-bit
2026-02-18 20:44:45.939 UTC [1] LOG:  listening on IPv4 address "0.0.0.0", port 5432
2026-02-18 20:44:45.939 UTC [1] LOG:  listening on IPv6 address "::", port 5432
2026-02-18 20:44:45.941 UTC [1] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2026-02-18 20:44:45.945 UTC [58] LOG:  database system was shut down at 2026-02-18 20:44:45 UTC
2026-02-18 20:44:45.949 UTC [1] LOG:  database system is ready to accept connections
2026-02-18 20:44:50.618 UTC [70] ERROR:  relation "system.Settings" does not exist at character 23
2026-02-18 20:44:50.618 UTC [70] STATEMENT:  SELECT s."Value"
        FROM system."Settings" AS s
        WHERE s."Context" = $1 AND s."Section" = $2 AND s."Key" = $3
        LIMIT 1
2026-02-18 20:44:50.685 UTC [70] ERROR:  relation "hangfire.schema" does not exist at character 42
2026-02-18 20:44:50.685 UTC [70] STATEMENT:  SELECT true "VersionAlreadyApplied" FROM "hangfire"."schema" WHERE "version" >= $1
2026-02-18 20:44:50.995 UTC [70] ERROR:  relation "system.__EFMigrationsHistory" does not exist at character 45
2026-02-18 20:44:50.995 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
        FROM system."__EFMigrationsHistory"
        ORDER BY "MigrationId"
2026-02-18 20:44:52.471 UTC [70] ERROR:  relation "autosnap.__EFMigrationsHistory" does not exist at character 45
2026-02-18 20:44:52.471 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
        FROM autosnap."__EFMigrationsHistory"
        ORDER BY "MigrationId"
2026-02-18 20:44:52.544 UTC [70] ERROR:  relation "diagnostic.__EFMigrationsHistory" does not exist at character 45
2026-02-18 20:44:52.544 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
        FROM diagnostic."__EFMigrationsHistory"
        ORDER BY "MigrationId"
2026-02-18 20:44:52.585 UTC [70] ERROR:  relation "node_protect.__EFMigrationsHistory" does not exist at character 45
2026-02-18 20:44:52.585 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
        FROM node_protect."__EFMigrationsHistory"
        ORDER BY "MigrationId"
2026-02-18 20:44:52.625 UTC [70] ERROR:  relation "backup_insights.__EFMigrationsHistory" does not exist at character 45
2026-02-18 20:44:52.625 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
        FROM backup_insights."__EFMigrationsHistory"
        ORDER BY "MigrationId"
2026-02-18 20:44:52.663 UTC [70] ERROR:  relation "replication_insights.__EFMigrationsHistory" does not exist at character 45
2026-02-18 20:44:52.663 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
        FROM replication_insights."__EFMigrationsHistory"
        ORDER BY "MigrationId"
2026-02-18 20:44:52.695 UTC [70] ERROR:  relation "dashboard.__EFMigrationsHistory" does not exist at character 45
2026-02-18 20:44:52.695 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
        FROM dashboard."__EFMigrationsHistory"
        ORDER BY "MigrationId"
2026-02-18 20:44:52.745 UTC [70] ERROR:  relation "system_reports.__EFMigrationsHistory" does not exist at character 45
2026-02-18 20:44:52.745 UTC [70] STATEMENT:  SELECT "MigrationId", "ProductVersion"
        FROM system_reports."__EFMigrationsHistory"
        ORDER BY "MigrationId"
2026-02-18 20:49:46.045 UTC [56] LOG:  checkpoint starting: time
2026-02-18 20:50:31.870 UTC [56] LOG:  checkpoint complete: wrote 459 buffers (2.8%); 1 WAL file(s) added, 0 removed, 0 recycled; write=45.779 s, sync=0.025 s, total=45.826 s; sync files=477, longest=0.002 s, average=0.001 s; distance=3037 kB, estimate=3037 kB; lsn=0/1C0F188, redo lsn=0/1C0C718
2026-02-18 20:54:46.971 UTC [56] LOG:  checkpoint starting: time
2026-02-18 20:54:47.581 UTC [56] LOG:  checkpoint complete: wrote 7 buffers (0.0%); 0 WAL file(s) added, 0 removed, 0 recycled; write=0.602 s, sync=0.005 s, total=0.610 s; sync files=7, longest=0.001 s, average=0.001 s; distance=39 kB, estimate=2737 kB; lsn=0/1C16570, redo lsn=0/1C16518
2026-02-18 20:59:46.681 UTC [56] LOG:  checkpoint starting: time
2026-02-18 20:59:47.294 UTC [56] LOG:  checkpoint complete: wrote 7 buffers (0.0%); 0 WAL file(s) added, 0 removed, 0 recycled; write=0.604 s, sync=0.005 s, total=0.613 s; sync files=7, longest=0.001 s, average=0.001 s; distance=40 kB, estimate=2467 kB; lsn=0/1C20600, redo lsn=0/1C205A8

ls-lah.txt

<!-- gh-comment-id:3923148481 --> @tastelessbrain commented on GitHub (Feb 18, 2026): [EDIT: Format and added logs of postgres.] So i spun the setup up at my home machine for testing using the same steps. But without any firewall in front. result is the same. Exept the refused connection i think. The console output you asked for: <img width="666" height="775" alt="Image" src="https://github.com/user-attachments/assets/815e7add-836f-4cfb-80cc-b5f3c200e711" /> I also added the ls -lah output of my dircetorys as a txt file. [ls-lah.txt](https://github.com/user-attachments/files/25400007/ls-lah.txt) <details> <summary>Logs after compose down & up only (no change in behaviour):</summary> ```bash 026-02-18 21:33:40.419 +01:00 [INF] Start installing Hangfire SQL objects... <s:Hangfire.PostgreSql.PostgreSqlStorage> 2026-02-18 21:33:40.452 +01:00 [INF] Hangfire SQL objects installed. <s:Hangfire.PostgreSql.PostgreSqlStorage> 2026-02-18 21:33:40.461 +01:00 [INF] Starting Detection version 8.20.0.0 <s:Detection.Startup> 2026-02-18 21:33:41.229 +01:00 [INF] Release Check Service started <s:Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseCheckHostedService> 2026-02-18 21:33:41.231 +01:00 [WRN] Overriding HTTP_PORTS '8080' and HTTPS_PORTS ''. Binding to values defined by URLS instead 'http://+:8080'. <s:Microsoft.AspNetCore.Hosting.Diagnostics> 2026-02-18 21:33:41.374 +01:00 [INF] Starting Hangfire Server using job storage: 'PostgreSQL Server: Host: postgres, DB: cv4pve-admin-db, Schema: hangfire' <s:Hangfire.BackgroundJobServer> 2026-02-18 21:33:41.375 +01:00 [INF] Using the following options for PostgreSQL job storage: <s:Hangfire.BackgroundJobServer> 2026-02-18 21:33:41.375 +01:00 [INF] Queue poll interval: 00:00:15. <s:Hangfire.BackgroundJobServer> 2026-02-18 21:33:41.375 +01:00 [INF] Invisibility timeout: 00:30:00. <s:Hangfire.BackgroundJobServer> 2026-02-18 21:33:41.375 +01:00 [INF] Use sliding invisibility timeout: False. <s:Hangfire.BackgroundJobServer> 2026-02-18 21:33:41.375 +01:00 [INF] Using the following options for Hangfire Server: Worker count: 20 Listening queues: 'default' Shutdown timeout: 00:00:15 Schedule polling interval: 00:00:15 <s:Hangfire.BackgroundJobServer> 2026-02-18 21:33:41.380 +01:00 [INF] Listening on: http://[::]:8080 <s:Corsinvest.ProxmoxVE.Admin> 2026-02-18 21:33:41.426 +01:00 [INF] Server c8766d44cb56:1:12463c17 successfully announced in 44.4287 ms <s:Hangfire.Server.BackgroundServerProcess> 2026-02-18 21:33:41.427 +01:00 [INF] Server c8766d44cb56:1:12463c17 is starting the registered dispatchers: ServerWatchdog, ServerJobCancellationWatcher, ExpirationManager, CountersAggregator, Worker, DelayedJo bScheduler, RecurringJobScheduler... <s:Hangfire.Server.BackgroundServerProcess> 2026-02-18 21:33:41.432 +01:00 [INF] Server c8766d44cb56:1:12463c17 all the dispatchers started <s:Hangfire.Server.BackgroundServerProcess> 2026-02-18 21:33:44.293 +01:00 [WRN] Failed to determine the https port for redirect. <s:Microsoft.AspNetCore.HttpsPolicy.HttpsRedirectionMiddleware> 2026-02-18 21:33:44.400 +01:00 [ERR] An exception was thrown while deserializing the token. <s:Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery> Microsoft.AspNetCore.Antiforgery.AntiforgeryValidationException: The antiforgery token could not be decrypted. ---> System.Security.Cryptography.CryptographicException: The key {885962a4-8273-4010-abe9-eb2f1e18442a} was not found in the key ring. For more information go to https://aka.ms/aspnet/dataprotectionwarning at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.UnprotectCore(Byte[] protectedData, Boolean allowOperationsOnRevokedKeys, UnprotectStatus& status) at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.Unprotect(Byte[] protectedData) at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken) --- End of inner exception stack trace --- at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken) at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery.GetCookieTokenDoesNotThrow(HttpContext httpContext) ``` </details> <details> <summary>Logs after docker compose down -v && docker compose up -d (also tried the ./adminctl but to no evail):</summary> ```bash sudo docker compose down -v  1 ✘ sudo docker compose up [+] down 7/7 ✔ Container cv4pve-admin-docker-watchtower-1 Removed 0.2s ✔ Container cv4pve-admin-docker-cv4pve-admin-1 Removed 0.5s ✔ Container cv4pve-admin-docker-cv4pve-admin-init-1 Removed 0.0s ✔ Container cv4pve-admin-docker-postgres-1 Removed 0.3s ✔ Network cv4pve-admin-docker_publicnet Removed 0.1s ✔ Network cv4pve-admin-docker_appnet Removed 0.3s ✔ Network cv4pve-admin-docker_default Removed 0.4s WARN[0000] No services to build [+] up 7/7 ✔ Network cv4pve-admin-docker_publicnet Created 0.0s ✔ Network cv4pve-admin-docker_appnet Created 0.0s ✔ Network cv4pve-admin-docker_default Created 0.0s ✔ Container cv4pve-admin-docker-cv4pve-admin-init-1 Created 0.0s ✔ Container cv4pve-admin-docker-postgres-1 Created 0.0s ✔ Container cv4pve-admin-docker-watchtower-1 Created 0.0s ✔ Container cv4pve-admin-docker-cv4pve-admin-1 Created 0.0s Attaching to cv4pve-admin-1, cv4pve-admin-init-1, postgres-1, watchtower-1 Container cv4pve-admin-docker-postgres-1 Waiting Container cv4pve-admin-docker-cv4pve-admin-init-1 Waiting postgres-1 | postgres-1 | PostgreSQL Database directory appears to contain a database; Skipping initialization postgres-1 | postgres-1 | 2026-02-18 20:41:15.329 UTC [1] LOG: starting PostgreSQL 17.8 on x86_64-pc-linux-musl, compiled by gcc (Alpine 15.2.0) 15.2.0, 64-bit postgres-1 | 2026-02-18 20:41:15.329 UTC [1] LOG: listening on IPv4 address "0.0.0.0", port 5432 postgres-1 | 2026-02-18 20:41:15.329 UTC [1] LOG: listening on IPv6 address "::", port 5432 postgres-1 | 2026-02-18 20:41:15.331 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432" postgres-1 | 2026-02-18 20:41:15.334 UTC [30] LOG: database system was shut down at 2026-02-18 20:41:14 UTC postgres-1 | 2026-02-18 20:41:15.339 UTC [1] LOG: database system is ready to accept connections cv4pve-admin-init-1 exited with code 0 Container cv4pve-admin-docker-cv4pve-admin-init-1 Exited watchtower-1 | time="2026-02-18T20:41:16Z" level=info msg="Watchtower 1.14.2 using Docker API v1.51" watchtower-1 | time="2026-02-18T20:41:16Z" level=info msg="Using no notifications" watchtower-1 | time="2026-02-18T20:41:16Z" level=info msg="HTTP API enabled and periodic updates disabled" watchtower-1 | time="2026-02-18T20:41:16Z" level=info msg="The HTTP API is enabled at :8080." watchtower-1 | time="2026-02-18T20:41:16Z" level=info msg="Starting HTTP API server" addr=":8080" Container cv4pve-admin-docker-postgres-1 Healthy cv4pve-admin-1 | Cannot load library libgssapi_krb5.so.2 cv4pve-admin-1 | Error: libgssapi_krb5.so.2: cannot open shared object file: No such file or directory cv4pve-admin-1 | 2026-02-18 21:41:22.236 +01:00 [INF] Start installing Hangfire SQL objects... <s:Hangfire.PostgreSql.PostgreSqlStorage> cv4pve-admin-1 | 2026-02-18 21:41:22.268 +01:00 [INF] Hangfire SQL objects installed. <s:Hangfire.PostgreSql.PostgreSqlStorage> cv4pve-admin-1 | 2026-02-18 21:41:22.277 +01:00 [INF] Starting Detection version 8.20.0.0 <s:Detection.Startup> cv4pve-admin-1 | 2026-02-18 21:41:23.039 +01:00 [INF] Release Check Service started <s:Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseCheckHostedService> cv4pve-admin-1 | 2026-02-18 21:41:23.042 +01:00 [WRN] Overriding HTTP_PORTS '8080' and HTTPS_PORTS ''. Binding to values defined by URLS instead 'http://+:8080'. <s:Microsoft.AspNetCore.Hosting.Diagnostics> cv4pve-admin-1 | 2026-02-18 21:41:23.187 +01:00 [INF] Starting Hangfire Server using job storage: 'PostgreSQL Server: Host: postgres, DB: cv4pve-admin-db, Schema: hangfire' <s:Hangfire.BackgroundJobServer> cv4pve-admin-1 | 2026-02-18 21:41:23.188 +01:00 [INF] Using the following options for PostgreSQL job storage: <s:Hangfire.BackgroundJobServer> cv4pve-admin-1 | 2026-02-18 21:41:23.188 +01:00 [INF] Queue poll interval: 00:00:15. <s:Hangfire.BackgroundJobServer> cv4pve-admin-1 | 2026-02-18 21:41:23.188 +01:00 [INF] Invisibility timeout: 00:30:00. <s:Hangfire.BackgroundJobServer> cv4pve-admin-1 | 2026-02-18 21:41:23.188 +01:00 [INF] Use sliding invisibility timeout: False. <s:Hangfire.BackgroundJobServer> cv4pve-admin-1 | 2026-02-18 21:41:23.188 +01:00 [INF] Using the following options for Hangfire Server: cv4pve-admin-1 | Worker count: 20 cv4pve-admin-1 | Listening queues: 'default' cv4pve-admin-1 | Shutdown timeout: 00:00:15 cv4pve-admin-1 | Schedule polling interval: 00:00:15 <s:Hangfire.BackgroundJobServer> cv4pve-admin-1 | 2026-02-18 21:41:23.194 +01:00 [INF] Listening on: http://[::]:8080 <s:Corsinvest.ProxmoxVE.Admin> cv4pve-admin-1 | 2026-02-18 21:41:23.240 +01:00 [INF] Server 8942aa4696ab:1:1cdae356 successfully announced in 44.8528 ms <s:Hangfire.Server.BackgroundServerProcess> cv4pve-admin-1 | 2026-02-18 21:41:23.242 +01:00 [INF] Server 8942aa4696ab:1:1cdae356 is starting the registered dispatchers: ServerWatchdog, ServerJobCancellationWatcher, ExpirationManager, CountersAggregator, Worker, DelayedJobScheduler, RecurringJobScheduler... <s:Hangfire.Server.BackgroundServerProcess> cv4pve-admin-1 | 2026-02-18 21:41:23.246 +01:00 [INF] Server 8942aa4696ab:1:1cdae356 all the dispatchers started <s:Hangfire.Server.BackgroundServerProcess> cv4pve-admin-1 | 2026-02-18 21:41:26.291 +01:00 [WRN] Failed to determine the https port for redirect. <s:Microsoft.AspNetCore.HttpsPolicy.HttpsRedirectionMiddleware> ``` </details> <details> <summary>Logs after completly deleting the folders and starting new:</summary> ```bash curl -fsSL https://raw.githubusercontent.com/Corsinvest/cv4pve-admin/main/install.sh | bash  ✔ =================================================================== CV4PVE Admin - Docker Installation =================================================================== Welcome! This script will download and configure CV4PVE Admin. Choose edition: 1) Community Edition (CE) 2) Enterprise Edition (EE) Select [1-2] (default: 1): 1 Selected: Community Edition Fetching available tags from Docker Hub... Recent tags: latest 2.0.0-rc2 2.0.0-rc1 1.3.1 All tags: https://hub.docker.com/r/corsinvest/cv4pve-admin/tags Docker image tag (default: latest): 2.0.0-rc2 Using tag: 2.0.0-rc2 PostgreSQL password (press ENTER for default): Using default password 'cv4pve-admin' (CHANGE IT LATER!) Creating directory: cv4pve-admin-docker Downloading files... - .env - docker-compose-ce.yaml - docker-compose-ee.yaml - adminctl - README.md Configured: docker-compose-ce.yaml -> docker-compose.yaml Configuration updated in .env =================================================================== Installation completed! =================================================================== Next steps: 1. cd cv4pve-admin-docker 2. docker compose up -d Access: http://localhost:8080 Default credentials: admin@local / Password123! Tip: Use './adminctl' for easy Docker management    ~/docker1  cd cv4pve-admin-docker  ✔  16s     ~/docker1/cv4pve-admin-docker  sudo docker compose up  ✔ WARN[0000] No services to build [+] up 7/7 ✔ Network cv4pve-admin-docker_publicnet Created 0.0s ✔ Network cv4pve-admin-docker_default Created 0.0s ✔ Network cv4pve-admin-docker_appnet Created 0.0s ✔ Container cv4pve-admin-docker-cv4pve-admin-init-1 Created 0.0s ✔ Container cv4pve-admin-docker-watchtower-1 Created 0.0s ✔ Container cv4pve-admin-docker-postgres-1 Created 0.0s ✔ Container cv4pve-admin-docker-cv4pve-admin-1 Created 0.0s Attaching to cv4pve-admin-1, cv4pve-admin-init-1, postgres-1, watchtower-1 Container cv4pve-admin-docker-postgres-1 Waiting Container cv4pve-admin-docker-cv4pve-admin-init-1 Waiting postgres-1 | The files belonging to this database system will be owned by user "postgres". postgres-1 | This user must also own the server process. postgres-1 | postgres-1 | The database cluster will be initialized with locale "en_US.utf8". postgres-1 | The default database encoding has accordingly been set to "UTF8". postgres-1 | The default text search configuration will be set to "english". postgres-1 | postgres-1 | Data page checksums are disabled. postgres-1 | postgres-1 | fixing permissions on existing directory /var/lib/postgresql/data ... ok postgres-1 | creating subdirectories ... ok postgres-1 | selecting dynamic shared memory implementation ... posix postgres-1 | selecting default "max_connections" ... 100 postgres-1 | selecting default "shared_buffers" ... 128MB postgres-1 | selecting default time zone ... UTC postgres-1 | creating configuration files ... ok cv4pve-admin-init-1 exited with code 0 postgres-1 | running bootstrap script ... ok postgres-1 | sh: locale: not found postgres-1 | 2026-02-18 20:44:44.058 UTC [36] WARNING: no usable system locales were found Container cv4pve-admin-docker-cv4pve-admin-init-1 Exited postgres-1 | performing post-bootstrap initialization ... ok watchtower-1 | time="2026-02-18T20:44:44Z" level=info msg="Watchtower 1.14.2 using Docker API v1.51" watchtower-1 | time="2026-02-18T20:44:44Z" level=info msg="Using no notifications" watchtower-1 | time="2026-02-18T20:44:44Z" level=info msg="HTTP API enabled and periodic updates disabled" watchtower-1 | time="2026-02-18T20:44:44Z" level=info msg="The HTTP API is enabled at :8080." watchtower-1 | time="2026-02-18T20:44:44Z" level=info msg="Starting HTTP API server" addr=":8080" postgres-1 | initdb: warning: enabling "trust" authentication for local connections postgres-1 | initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb. postgres-1 | syncing data to disk ... ok postgres-1 | postgres-1 | postgres-1 | Success. You can now start the database server using: postgres-1 | postgres-1 | pg_ctl -D /var/lib/postgresql/data -l logfile start postgres-1 | postgres-1 | waiting for server to start....2026-02-18 20:44:45.379 UTC [42] LOG: starting PostgreSQL 17.8 on x86_64-pc-linux-musl, compiled by gcc (Alpine 15.2.0) 15.2.0, 64-bit postgres-1 | 2026-02-18 20:44:45.380 UTC [42] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432" postgres-1 | 2026-02-18 20:44:45.384 UTC [45] LOG: database system was shut down at 2026-02-18 20:44:44 UTC postgres-1 | 2026-02-18 20:44:45.388 UTC [42] LOG: database system is ready to accept connections postgres-1 | done postgres-1 | server started postgres-1 | CREATE DATABASE postgres-1 | postgres-1 | postgres-1 | /usr/local/bin/docker-entrypoint.sh: ignoring /docker-entrypoint-initdb.d/* postgres-1 | postgres-1 | waiting for server to shut down....2026-02-18 20:44:45.519 UTC [42] LOG: received fast shutdown request postgres-1 | 2026-02-18 20:44:45.520 UTC [42] LOG: aborting any active transactions postgres-1 | 2026-02-18 20:44:45.522 UTC [42] LOG: background worker "logical replication launcher" (PID 48) exited with exit code 1 postgres-1 | 2026-02-18 20:44:45.522 UTC [43] LOG: shutting down postgres-1 | 2026-02-18 20:44:45.524 UTC [43] LOG: checkpoint starting: shutdown immediate postgres-1 | 2026-02-18 20:44:45.833 UTC [43] LOG: checkpoint complete: wrote 925 buffers (5.6%); 0 WAL file(s) added, 0 removed, 0 recycled; write=0.028 s, sync=0.275 s, total=0.311 s; sync files=301, longest=0.002 s, average=0.001 s; distance=4255 kB, estimate=4255 kB; lsn=0/19150E0, redo lsn=0/19150E0 postgres-1 | 2026-02-18 20:44:45.840 UTC [42] LOG: database system is shut down postgres-1 | done postgres-1 | server stopped postgres-1 | postgres-1 | PostgreSQL init process complete; ready for start up. postgres-1 | postgres-1 | 2026-02-18 20:44:45.939 UTC [1] LOG: starting PostgreSQL 17.8 on x86_64-pc-linux-musl, compiled by gcc (Alpine 15.2.0) 15.2.0, 64-bit postgres-1 | 2026-02-18 20:44:45.939 UTC [1] LOG: listening on IPv4 address "0.0.0.0", port 5432 postgres-1 | 2026-02-18 20:44:45.939 UTC [1] LOG: listening on IPv6 address "::", port 5432 postgres-1 | 2026-02-18 20:44:45.941 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432" postgres-1 | 2026-02-18 20:44:45.945 UTC [58] LOG: database system was shut down at 2026-02-18 20:44:45 UTC postgres-1 | 2026-02-18 20:44:45.949 UTC [1] LOG: database system is ready to accept connections Container cv4pve-admin-docker-postgres-1 Healthy cv4pve-admin-1 | Cannot load library libgssapi_krb5.so.2 cv4pve-admin-1 | Error: libgssapi_krb5.so.2: cannot open shared object file: No such file or directory postgres-1 | 2026-02-18 20:44:50.618 UTC [70] ERROR: relation "system.Settings" does not exist at character 23 postgres-1 | 2026-02-18 20:44:50.618 UTC [70] STATEMENT: SELECT s."Value" postgres-1 | FROM system."Settings" AS s postgres-1 | WHERE s."Context" = $1 AND s."Section" = $2 AND s."Key" = $3 postgres-1 | LIMIT 1 cv4pve-admin-1 | 2026-02-18 21:44:50.630 +01:00 [ERR] Failed executing DbCommand (33ms) [Parameters=[@context='?', @section='?', @key='?'], CommandType='Text', CommandTimeout='30'] cv4pve-admin-1 | SELECT s."Value" cv4pve-admin-1 | FROM system."Settings" AS s cv4pve-admin-1 | WHERE s."Context" = @context AND s."Section" = @section AND s."Key" = @key cv4pve-admin-1 | LIMIT 1 <s:Microsoft.EntityFrameworkCore.Database.Command> cv4pve-admin-1 | 2026-02-18 21:44:50.666 +01:00 [ERR] An exception occurred while iterating over the results of a query for context type 'Corsinvest.ProxmoxVE.Admin.Module.System.Persistence.ModuleDbContext'. cv4pve-admin-1 | Npgsql.PostgresException (0x80004005): 42P01: relation "system.Settings" does not exist cv4pve-admin-1 | cv4pve-admin-1 | POSITION: 23 cv4pve-admin-1 | at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage) cv4pve-admin-1 | at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token) cv4pve-admin-1 | at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken) cv4pve-admin-1 | at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken) cv4pve-admin-1 | at Npgsql.NpgsqlDataReader.NextResult() cv4pve-admin-1 | at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken) cv4pve-admin-1 | at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken) cv4pve-admin-1 | at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior) cv4pve-admin-1 | at Npgsql.NpgsqlCommand.ExecuteDbDataReader(CommandBehavior behavior) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.InitializeReader(Enumerator enumerator) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.<>c.<MoveNext>b__21_0(DbContext _, Enumerator enumerator) cv4pve-admin-1 | at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext() cv4pve-admin-1 | Exception data: cv4pve-admin-1 | Severity: ERROR cv4pve-admin-1 | SqlState: 42P01 cv4pve-admin-1 | MessageText: relation "system.Settings" does not exist cv4pve-admin-1 | Position: 23 cv4pve-admin-1 | File: parse_relation.c cv4pve-admin-1 | Line: 1428 cv4pve-admin-1 | Routine: parserOpenTable <s:Microsoft.EntityFrameworkCore.Query> cv4pve-admin-1 | Npgsql.PostgresException (0x80004005): 42P01: relation "system.Settings" does not exist cv4pve-admin-1 | cv4pve-admin-1 | POSITION: 23 cv4pve-admin-1 | at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage) cv4pve-admin-1 | at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token) cv4pve-admin-1 | at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken) cv4pve-admin-1 | at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken) cv4pve-admin-1 | at Npgsql.NpgsqlDataReader.NextResult() cv4pve-admin-1 | at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken) cv4pve-admin-1 | at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken) cv4pve-admin-1 | at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior) cv4pve-admin-1 | at Npgsql.NpgsqlCommand.ExecuteDbDataReader(CommandBehavior behavior) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.InitializeReader(Enumerator enumerator) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.<>c.<MoveNext>b__21_0(DbContext _, Enumerator enumerator) cv4pve-admin-1 | at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext() cv4pve-admin-1 | Exception data: cv4pve-admin-1 | Severity: ERROR postgres-1 | 2026-02-18 20:44:50.685 UTC [70] ERROR: relation "hangfire.schema" does not exist at character 42 cv4pve-admin-1 | SqlState: 42P01 postgres-1 | 2026-02-18 20:44:50.685 UTC [70] STATEMENT: SELECT true "VersionAlreadyApplied" FROM "hangfire"."schema" WHERE "version" >= $1 cv4pve-admin-1 | MessageText: relation "system.Settings" does not exist cv4pve-admin-1 | Position: 23 cv4pve-admin-1 | File: parse_relation.c cv4pve-admin-1 | Line: 1428 cv4pve-admin-1 | Routine: parserOpenTable cv4pve-admin-1 | 2026-02-18 21:44:50.670 +01:00 [ERR] Database error while retrieving settings for section 'Corsinvest.ProxmoxVE.Admin.Core.Configuration.AppSettings', key 'Corsinvest.ProxmoxVE.Admin.Core.Configuration.AppSettings', context 'System' <s:Corsinvest.ProxmoxVE.Admin.Module.System.Settings.Services.SettingsService> cv4pve-admin-1 | Npgsql.PostgresException (0x80004005): 42P01: relation "system.Settings" does not exist cv4pve-admin-1 | cv4pve-admin-1 | POSITION: 23 cv4pve-admin-1 | at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage) cv4pve-admin-1 | at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token) cv4pve-admin-1 | at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken) cv4pve-admin-1 | at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken) cv4pve-admin-1 | at Npgsql.NpgsqlDataReader.NextResult() cv4pve-admin-1 | at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken) cv4pve-admin-1 | at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken) cv4pve-admin-1 | at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior) cv4pve-admin-1 | at Npgsql.NpgsqlCommand.ExecuteDbDataReader(CommandBehavior behavior) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.InitializeReader(Enumerator enumerator) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.<>c.<MoveNext>b__21_0(DbContext _, Enumerator enumerator) cv4pve-admin-1 | at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext() cv4pve-admin-1 | at System.Linq.Enumerable.TryGetSingle[TSource](IEnumerable`1 source, Boolean& found) cv4pve-admin-1 | at lambda_method43(Closure, QueryContext) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.ExecuteCore[TResult](Expression query, Boolean async, CancellationToken cancellationToken) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.Execute[TResult](Expression query) cv4pve-admin-1 | at Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryProvider.Execute[TResult](Expression expression) cv4pve-admin-1 | at Corsinvest.ProxmoxVE.Admin.Module.System.Settings.Services.SettingsService.<>c__DisplayClass13_0.<Get>b__0(CancellationToken _) in /home/runner/work/cv4pve-admin/cv4pve-admin/src/Corsinvest.ProxmoxVE.Admin.Module.System/Settings/Services/SettingsService.cs:line 44 cv4pve-admin-1 | Exception data: cv4pve-admin-1 | Severity: ERROR cv4pve-admin-1 | SqlState: 42P01 cv4pve-admin-1 | MessageText: relation "system.Settings" does not exist cv4pve-admin-1 | Position: 23 cv4pve-admin-1 | File: parse_relation.c cv4pve-admin-1 | Line: 1428 cv4pve-admin-1 | Routine: parserOpenTable cv4pve-admin-1 | 2026-02-18 21:44:50.683 +01:00 [INF] Start installing Hangfire SQL objects... <s:Hangfire.PostgreSql.PostgreSqlStorage> cv4pve-admin-1 | 2026-02-18 21:44:50.886 +01:00 [INF] Hangfire SQL objects installed. <s:Hangfire.PostgreSql.PostgreSqlStorage> cv4pve-admin-1 | 2026-02-18 21:44:50.893 +01:00 [INF] Starting Detection version 8.20.0.0 <s:Detection.Startup> postgres-1 | 2026-02-18 20:44:50.995 UTC [70] ERROR: relation "system.__EFMigrationsHistory" does not exist at character 45 postgres-1 | 2026-02-18 20:44:50.995 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" postgres-1 | FROM system."__EFMigrationsHistory" postgres-1 | ORDER BY "MigrationId" cv4pve-admin-1 | 2026-02-18 21:44:50.997 +01:00 [ERR] Failed executing DbCommand (3ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] cv4pve-admin-1 | SELECT "MigrationId", "ProductVersion" cv4pve-admin-1 | FROM system."__EFMigrationsHistory" cv4pve-admin-1 | ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> postgres-1 | 2026-02-18 20:44:52.471 UTC [70] ERROR: relation "autosnap.__EFMigrationsHistory" does not exist at character 45 postgres-1 | 2026-02-18 20:44:52.471 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" postgres-1 | FROM autosnap."__EFMigrationsHistory" postgres-1 | ORDER BY "MigrationId" cv4pve-admin-1 | 2026-02-18 21:44:52.471 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] cv4pve-admin-1 | SELECT "MigrationId", "ProductVersion" cv4pve-admin-1 | FROM autosnap."__EFMigrationsHistory" cv4pve-admin-1 | ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> postgres-1 | 2026-02-18 20:44:52.544 UTC [70] ERROR: relation "diagnostic.__EFMigrationsHistory" does not exist at character 45 postgres-1 | 2026-02-18 20:44:52.544 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" postgres-1 | FROM diagnostic."__EFMigrationsHistory" postgres-1 | ORDER BY "MigrationId" cv4pve-admin-1 | 2026-02-18 21:44:52.544 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] cv4pve-admin-1 | SELECT "MigrationId", "ProductVersion" cv4pve-admin-1 | FROM diagnostic."__EFMigrationsHistory" cv4pve-admin-1 | ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> postgres-1 | 2026-02-18 20:44:52.585 UTC [70] ERROR: relation "node_protect.__EFMigrationsHistory" does not exist at character 45 postgres-1 | 2026-02-18 20:44:52.585 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" postgres-1 | FROM node_protect."__EFMigrationsHistory" postgres-1 | ORDER BY "MigrationId" cv4pve-admin-1 | 2026-02-18 21:44:52.585 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] cv4pve-admin-1 | SELECT "MigrationId", "ProductVersion" cv4pve-admin-1 | FROM node_protect."__EFMigrationsHistory" cv4pve-admin-1 | ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> postgres-1 | 2026-02-18 20:44:52.625 UTC [70] ERROR: relation "backup_insights.__EFMigrationsHistory" does not exist at character 45 postgres-1 | 2026-02-18 20:44:52.625 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" postgres-1 | FROM backup_insights."__EFMigrationsHistory" postgres-1 | ORDER BY "MigrationId" cv4pve-admin-1 | 2026-02-18 21:44:52.626 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] cv4pve-admin-1 | SELECT "MigrationId", "ProductVersion" cv4pve-admin-1 | FROM backup_insights."__EFMigrationsHistory" cv4pve-admin-1 | ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> postgres-1 | 2026-02-18 20:44:52.663 UTC [70] ERROR: relation "replication_insights.__EFMigrationsHistory" does not exist at character 45 postgres-1 | 2026-02-18 20:44:52.663 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" postgres-1 | FROM replication_insights."__EFMigrationsHistory" postgres-1 | ORDER BY "MigrationId" cv4pve-admin-1 | 2026-02-18 21:44:52.663 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] cv4pve-admin-1 | SELECT "MigrationId", "ProductVersion" cv4pve-admin-1 | FROM replication_insights."__EFMigrationsHistory" cv4pve-admin-1 | ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> postgres-1 | 2026-02-18 20:44:52.695 UTC [70] ERROR: relation "dashboard.__EFMigrationsHistory" does not exist at character 45 postgres-1 | 2026-02-18 20:44:52.695 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" postgres-1 | FROM dashboard."__EFMigrationsHistory" postgres-1 | ORDER BY "MigrationId" cv4pve-admin-1 | 2026-02-18 21:44:52.695 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] cv4pve-admin-1 | SELECT "MigrationId", "ProductVersion" cv4pve-admin-1 | FROM dashboard."__EFMigrationsHistory" cv4pve-admin-1 | ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> postgres-1 | 2026-02-18 20:44:52.745 UTC [70] ERROR: relation "system_reports.__EFMigrationsHistory" does not exist at character 45 postgres-1 | 2026-02-18 20:44:52.745 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" postgres-1 | FROM system_reports."__EFMigrationsHistory" postgres-1 | ORDER BY "MigrationId" cv4pve-admin-1 | 2026-02-18 21:44:52.746 +01:00 [ERR] Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] cv4pve-admin-1 | SELECT "MigrationId", "ProductVersion" cv4pve-admin-1 | FROM system_reports."__EFMigrationsHistory" cv4pve-admin-1 | ORDER BY "MigrationId"; <s:Microsoft.EntityFrameworkCore.Database.Command> cv4pve-admin-1 | 2026-02-18 21:44:52.805 +01:00 [WRN] No XML encryptor configured. Key {59480bc6-eebd-432a-b4cc-d01b75d44c37} may be persisted to storage in unencrypted form. <s:Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager> cv4pve-admin-1 | 2026-02-18 21:44:52.813 +01:00 [INF] Release Check Service started <s:Corsinvest.ProxmoxVE.Admin.Module.System.ReleaseChecker.ReleaseCheckHostedService> cv4pve-admin-1 | 2026-02-18 21:44:52.813 +01:00 [WRN] Overriding HTTP_PORTS '8080' and HTTPS_PORTS ''. Binding to values defined by URLS instead 'http://+:8080'. <s:Microsoft.AspNetCore.Hosting.Diagnostics> cv4pve-admin-1 | 2026-02-18 21:44:52.971 +01:00 [INF] Starting Hangfire Server using job storage: 'PostgreSQL Server: Host: postgres, DB: cv4pve-admin-db, Schema: hangfire' <s:Hangfire.BackgroundJobServer> cv4pve-admin-1 | 2026-02-18 21:44:52.972 +01:00 [INF] Using the following options for PostgreSQL job storage: <s:Hangfire.BackgroundJobServer> cv4pve-admin-1 | 2026-02-18 21:44:52.972 +01:00 [INF] Queue poll interval: 00:00:15. <s:Hangfire.BackgroundJobServer> cv4pve-admin-1 | 2026-02-18 21:44:52.972 +01:00 [INF] Invisibility timeout: 00:30:00. <s:Hangfire.BackgroundJobServer> cv4pve-admin-1 | 2026-02-18 21:44:52.972 +01:00 [INF] Use sliding invisibility timeout: False. <s:Hangfire.BackgroundJobServer> cv4pve-admin-1 | 2026-02-18 21:44:52.972 +01:00 [INF] Using the following options for Hangfire Server: cv4pve-admin-1 | Worker count: 20 cv4pve-admin-1 | Listening queues: 'default' cv4pve-admin-1 | Shutdown timeout: 00:00:15 cv4pve-admin-1 | Schedule polling interval: 00:00:15 <s:Hangfire.BackgroundJobServer> cv4pve-admin-1 | 2026-02-18 21:44:52.978 +01:00 [INF] Listening on: http://[::]:8080 <s:Corsinvest.ProxmoxVE.Admin> cv4pve-admin-1 | 2026-02-18 21:44:53.024 +01:00 [INF] Server 8c7147c925ea:1:295fc776 successfully announced in 45.06 ms <s:Hangfire.Server.BackgroundServerProcess> cv4pve-admin-1 | 2026-02-18 21:44:53.026 +01:00 [INF] Server 8c7147c925ea:1:295fc776 is starting the registered dispatchers: ServerWatchdog, ServerJobCancellationWatcher, ExpirationManager, CountersAggregator, Worker, DelayedJobScheduler, RecurringJobScheduler... <s:Hangfire.Server.BackgroundServerProcess> cv4pve-admin-1 | 2026-02-18 21:44:53.030 +01:00 [INF] Server 8c7147c925ea:1:295fc776 all the dispatchers started <s:Hangfire.Server.BackgroundServerProcess> cv4pve-admin-1 | 2026-02-18 21:45:00.712 +01:00 [WRN] Failed to determine the https port for redirect. <s:Microsoft.AspNetCore.HttpsPolicy.HttpsRedirectionMiddleware> cv4pve-admin-1 | 2026-02-18 21:45:00.773 +01:00 [ERR] An exception was thrown while deserializing the token. <s:Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery> cv4pve-admin-1 | Microsoft.AspNetCore.Antiforgery.AntiforgeryValidationException: The antiforgery token could not be decrypted. cv4pve-admin-1 | ---> System.Security.Cryptography.CryptographicException: The key {425ab4c3-1577-4776-8968-b1d7933c431f} was not found in the key ring. For more information go to https://aka.ms/aspnet/dataprotectionwarning cv4pve-admin-1 | at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.UnprotectCore(Byte[] protectedData, Boolean allowOperationsOnRevokedKeys, UnprotectStatus& status) cv4pve-admin-1 | at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.Unprotect(Byte[] protectedData) cv4pve-admin-1 | at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken) cv4pve-admin-1 | --- End of inner exception stack trace --- cv4pve-admin-1 | at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken) cv4pve-admin-1 | at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery.GetCookieTokenDoesNotThrow(HttpContext httpContext) ``` </details> <details> <summary>Postgres Logs: </summary> ```bash The files belonging to this database system will be owned by user "postgres". This user must also own the server process. The database cluster will be initialized with locale "en_US.utf8". The default database encoding has accordingly been set to "UTF8". The default text search configuration will be set to "english". Data page checksums are disabled. fixing permissions on existing directory /var/lib/postgresql/data ... ok creating subdirectories ... ok selecting dynamic shared memory implementation ... posix selecting default "max_connections" ... 100 selecting default "shared_buffers" ... 128MB selecting default time zone ... UTC creating configuration files ... ok running bootstrap script ... ok sh: locale: not found 2026-02-18 20:44:44.058 UTC [36] WARNING: no usable system locales were found performing post-bootstrap initialization ... ok initdb: warning: enabling "trust" authentication for local connections initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb. syncing data to disk ... ok Success. You can now start the database server using: pg_ctl -D /var/lib/postgresql/data -l logfile start waiting for server to start....2026-02-18 20:44:45.379 UTC [42] LOG: starting PostgreSQL 17.8 on x86_64-pc-linux-musl, compiled by gcc (Alpine 15.2.0) 15.2.0, 64-bit 2026-02-18 20:44:45.380 UTC [42] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432" 2026-02-18 20:44:45.384 UTC [45] LOG: database system was shut down at 2026-02-18 20:44:44 UTC 2026-02-18 20:44:45.388 UTC [42] LOG: database system is ready to accept connections done server started CREATE DATABASE /usr/local/bin/docker-entrypoint.sh: ignoring /docker-entrypoint-initdb.d/* waiting for server to shut down....2026-02-18 20:44:45.519 UTC [42] LOG: received fast shutdown request 2026-02-18 20:44:45.520 UTC [42] LOG: aborting any active transactions 2026-02-18 20:44:45.522 UTC [42] LOG: background worker "logical replication launcher" (PID 48) exited with exit code 1 2026-02-18 20:44:45.522 UTC [43] LOG: shutting down 2026-02-18 20:44:45.524 UTC [43] LOG: checkpoint starting: shutdown immediate 2026-02-18 20:44:45.833 UTC [43] LOG: checkpoint complete: wrote 925 buffers (5.6%); 0 WAL file(s) added, 0 removed, 0 recycled; write=0.028 s, sync=0.275 s, total=0.311 s; sync files=301, longest=0.002 s, average=0.001 s; distance=4255 kB, estimate=4255 kB; lsn=0/19150E0, redo lsn=0/19150E0 2026-02-18 20:44:45.840 UTC [42] LOG: database system is shut down done server stopped PostgreSQL init process complete; ready for start up. 2026-02-18 20:44:45.939 UTC [1] LOG: starting PostgreSQL 17.8 on x86_64-pc-linux-musl, compiled by gcc (Alpine 15.2.0) 15.2.0, 64-bit 2026-02-18 20:44:45.939 UTC [1] LOG: listening on IPv4 address "0.0.0.0", port 5432 2026-02-18 20:44:45.939 UTC [1] LOG: listening on IPv6 address "::", port 5432 2026-02-18 20:44:45.941 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432" 2026-02-18 20:44:45.945 UTC [58] LOG: database system was shut down at 2026-02-18 20:44:45 UTC 2026-02-18 20:44:45.949 UTC [1] LOG: database system is ready to accept connections 2026-02-18 20:44:50.618 UTC [70] ERROR: relation "system.Settings" does not exist at character 23 2026-02-18 20:44:50.618 UTC [70] STATEMENT: SELECT s."Value" FROM system."Settings" AS s WHERE s."Context" = $1 AND s."Section" = $2 AND s."Key" = $3 LIMIT 1 2026-02-18 20:44:50.685 UTC [70] ERROR: relation "hangfire.schema" does not exist at character 42 2026-02-18 20:44:50.685 UTC [70] STATEMENT: SELECT true "VersionAlreadyApplied" FROM "hangfire"."schema" WHERE "version" >= $1 2026-02-18 20:44:50.995 UTC [70] ERROR: relation "system.__EFMigrationsHistory" does not exist at character 45 2026-02-18 20:44:50.995 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" FROM system."__EFMigrationsHistory" ORDER BY "MigrationId" 2026-02-18 20:44:52.471 UTC [70] ERROR: relation "autosnap.__EFMigrationsHistory" does not exist at character 45 2026-02-18 20:44:52.471 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" FROM autosnap."__EFMigrationsHistory" ORDER BY "MigrationId" 2026-02-18 20:44:52.544 UTC [70] ERROR: relation "diagnostic.__EFMigrationsHistory" does not exist at character 45 2026-02-18 20:44:52.544 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" FROM diagnostic."__EFMigrationsHistory" ORDER BY "MigrationId" 2026-02-18 20:44:52.585 UTC [70] ERROR: relation "node_protect.__EFMigrationsHistory" does not exist at character 45 2026-02-18 20:44:52.585 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" FROM node_protect."__EFMigrationsHistory" ORDER BY "MigrationId" 2026-02-18 20:44:52.625 UTC [70] ERROR: relation "backup_insights.__EFMigrationsHistory" does not exist at character 45 2026-02-18 20:44:52.625 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" FROM backup_insights."__EFMigrationsHistory" ORDER BY "MigrationId" 2026-02-18 20:44:52.663 UTC [70] ERROR: relation "replication_insights.__EFMigrationsHistory" does not exist at character 45 2026-02-18 20:44:52.663 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" FROM replication_insights."__EFMigrationsHistory" ORDER BY "MigrationId" 2026-02-18 20:44:52.695 UTC [70] ERROR: relation "dashboard.__EFMigrationsHistory" does not exist at character 45 2026-02-18 20:44:52.695 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" FROM dashboard."__EFMigrationsHistory" ORDER BY "MigrationId" 2026-02-18 20:44:52.745 UTC [70] ERROR: relation "system_reports.__EFMigrationsHistory" does not exist at character 45 2026-02-18 20:44:52.745 UTC [70] STATEMENT: SELECT "MigrationId", "ProductVersion" FROM system_reports."__EFMigrationsHistory" ORDER BY "MigrationId" 2026-02-18 20:49:46.045 UTC [56] LOG: checkpoint starting: time 2026-02-18 20:50:31.870 UTC [56] LOG: checkpoint complete: wrote 459 buffers (2.8%); 1 WAL file(s) added, 0 removed, 0 recycled; write=45.779 s, sync=0.025 s, total=45.826 s; sync files=477, longest=0.002 s, average=0.001 s; distance=3037 kB, estimate=3037 kB; lsn=0/1C0F188, redo lsn=0/1C0C718 2026-02-18 20:54:46.971 UTC [56] LOG: checkpoint starting: time 2026-02-18 20:54:47.581 UTC [56] LOG: checkpoint complete: wrote 7 buffers (0.0%); 0 WAL file(s) added, 0 removed, 0 recycled; write=0.602 s, sync=0.005 s, total=0.610 s; sync files=7, longest=0.001 s, average=0.001 s; distance=39 kB, estimate=2737 kB; lsn=0/1C16570, redo lsn=0/1C16518 2026-02-18 20:59:46.681 UTC [56] LOG: checkpoint starting: time 2026-02-18 20:59:47.294 UTC [56] LOG: checkpoint complete: wrote 7 buffers (0.0%); 0 WAL file(s) added, 0 removed, 0 recycled; write=0.604 s, sync=0.005 s, total=0.613 s; sync files=7, longest=0.001 s, average=0.001 s; distance=40 kB, estimate=2467 kB; lsn=0/1C20600, redo lsn=0/1C205A8 ``` </details> [ls-lah.txt](https://github.com/user-attachments/files/25400007/ls-lah.txt)
Author
Owner

@tastelessbrain commented on GitHub (Feb 18, 2026):

Im so sorry for te format i will fix it as fast as possible
should be better now. Good night and thx in advance! :)

<!-- gh-comment-id:3923151669 --> @tastelessbrain commented on GitHub (Feb 18, 2026): Im so sorry for te format i will fix it as fast as possible should be better now. Good night and thx in advance! :)
Author
Owner

@franklupo commented on GitHub (Feb 19, 2026):

Thanks for the screenshot! The console warning about the font is not the cause.

To better diagnose the broken layout, could you open the browser DevTools (F12) → Network tab, reload the page, and share a screenshot of the Network tab? We want to see if any CSS or JS files are failing to load (red rows with 404 or other errors).

Thanks!

<!-- gh-comment-id:3925177769 --> @franklupo commented on GitHub (Feb 19, 2026): Thanks for the screenshot! The console warning about the font is not the cause. To better diagnose the broken layout, could you open the browser **DevTools** (F12) → **Network** tab, reload the page, and share a **screenshot** of the Network tab? We want to see if any CSS or JS files are failing to load (red rows with 404 or other errors). Thanks!
Author
Owner

@tastelessbrain commented on GitHub (Feb 19, 2026):

Image
<!-- gh-comment-id:3925716674 --> @tastelessbrain commented on GitHub (Feb 19, 2026): <img width="2568" height="735" alt="Image" src="https://github.com/user-attachments/assets/7b3c06a9-1a95-4a30-9ec6-409171bb6f60" />
Author
Owner

@franklupo commented on GitHub (Feb 19, 2026):

Hi, thanks for reporting this!

We found the issue and we are working on the fix. It will be included in the next release.

<!-- gh-comment-id:3925969460 --> @franklupo commented on GitHub (Feb 19, 2026): Hi, thanks for reporting this! We found the issue and we are working on the fix. It will be included in the next release.
Author
Owner

@tastelessbrain commented on GitHub (Feb 19, 2026):

Perfect, thank you. I was just thinking the Layer 8 was particularly strong in me. :D

<!-- gh-comment-id:3926162437 --> @tastelessbrain commented on GitHub (Feb 19, 2026): Perfect, thank you. I was just thinking the Layer 8 was particularly strong in me. :D
Author
Owner

@franklupo commented on GitHub (Feb 19, 2026):

Fixed in v2.0.0-rc5. Please test and let us know if everything works correctly. Thank you!

<!-- gh-comment-id:3928933908 --> @franklupo commented on GitHub (Feb 19, 2026): Fixed in v2.0.0-rc5. Please test and let us know if everything works correctly. Thank you!
Author
Owner

@franklupo commented on GitHub (Feb 20, 2026):

news?

<!-- gh-comment-id:3935542724 --> @franklupo commented on GitHub (Feb 20, 2026): news?
Author
Owner

@tastelessbrain commented on GitHub (Feb 20, 2026):

Love you guys. Great Work. Seems to work at least in my home lab. Will Test Monday at work.
Will report back, but i think we can close this monday.
Last unrelated quick question:
Do i still need to allow SSH User & PW authentication or is API Key and or SSH Key enough in version 2.0.0?

Image

Thanks for your work and wonderful Support. <3

<!-- gh-comment-id:3936675297 --> @tastelessbrain commented on GitHub (Feb 20, 2026): Love you guys. Great Work. Seems to work at least in my home lab. Will Test Monday at work. Will report back, but i think we can close this monday. Last unrelated quick question: Do i still need to allow SSH User & PW authentication or is API Key and or SSH Key enough in version 2.0.0? <img width="2560" height="1398" alt="Image" src="https://github.com/user-attachments/assets/b615885f-fd36-4c11-af44-15ce38f7cfff" /> Thanks for your work and wonderful Support. <3
Author
Owner

@tastelessbrain commented on GitHub (Feb 23, 2026):

Also works at work now. Thank you! can be closed.

<!-- gh-comment-id:3942801863 --> @tastelessbrain commented on GitHub (Feb 23, 2026): Also works at work now. Thank you! can be closed.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/cv4pve-admin#61
No description provided.