Pomoc Brak możliwości zapisu do /config przez docker

gekko44

Passing Basics
Beginner
12 Marzec 2016
18
2
3
44
QNAP
TS-x53A
Ethernet
1 GbE
Hej,
Jestem w trakcie budowy aplikacji *arr na dockerze. Utknąłem po regeneracji Sonarra i Radarra na niemożności zapisu do /config.
--name=Sonarr \
-e PUID=1000 \
-e PGID=100 \
-e TZ=Europe/Warsaw \
-p 8989:8989 \
-v /Container/Sonarr:/config \
-v /share/ZFS20_DATA/Video:/data \
--restart unless-stopped \
lscr.io/linuxserver/sonarr:latest


oraz log
[v4.0.12.2823] System.IO.IOException: No space left on device : '/config/asp/a2791bc7-b010-4010-8f33-ed20f88bf531.tmp'
at System.IO.RandomAccess.WriteAtOffset(SafeFileHandle handle, ReadOnlySpan`1 buffer, Int64 fileOffset)
at System.IO.Strategies.OSFileStreamStrategy.Write(ReadOnlySpan`1 buffer)
at System.IO.Strategies.BufferedFileStreamStrategy.Flush(Boolean flushToDisk)
at System.IO.Strategies.BufferedFileStreamStrategy.Dispose(Boolean disposing)
at System.IO.Stream.Dispose()
at Microsoft.AspNetCore.DataProtection.Repositories.FileSystemXmlRepository.StoreElementCore(XElement element, String filename)
at Microsoft.AspNetCore.DataProtection.Repositories.FileSystemXmlRepository.StoreElement(XElement element, String friendlyName)
at Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager.Microsoft.AspNetCore.DataProtection.KeyManagement.Internal.IInternalXmlKeyManager.CreateNewKey(Guid keyId, DateTimeOffset creationDate, DateTimeOffset activationDate, DateTimeOffset expirationDate)
at Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager.CreateNewKey(DateTimeOffset activationDate, DateTimeOffset expirationDate)
at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingProvider.CreateCacheableKeyRingCore(DateTimeOffset now, IKey keyJustAdded)
at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingProvider.Microsoft.AspNetCore.DataProtection.KeyManagement.Internal.ICacheableKeyRingProvider.GetCacheableKeyRing(DateTimeOffset now)
at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingProvider.GetCurrentKeyRingCore(DateTime utcNow, Boolean forceRefresh)

[Trace] DiskProviderBase: Directory '/config' isn't writable. No space left on device : '/config/sonarr_write_test.txt'
[Fatal] Microsoft.AspNetCore.Hosting.Diagnostics: Application startup exception

