Immich install without Docker...

Hi there, I would like to install Immich on SBC (hardware : Rock 5B) running Armbian OS (https://www.armbian.com/). On SBC I have limited resources on RAM, CPU, and disk space so I would like to try install manually. (native deployment) Is this possible ? I am not expert in docker, so I don't know where to start.
Igor Pečovnik
Armbian
Armbian
Linux for custom hardware
15 Replies
Alex Tran
Alex Tran3y ago
GitHub
[Feature]: Support native deployments (without docker, includes exa...
Feature detail Thanks for the great app! One thing that I'm dearly missing is the ability to deploy this on bare-metal, without relying on docker. The problem is that in certain situations,...
Tabalugach
TabalugachOP3y ago
sudo apt-get install git make gcc gcc-c++ npm18 nodejs18 nodejs18-devel nodejs-common Reading package lists... Done Building dependency tree... Done Reading state information... Done E: Unable to locate package gcc-c+ E: Couldn't find any package by regex 'gcc-c+' E: Unable to locate package npm18 E: Unable to locate package nodejs18 E: Unable to locate package nodejs18-devel E: Unable to locate package nodejs-common pih, debian buster
Alex Tran
Alex Tran3y ago
use Volta https://docs.volta.sh/guide/ to install Node
Tabalugach
TabalugachOP3y ago
No description
Alex Tran
Alex Tran3y ago
you will need nodejs 16 or above
Tabalugach
TabalugachOP3y ago
Rock5b don't have avx2, not sure where can i disable machine learning?! {Otherwise, you can safely remove the immich-machine-learning service if you do not intend to use Immich's object detection features. Simply remove or comment out the declaration of the service in your compose file.} where to comment out?
Alex Tran
Alex Tran3y ago
You can set IMMICH_MACHINE_LEARNING_URL=false
Knight
Knight3y ago
@Tabalugach I'd still recommend using Docker, it does not have that much CPU overhead (It's mostly identical to native), plus you can manage CPU, Memory usage much more efficiently when using docker. Updating is a breeze, plus, with docker volumes, backing up is painless as well. Only drawback is it requires a tiny bit more disk space. If you intend to run multiple things besides Immich on your SBC, I'd strongly recommend docker. For example, if the Immich team decides to update Node, Postgres or any part of their stack, you will have to find out what and update manually. With docker you can skip that and update by just running a single command. Immich is still in rapid development so this is a very real scenario.
Knight
Knight3y ago
Stack Overflow
What is the runtime performance cost of a Docker container?
I'd like to comprehensively understand the run-time performance cost of a Docker container. I've found references to networking anecdotally being ~100µs slower. I've also found references to the run-
Knight
Knight3y ago
I have successfully ran Immich on a Raspberri Pi 3 (1 GB ram) on docker so I think you're good from that regard. Had to increase the swap space a bit though.
Tabalugach
TabalugachOP3y ago
ERROR: Version in "./docker-compose.yml" is unsupported. You might be seeing this error because you're using the wrong Compose file version. Either specify a supported version (e.g "2.2" or "3.3") and place your service definitions under the services key, or omit the version key and place your service definitions at the root of the file to use version 1. docker-compose --version docker-compose version 1.25.0, build unknown
Kryptonian
Kryptonian3y ago
Why volta and not nvm?
Alex Tran
Alex Tran3y ago
all the operations are faster, subjectively
Knight
Knight3y ago
I also believe nvm does not support Alpine So better compatibility for those creating their own docker images/ running extra lite on alpine.
zody
zody3y ago
@Tabalugach I'm running Immicj on a less power SBC: odroidn2. Docker is just fine. I've disabled the ML container, though. Maybe the Rock5 is even okay for that. Let me know - cause I plan to upgrade to a Rock5 myself

Did you find this page helpful?