From 3eae6b0fa5583a533a715b83d711a26f55689e29 Mon Sep 17 00:00:00 2001 From: bwees Date: Thu, 14 Aug 2025 18:15:21 +0000 Subject: [PATCH] working demo DVD --- .gitignore | 2 ++ README.md | 27 +++++++++++++++++++-------- docker-gen.sh | 5 ++++- overlay/usr/app/.env | 2 +- overlay/usr/app/docker-compose.yml | 9 ++++++--- 5 files changed, 32 insertions(+), 13 deletions(-) diff --git a/.gitignore b/.gitignore index 53fc89c..4d58b40 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,6 @@ overlay/var/lib/docker +overlay/usr/app/library +overlay/usr/app/postgres build/ out/ .overlay-build/ \ No newline at end of file diff --git a/README.md b/README.md index 7a8dc52..418a674 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,14 @@ -# Immich-retro +# immich-retro + +This is the repo used to generate the ISO images for the Immich Stable release demo DVDs. ## How to build -Launch a Docker in Docker container +Building requires Docker and a Linux host OS due to reliance on fuse-overlay and other kernal extensions to build. + +1. Select the Immich version you would like to run. Set the `IMMICH_VERSION` in **both** `docker-gen.sh` and `overlay/usr/app/.env` + +2. Delete the `overlay/var/lib/docker` folder if present. Launch a "Docker in Docker" (dind) container ```bash docker run --rm -d --privileged \ @@ -13,33 +19,38 @@ docker run --rm -d --privileged \ docker:dind ``` -Download images (you may have to wait a few moments for the dind container to start dockerd) +3. Download images (you may have to wait a few moments for the dind container to start dockerd) ```bash docker exec -it dind-test sh ./home/docker-gen.sh ``` -You can now kill the dind-test container +4. You can now kill the dind-test container ```bash docker container stop dind-test ``` -Run the following from the root of this repository +5. Run the following from the root of this repository ```bash docker run --rm -it -v "$(pwd)":/home --privileged --name iso-build alpine sh ./home/build.sh ``` -The built image will be placed in `out/` +6. Success! The built `.iso` will be placed in `out/`. + +### Adding a demo library + +You may add a demo library in the instance by copying the `library` and `postgres` folders into `overlay/usr/app/library` and `overlay/usr/app/postgres` respectively. + ### A couple of notes: - The entirety of the operating system runs from RAM. No configuration, assets, or settings will be persisted on reboot of the machine. DO NOT use this as your main Immich instance. - - All assets are stored in RAM so you may quickly run out of "storage" if your machine has less than 16GB of RAM. + - The entire system is run in RAM so you may quickly run out of storage if your machine only has 8GB of memory. - If booting from the DVD, the boot process **will be slow**. You may see "0%" for a prolonged period of time during boot. _Be patient!_. This part of the boot process requires reading the entire DVD and loading it into RAM. - Minimum system requirements: - 2 core x86 processor - - 8GB of RAM, 16GB recommended + - 8GB of RAM, 12GB+ recommended - No storage drive needed! diff --git a/docker-gen.sh b/docker-gen.sh index 7e90e78..8a618bf 100644 --- a/docker-gen.sh +++ b/docker-gen.sh @@ -2,8 +2,11 @@ # List of Docker image tags (space-separated) # ML is excluded since it requires internet to download models + +IMMICH_VERSION=v1.137.3 + images=" -ghcr.io/immich-app/immich-server:v1.137.3 +ghcr.io/immich-app/immich-server:$IMMICH_VERSION docker.io/valkey/valkey:8-bookworm ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0 " diff --git a/overlay/usr/app/.env b/overlay/usr/app/.env index 532af26..6fced2f 100644 --- a/overlay/usr/app/.env +++ b/overlay/usr/app/.env @@ -10,7 +10,7 @@ DB_DATA_LOCATION=/usr/app/postgres # TZ=Etc/UTC # The Immich version to use. You can pin this to a specific version like "v1.71.0" -IMMICH_VERSION=release +IMMICH_VERSION=v1.137.3 # Connection secret for postgres. You should change it to a random password # Please use only the characters `A-Za-z0-9`, without special characters or spaces diff --git a/overlay/usr/app/docker-compose.yml b/overlay/usr/app/docker-compose.yml index 774c8bd..8de67c4 100644 --- a/overlay/usr/app/docker-compose.yml +++ b/overlay/usr/app/docker-compose.yml @@ -31,7 +31,9 @@ services: healthcheck: disable: false - # if you are insane enough to uncomment this, you will need an active internet connection to download the image and models + # if you are insane enough to uncomment this, you will need an active internet connection to download the image and models. + # Also uncomment the model_cache volume at the bottom of this file + # immich-machine-learning: # container_name: immich_machine_learning # # For hardware acceleration, add one of -[armnn, cuda, rocm, openvino, rknn] to the image tag. @@ -70,5 +72,6 @@ services: - ${DB_DATA_LOCATION}:/var/lib/postgresql/data restart: always -volumes: - model-cache: +# uncomment below if enabling machine learning +# volumes: +# model-cache: