Update config volume mapping instructions for SoulSync
Change documentation and template to mount only the config.json file instead of the entire config directory. This prevents overwriting Python module files in /app/config and resolves import errors during container startup.
This commit is contained in:
parent
23b6a2ba56
commit
e7cfcddc4d
2 changed files with 7 additions and 6 deletions
11
UNRAID.md
11
UNRAID.md
|
|
@ -19,7 +19,7 @@ docker run -d \
|
|||
-p 8008:8008 \
|
||||
-p 8888:8888 \
|
||||
-p 8889:8889 \
|
||||
-v /mnt/user/appdata/soulsync/config:/app/config \
|
||||
-v /mnt/user/appdata/soulsync/config.json:/app/config/config.json \
|
||||
-v /mnt/user/appdata/soulsync/logs:/app/logs \
|
||||
-v /mnt/user/Music:/host/music:rw \
|
||||
-v soulsync_database:/app/database \
|
||||
|
|
@ -184,19 +184,20 @@ This ensures:
|
|||
|
||||
### ❌ ModuleNotFoundError: No module named 'config.settings'
|
||||
|
||||
**Problem**: Most common error - incorrect config volume mapping
|
||||
**Problem**: Most common error - mounting over the Python config module
|
||||
|
||||
**Wrong**:
|
||||
```yaml
|
||||
- "/mnt/cache/appdata/soulsync:/app/config" # ❌ This overwrites the app's config module
|
||||
- "/mnt/cache/appdata/soulsync:/app/config" # ❌ Overwrites Python module
|
||||
- "/mnt/cache/appdata/soulsync/config:/app/config" # ❌ Still overwrites Python module
|
||||
```
|
||||
|
||||
**Correct**:
|
||||
```yaml
|
||||
- "/mnt/cache/appdata/soulsync/config:/app/config" # ✅ This maps to the config folder only
|
||||
- "/mnt/cache/appdata/soulsync/config.json:/app/config/config.json" # ✅ Mount only the config file
|
||||
```
|
||||
|
||||
**Why this happens**: Mounting the entire appdata folder to `/app/config` overwrites SoulSync's Python `config/` module, causing import errors.
|
||||
**Why this happens**: The `/app/config` directory contains Python module files (`settings.py`) needed for the app to run. Mounting anything to `/app/config` overwrites these files. Only mount the specific `config.json` file.
|
||||
|
||||
### Container Won't Start
|
||||
```bash
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@
|
|||
<Config Name="WebUI Port" Target="8008" Default="8008" Mode="tcp" Description="Web interface port" Type="Port" Display="always" Required="true" Mask="false">8008</Config>
|
||||
<Config Name="Spotify OAuth Port" Target="8888" Default="8888" Mode="tcp" Description="Spotify OAuth callback port" Type="Port" Display="always" Required="true" Mask="false">8888</Config>
|
||||
<Config Name="Tidal OAuth Port" Target="8889" Default="8889" Mode="tcp" Description="Tidal OAuth callback port" Type="Port" Display="always" Required="true" Mask="false">8889</Config>
|
||||
<Config Name="Config Directory" Target="/app/config" Default="/mnt/user/appdata/soulsync/config" Mode="rw" Description="Configuration files storage - CRITICAL: Path must end with /config to avoid module import errors" Type="Path" Display="always" Required="true" Mask="false">/mnt/user/appdata/soulsync/config</Config>
|
||||
<Config Name="Config File" Target="/app/config/config.json" Default="/mnt/user/appdata/soulsync/config.json" Mode="rw" Description="SoulSync configuration file - mount only the config.json file" Type="Path" Display="always" Required="true" Mask="false">/mnt/user/appdata/soulsync/config.json</Config>
|
||||
<Config Name="Logs Directory" Target="/app/logs" Default="/mnt/user/appdata/soulsync/logs" Mode="rw" Description="Application logs storage" Type="Path" Display="always" Required="true" Mask="false">/mnt/user/appdata/soulsync/logs</Config>
|
||||
<Config Name="Music Share" Target="/host/music" Default="/mnt/user/Music" Mode="rw" Description="Your music share containing Downloads and Library folders for slskd integration" Type="Path" Display="always" Required="true" Mask="false">/mnt/user/Music</Config>
|
||||
<Config Name="PYTHONPATH" Target="PYTHONPATH" Default="/app" Mode="" Description="Python path (do not change)" Type="Variable" Display="advanced" Required="true" Mask="false">/app</Config>
|
||||
|
|
|
|||
Loading…
Reference in a new issue