Vill du ha en fotolagringslösning med egen värd som ett alternativ till Google Photos eller Apple iCloud? Så här installerar du Immich på Raspberry Pi.

Google Photos är den dominerande lösningen för lagring och säkerhetskopiering av foton, som enkelt överför dina bilder från din telefon till molnet. Men om du inte vill dela dina personliga bilder med Google finns det alternativ.

Även om det finns många lösningar som du kan vara värd för på Raspberry Pi, står Immich med huvud och axlar över de flesta konkurrenter. Den erbjuder maskininlärning, flera användare, automatisk bildklassificering, ansiktsigenkänning, inbyggda Android- och iOS-appar och en mängd andra funktioner.

Varför installera Immich på Raspberry Pi?

Fotografier fångar delar av våra liv som vi anser är värda att komma ihåg och som vi kommer att vilja återkalla vid ett senare tillfälle. De är minnen av goda tider, goda måltider, högdagar och helgdagar.

Under decennierna av forna, skulle du behöva bära en film eller digitalkamera med dig för att ta dessa tillfällen, sedan antingen få dem utskrivna eller manuellt överföra filerna till din dator.

instagram viewer

Idag har nästan alla en telefon med två eller flera inbyggda kameror, och bästa telefonkameror är tillräckligt bra för att användas av professionella fotografer.

Automatisk uppladdning

För det mesta, när du tar en bild, laddas den upp till antingen Google eller Apple, och du kan komma åt den igen via vilken enhet som helst med hjälp av ett webbgränssnitt eller en app. Men det finns goda skäl till att du kanske inte vill lita på en tredje part för att vara värd för dina bilder.

Bortsett från det är dessa tjänster betalda efter att du passerat en lagringströskel - för närvarande 15 GB för Google och 5 GB för Apple – du kan aldrig vara säker på att företagen inte snokar igenom ditt foto arkiv eller använda dina bilder för att träna generativa AI: er.

Molnbaserad fotolagring handlar om mer än att bara lagra och komma åt dina bilder, och på senare år har vi vant oss vid att automatiskt genererade album, ansiktsigenkänning, tidslinjer, objektidentifiering, påminnelser om viktiga ögonblick och en sökbar tidslinjen. Naturligtvis bör den också komma med attraktiva mobilappar, genom vilka du kan ladda upp dina bilder till molnet

Immich är en egen värd öppen källkodsprogramvara som kommer att göra allt det och mer. Så här installerar du Immich på din Raspberry Pi. Innan du fortsätter bör du ladda ner dina foton från Google, eller exportera dina bilder från iCloud.

Hur man installerar Immich på Raspberry Pi

Innan du börjar måste du göra det ställ in din Raspberry Pi som en webbserver. Även om du inte strikt behöver MariaDB eller PHP för att installera Immich, kan du hitta dem användbara för andra självhotellprojekt. Det borde du också installera den senaste versionen av Docker Compose manuellt.

skapa immich-kataloger och ladda ner filer

När din Pi fungerar som en grundläggande webbserver, skapa en ny katalog för Immich och flytta sedan in i den:

mkdir ~/immich && cd ~/immikap 

Du måste också skapa en katalog för uppladdade filer

mkdir immich-uppladdningar

Du kommer att behöva den absoluta sökvägen till den här katalogen senare så flytta in i den och använd pwd kommandot för att hitta exakt var det är i ditt filsystem:

CD immich-uppladdningar
pwd

Anteckna resultatet och förvara det säkert. Flytta nu upp en katalognivå och använd wget för att ladda ner Immich docker-compose.yml fil och miljöfil genom att ange dessa kommandon separat:

CD..
wget https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env

De .env miljöfilen innehåller variabler som du behöver ändra innan du sätter din Immich-instans online. Använd nanotextredigeraren för att öppna filen:

nano.env

Ställ in uppladdningsplatsen till uppladdningskatalogen du skapade tidigare. Detta är den enda nödvändiga ändringen du behöver göra i filen, men det finns andra konfigurationsalternativ du kan ange om du vill.

Om du vill att Immich ska kunna märka dina bilder med namnet på platsen de togs, scrolla ner till Omvänd geokodning avsnitt och avkommentera Omvänd geokodning och REVERSE_GEOCODING_PRECISION rader.

Immich erbjuder fyra nivåer av precision. 3 är den mest exakta och kommer att namnge bosättningar med en befolkning på över 500. Denna precision kommer med en minneskostnad och inställning 3 kommer att kräva 200 MB RAM. Som jämförelse, ställ in värdet till 0 kommer att namnge städer med över 50 000 invånare och suga ner bara 40 MB.

Ändra PUBLIC_LOGIN_PAGE_MESSAGE till vad du vill att användarna ska se innan de loggar in på webbplatsen.

När du är nöjd med dina ändringar, spara och avsluta nano med Ctrl + O sedan Ctrl + X.

Följande kommando tar upp Docker Compose i fristående läge och laddar ner nödvändiga bilder och ställer in de behållare som Immich behöver köra.

docker-compose up -d

Processen tar flera minuter, under vilken tid du kan kolla in några fantastiska podcasts i din terminal. När Immich kommer online, besök webbappen i din webbläsare på din-pi-lokal-ip-adress: 2283.

Klick Komma igång, skapa sedan en administratörsanvändare. Din Immich-instans kommer så småningom att exponeras för webben, så kom ihåg att använda ett starkt, otänkbart lösenord och klicka sedan på Bli Medlem. Du måste logga in igen med din e-postadress och ditt lösenord.

Ladda upp dina foton till Immich

Såvida du inte börjar helt från början, vill du förmodligen ladda upp ditt befintliga fotoarkiv till din nya Immich-instans. Medan du kan klicka på Ladda upp knappen uppe till höger i webbgränssnittet, välj sedan bilderna manuellt, den här metoden är inte praktisk om du har tusentals bilder i ett arkiv med flera gigabyte.

Immich-utvecklarna har hjälpsamt skapat ett CLI-verktyg som du kan använda för att ladda upp dina bilder i bulk till Immich. Även om det är frestande att använda säker kopia (SCP) för att överföra dina filer, kommer Immich inte att känna igen dem.

Du måste installera CLI-uppladdningsverktyget på ditt lokala system, snarare än på själva Pi. Men först måste du ha Node Package Manager och Node.js version 16 eller högre. Du kan installera npm och Node.js på Windows, och det är ännu lättare att installera npm och Node.js på Linux.

Tillbaka i webbappen, klicka på din användarikon eller initialer uppe till höger på skärmen och klicka sedan Kontoinställningar > API-nycklar > Ny API-nyckel.

Ge nyckeln ett namn och tryck sedan på Skapa. Immich kommer att generera en ny API-nyckel – anteckna den.

I terminalfönstret eller kommandotolken navigerar du till katalogen där dina bilder är lagrade och anger:

immich uppladdning --nyckel din-genererade-API-nyckel --server http://your-pi-local-ip-address: 2283/api --rekursiv .

Träffa y när du tillfrågas om du vill starta uppladdningsprocessen, luta dig tillbaka eftersom det kan ta ett tag. Som referens tog det cirka sex timmar att ladda upp vårt 82GB-arkiv med mer än 40 000 bilder, men det är bara en bråkdel av arbetet.

När uppladdningen är klar kommer Immich att bearbeta dina bilder, extrahera metadata, tagga ansikten och köra objektigenkänningsalgoritmer. Under denna process kommer webbgränssnittet att vara mindre responsivt och bilder kan visas i fel ordning. För vårt arkiv tog processen cirka fyra dagar på en 8GB Raspberry Pi 4B – även om det inte hade någon märkbar inverkan på de många andra tjänster som vi vanligtvis är värdar för.

Du kan hålla koll på framstegen via webbgränssnittet genom att klicka Administration > Jobb. Immich kommer att bearbeta flera jobb samtidigt; för att ändra dessa värden och eventuellt påskynda processen, gå till Administration > Inställningar > Jobbinställningar, och justera samtidighet efter eget tycke.

Exponera Immich för webben

Du måste skapa en Apache-konfigurationsfil för din Immich-instans:

CD /etc/apache2/sites-available && sudo nano immich.conf

Klistra in följande i den nya filen:

<VirtualHost *:80>
Server namnditt-domännamn.tld
ProxyPass / http://127.0.0.1:2283/
ProxyPassReverse / http:/127.0.0.1:2283/
ProxyPreserveHost På
VirtualHost>

Spara och avsluta nano med Ctrl + O sedan Ctrl + X. Aktivera conf-filen och starta sedan om Apache:

sudoa2ensiteimmich.conf && sudoserviceapache2omstart

Använd Certbot för att hämta och distribuera TLS-certifikat och -nycklar:

sudo certbot

Välj ditt domännamn från listan och tryck Stiga på. Starta om Apache igen med:

sudo-tjänsten apache2 omstart

Du kan nu komma åt din Immich-webbapp med ditt domännamn.

Använd mobilappar med Immich

4 bilder

Om du använder Immich för att replikera funktionaliteten hos kommersiella erbjudanden behöver du en medföljande app på din telefon. Immich är tillgängligt för Android och iOS och stöder uppladdning och visning av bilder och videor, snabb navigering och automatisk säkerhetskopiering, sökning och mer.

För att komma igång anger du din Immich URL, inklusive https:// prefix och logga in med dina administratörsuppgifter. Du måste ge tillstånd för appen att se dina foton och videor.

Gränssnittet är enkelt och intuitivt, och du bör kunna navigera i det mesta utan hjälp. Klicka på molnikonen i det övre högra hörnet och välj de lokala album du vill säkerhetskopiera, samt aktivera automatiska säkerhetskopieringar i förgrunden och bakgrunden.

Ladda ner: Immich för iOS | Android (Play Butik) | Android (F-Droid)

Immich är ett pågående arbete

Utvecklingen på Immich pågår ständigt, och trots att arbetet med projektet startade först 2022, är det utan tvekan en fantastiskt kompetent ersättning för iCloud eller Google Photos.

Om du föredrar ett projekt som är lite mer mogen, överväg att distribuera PhotoPrism på din Raspberry Pi istället.