Self-hosted photo and video backup solution directly from your mobile phone.
Find a file
schklom c917875943
Automated multi-platform build and DockerHub publication (#8)
* Automated multi-arch build

This setup uses GitHub Actions to build an image for arm/v7 and arm64 then publish them on DockerHub (you need to setup repo secrets first) every time you want (workflow_dispatch), every push, every pull requests (pull_requests), or on a schedule (cronjob) :)

Remove the triggers you don't want.

Reminder: if you ever move the Dockerfile (or some dependencies), you will have to correct the Dockerfile path (and/or the context path).

* Create dependabot.yml

This checks the dependencies' versions for the Actions everyday and creates a pull request if there are new versions available.
2022-02-06 13:06:01 -06:00
.github Automated multi-platform build and DockerHub publication (#8) 2022-02-06 13:06:01 -06:00
design Added toast message component 2022-02-04 17:20:23 -06:00
mobile Implemented Video Upload and Player (#2) 2022-02-06 00:07:56 -06:00
server Implemented Video Upload and Player (#2) 2022-02-06 00:07:56 -06:00
.DS_Store Added toast message component 2022-02-04 17:20:23 -06:00
LICENSE Initial commit 2022-02-03 09:56:28 -06:00
Makefile Added fluent ffmpeg 2022-02-05 01:33:08 -06:00
README.md Update readme, remove apk file in repo 2022-02-06 00:28:50 -06:00

IMMICH

Self-hosted Photo backup solution directly from your mobile phone.

Note

This project is under heavy development, there will be continous functions, features and api changes.

!! NOT READY FOR PRODUCTION! DO NOT USE TO STORE YOUR ASSETS !!

Development

You can use docker compose for development, there are several services that compose Immich

  1. The server
  2. PostgreSQL
  3. Redis
  4. Nginx

Populate .env file

Navigate to server directory and run

cp .env.example .env

Then populate the value in there.

To start, run

docker-compose -f ./server/docker-compose.yml up

To force rebuild node modules after installing new packages

docker-compose -f ./server/docker-compose.yml up --build -V

The server will be running at http://your-ip:2283 through Nginx

Register User

Use the command below on your terminal to create user as we don't have user interface for this function yet.

curl --location --request POST 'http://your-server-ip:2283/auth/signUp' \
--header 'Content-Type: application/json' \
--data-raw '{
    "email": "testuser@email.com",
    "password": "password"
}'

Run mobile app

Android

Download apk in release tab and run on your phone. You can follow this guide on how to do that

iOS

  • Get a MacOS
  • Download and setup Flutter development environment
  • Navigate to mobile folder
  • Run with release build command for best performance.
flutter run --release

Known Issue

TensorFlow doesn't run with older CPU architecture, it requires CPU with AVX and AVX2 instruction set. If you encounter error illegal instruction core dump when running the docker-compose command above, check for your CPU flags with the command ad make sure you see AVX and AVX2. Otherwise, switch to a different VM/desktop with different architecture.

more /proc/cpuinfo | grep flags

If you are running virtualization in Promox, the VM doesn't have the flag enable.

You need to change the CPU type from kvm64 to host under VMs hardware tab.

Hardware > Processors > Edit > Advanced > Type (dropdown menu) > host