[v4.0.12.2823] NzbDrone.Common.Exceptions.SonarrStartupException: Sonarr failed to start: AppFolder /config is not writable
at NzbDrone.Common.EnvironmentInfo.AppFolderFactory.Register() in ./Sonarr.Common/EnvironmentInfo/AppFolderFactory.cs:line 56
at NzbDrone.Host.Startup.Configure(IApplicationBuilder app, IContainer container, IStartupContext startupContext, Lazy`1 mainDatabaseFactory, Lazy`1 logDatabaseFactory, DatabaseTarget dbTarget, ISingleInstancePolicy singleInstancePolicy, InitializeLogger initializeLogger, ReconfigureLogging reconfigureLogging, IAppFolderFactory appFolderFactory, IProvidePidFile pidFileProvider, IConfigFileProvider configFileProvider, IRuntimeInfo runtimeInfo, IFirewallAdapter firewallAdapter, IEventAggregator eventAggregator, SonarrErrorPipeline errorHandler) in ./Sonarr.Host/Startup.cs:line 215
at System.RuntimeMethodHandle.InvokeMethod(Object target, Span`1& arguments, Signature sig, Boolean constructor, Boolean wrapExceptions)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at Microsoft.AspNetCore.Hosting.ConfigureBuilder.Invoke(Object instance, IApplicationBuilder builder)
at Microsoft.AspNetCore.Hosting.ConfigureBuilder.<>c__DisplayClass4_0.<Build>b__0(IApplicationBuilder builder)
at Microsoft.AspNetCore.Hosting.GenericWebHostBuilder.<>c__DisplayClass15_0.<UseStartup>b__1(IApplicationBuilder app)
at Microsoft.AspNetCore.Mvc.Filters.MiddlewareFilterBuilderStartupFilter.<>c__DisplayClass0_0.<Configure>g__MiddlewareFilterBuilder|0(IApplicationBuilder builder)
at Microsoft.AspNetCore.Hosting.GenericWebHostService.StartAsync(CancellationToken cancellationToken)
 
fajnie - widze że masz HERO
robisz "docker run" ?
polecam zrobić swój udział na konfiguracje kontenerów ( np Kontenery i nadać swojemu userowi pełne prawa do tego udziału) - poza tym folderem co domyślnie daje Container Station - uwierz mi , ratuje to dupsko !
pamiętaj że PUID należy odczytać z SSH id -u

jakby dalej nie działało - to w ssh wklep sudo -i i potwierdzić hasłem , po czym odpalić komendy.
 
Hej,
Jestem w trakcie budowy aplikacji *arr na dockerze. Utknąłem po regeneracji Sonarra i Radarra na niemożności zapisu do /config.



oraz log
[v4.0.12.2823] System.IO.IOException: No space left on device : '/config/asp/a2791bc7-b010-4010-8f33-ed20f88bf531.tmp'
at System.IO.RandomAccess.WriteAtOffset(SafeFileHandle handle, ReadOnlySpan`1 buffer, Int64 fileOffset)
at System.IO.Strategies.OSFileStreamStrategy.Write(ReadOnlySpan`1 buffer)
at System.IO.Strategies.BufferedFileStreamStrategy.Flush(Boolean flushToDisk)
at System.IO.Strategies.BufferedFileStreamStrategy.Dispose(Boolean disposing)
at System.IO.Stream.Dispose()
at Microsoft.AspNetCore.DataProtection.Repositories.FileSystemXmlRepository.StoreElementCore(XElement element, String filename)
at Microsoft.AspNetCore.DataProtection.Repositories.FileSystemXmlRepository.StoreElement(XElement element, String friendlyName)
at Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager.Microsoft.AspNetCore.DataProtection.KeyManagement.Internal.IInternalXmlKeyManager.CreateNewKey(Guid keyId, DateTimeOffset creationDate, DateTimeOffset activationDate, DateTimeOffset expirationDate)
at Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager.CreateNewKey(DateTimeOffset activationDate, DateTimeOffset expirationDate)
at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingProvider.CreateCacheableKeyRingCore(DateTimeOffset now, IKey keyJustAdded)
at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingProvider.Microsoft.AspNetCore.DataProtection.KeyManagement.Internal.ICacheableKeyRingProvider.GetCacheableKeyRing(DateTimeOffset now)
at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingProvider.GetCurrentKeyRingCore(DateTime utcNow, Boolean forceRefresh)

[Trace] DiskProviderBase: Directory '/config' isn't writable. No space left on device : '/config/sonarr_write_test.txt'
[Fatal] Microsoft.AspNetCore.Hosting.Diagnostics: Application startup exception

[v4.0.12.2823] NzbDrone.Common.Exceptions.SonarrStartupException: Sonarr failed to start: AppFolder /config is not writable
at NzbDrone.Common.EnvironmentInfo.AppFolderFactory.Register() in ./Sonarr.Common/EnvironmentInfo/AppFolderFactory.cs:line 56
at NzbDrone.Host.Startup.Configure(IApplicationBuilder app, IContainer container, IStartupContext startupContext, Lazy`1 mainDatabaseFactory, Lazy`1 logDatabaseFactory, DatabaseTarget dbTarget, ISingleInstancePolicy singleInstancePolicy, InitializeLogger initializeLogger, ReconfigureLogging reconfigureLogging, IAppFolderFactory appFolderFactory, IProvidePidFile pidFileProvider, IConfigFileProvider configFileProvider, IRuntimeInfo runtimeInfo, IFirewallAdapter firewallAdapter, IEventAggregator eventAggregator, SonarrErrorPipeline errorHandler) in ./Sonarr.Host/Startup.cs:line 215
at System.RuntimeMethodHandle.InvokeMethod(Object target, Span`1& arguments, Signature sig, Boolean constructor, Boolean wrapExceptions)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at Microsoft.AspNetCore.Hosting.ConfigureBuilder.Invoke(Object instance, IApplicationBuilder builder)
at Microsoft.AspNetCore.Hosting.ConfigureBuilder.<>c__DisplayClass4_0.<Build>b__0(IApplicationBuilder builder)
at Microsoft.AspNetCore.Hosting.GenericWebHostBuilder.<>c__DisplayClass15_0.<UseStartup>b__1(IApplicationBuilder app)
at Microsoft.AspNetCore.Mvc.Filters.MiddlewareFilterBuilderStartupFilter.<>c__DisplayClass0_0.<Configure>g__MiddlewareFilterBuilder|0(IApplicationBuilder builder)
at Microsoft.AspNetCore.Hosting.GenericWebHostService.StartAsync(CancellationToken cancellationToken)

/share/Container/
 
Tak się tylko zastanawiam. Pisze, że brak miejsca. Może warto zmienić -v /Container/Sonarr:/config na pełną ścieżkę? Np. /share/Container/Sonarr (duże, małe litery mają znaczenie). Dodatkowo, nie kończy czy się miejsce na jakimś dysku?
 
  • Clapping Hands
Reakcje: 3Qn