Enhance Immich deployment process by removing old single-container instances and updating service configurations

- Added logic to remove any existing single-container 'immich' instances to prevent conflicts with the new multi-container 'immich_server' stack.
- Updated `build-auto-installer-iso.sh` to utilize configuration files from the `configs/` directory for Nginx and systemd service, ensuring proper setup.
- Modified deployment scripts to ensure the removal of old containers and improved handling of Immich stack creation.
- Updated documentation to reflect changes in service configurations and critical build checklist items.
This commit is contained in:
Dorian
2026-02-25 18:20:50 +00:00
parent 4cb9ac1faa
commit 2c15311ab6
5 changed files with 65 additions and 46 deletions
+12 -2
View File
@@ -12,11 +12,13 @@ cd image-recipe
```
This captures:
- [ ] Systemd service configuration (`archipelago.service`)
- [ ] Nginx configuration (`nginx-archipelago.conf`)
- [ ] Systemd service configuration (`archipelago.service`) - **User=root** required for Podman
- [ ] Nginx configuration (`nginx-archipelago.conf`) - includes app proxies (Nextcloud, Vaultwarden, Immich, Penpot)
- [ ] Logrotate configuration (if exists)
- [ ] Any custom scripts in `/opt/archipelago/scripts/`
**Critical**: `build-auto-installer-iso.sh` uses `configs/` for nginx and archipelago.service. Ensure these are synced before building.
### 2. Verify Code Changes
Ensure all code changes are committed:
@@ -86,6 +88,14 @@ Test checklist:
- [ ] Can access UI at `http://localhost:8080` (or mapped port)
- [ ] Container detection works: Check logs for "Detected container"
## App Stack Hardening (Immich, Penpot, etc.)
The first-boot script and deploy script ensure:
- [ ] **Immich**: Old single-container `immich` (wrong port) is removed before creating `immich_server` stack
- [ ] **First-boot**: Waits for postgres (pg_isready) before starting Immich server
- [ ] **Backend**: `package.install` for Immich removes old container before creating stack
- [ ] **Deploy**: Ensures Immich stack on every deploy, cleans up conflicts
## Post-Build
### 8. Write to USB (Optional)