#Noob here - install immich on an old mac

1 messages · Page 1 of 1 (latest)

jovial furnace
#

i have an old mac where i store all my photos. i cannot get docker compose to install as a result. is there anything else i can do to get this running for me?

proper mothBOT
#

:wave: Hey @jovial furnace,

Thanks for reaching out to us. Please follow the recommended actions below; this will help us be more effective in our support effort and leave more time for building Immich immich.

References

Checklist

  1. :blue_square: I have verified I'm on the latest release(note that mobile app releases may take some time).
  2. :blue_square: I have read applicable release notes.
  3. :blue_square: I have reviewed the FAQs for known issues.
  4. :blue_square: I have reviewed Github for known issues.
  5. :blue_square: I have tried accessing Immich via local ip (without a custom reverse proxy).
  6. :blue_square: I have uploaded the relevant logs, docker compose, and .env files, making sure to use code formatting.
  7. :blue_square: I have tried an incognito window, disabled extensions, cleared mobile app cache, logged out and back in, different browsers, etc. as applicable

(an item can be marked as "complete" by reacting with the appropriate number)

If this ticket can be closed you can use the /close command, and re-open it later if needed.

jovial furnace
#

would it be a terrible experience to run this over a network? like run immich on a diff machine that connects to a shared drive on the older mac?

#

i assume it would be bad

pulsar torrent
#

Assets should be fine most of the time

jovial furnace
#

it would be just the assets

tired spruce
fervent gulch
#

just remember that Immich does generate thumbnails and transcoded videos, these should if possible be stored on the server

jovial furnace
#

just getting back to this old question. how do i set the storage to be a diff local machine?

pulsar torrent
#

That's a docker/linux question and unrelated to Immich. Depending on what protocol you want to use/how things are set up, I'd just google "docker mount <protocol|description>"

jovial furnace
#

but like immich is looking for a path when i add an external library. it wont take smb paths though. FWIW i am doing this in macos.

fervent gulch
jovial furnace
pulsar torrent
jovial furnace
fathom talon
#

I think you’re on your own with that tbh. But broad story is if you want a docker container to backup a path, it needs access to that path

pulsar torrent
#

It's likely you'll run into weird issues tbh

jovial furnace
#

i think i read that running immich in docker is incredibly slow on macos. am i wrong about that?

pulsar torrent
#

Yes

tired spruce
jovial furnace
#

with a house full of macs, would you then suggest i dont bother trying to use immich at all?

fathom talon
#

Your house really has no bearing on it. Immich is a web app

#

Immich runs best on a Linux server. It works on other platforms, using docker

#

We don’t recommend the non docker installations. They are a lot harder to setup and maintain

tired spruce
#

but, how old is the Mac will be a big factor 😄

jovial furnace
#

i was hoping to run it on a 2018 macbookpro 😅

jovial furnace
#

ok i removed it all and am trying docker now. when i run docker compose up -d , it seems to start everything. should i be able to hit things after this at http://localhost:2283?

#

nvm it is

#

so now tht i have it running, how do i set my photos to be stored on a network path? i've CMD-K thing and mapped the drive. how do i tell docker/immich to use that?

fervent gulch
fervent gulch
#

Same instructions, just use the /Volumes path of your photo directory as the photo location

jovial furnace
#

after following that, i get this but then i cant connect to my server.

jovial furnace
#

i was able to figure out why its not starting but not sure how to fix

any ideas?

#

i should mention i DO see the .immich files in my new upload_location

jovial furnace
#

bumping this bc i'm still stuck

tired spruce
#

can you go into encoded-video and run ls -la?

jovial furnace
#

i just blacked out my username

#

thats in /Volumes/Pictures/immich-uploads which is what i changed my docker-compose to point to

jovial furnace
#

🦗 🦗 🤣

surreal basalt
#

Hi @jovial furnace I got a second live for my very old 2008 Macbook with Ventura as a Immich Server.
Here are my steps
Install Virtual Box 6
Download and install the slim Alpine Linux image
(why the default boot2docker is too old and will bring errors)
Install inside the Linux terminal Docker
create a folder Immich
Follow the steps form the Immich Page how to isntall immich with docker
Map the Virtualbox Ports to be accesibel by your localnetwork, that was the most tricky part for me
PPS: iam a absolut Linux Nop 🙂

wintry schooner
jovial furnace
wintry schooner
#
      - ${UPLOAD_LOCATION}:/Volumes/Pictures/immich-uploads/
      - /etc/localtime:/etc/localtime:ro
      - /Volumes/Pictures:/Volumes/Pictures/:ro

You can't put UPLOAD_LOCATION inside of an external library like this

#

Especially because you're mounting it read-only

#

But worse than that, you've completely bungled the mount, you can't change the part to the right of ${UPLOAD_LOCATION}:

#

It's ALWAYS ${UPLOAD_LOCATION}:/usr/src/app/upload

#

You can only change the UPLOAD_LOCATION in the .env file, or if you really want, in the .yml itself (but I don't see why)

jovial furnace
#

oh! i assumed i needed to point it to where i wanted to store the pics.

pulsar torrent
#

You do

#

But not the right side, that's the path inside the container

jovial furnace
#

doh

#

apparently i should have read the line right before it 🤦‍♂️

#

for the 3rd line, would i just chg it to rw and leave the rest?

#

do i even need that?

pulsar torrent
#

Idk what you're trying to do with that

jovial furnace
#

point a mapped network drive to be added to immich

pulsar torrent
#

If /Volumes/Pictures is supposed to be an external library, the upload location cannot be inside there

jovial furnace
#

hmm maybe it doesnt support what i was trying to do. my problem is the machine i wanted to use this on is so old that i cant run the correct version of docker. someone suggested i could use a networked drive. i assumed it would allow me to show all my existing pics as well as upload direct from the phones.

wintry schooner
#

You can, that's an external library

#

But you can't put 'upload location' inside of an external library

#

you can put upload location on the same network drive, but not inside of the library folder

#

Yes:
-/pictures/upload_location
-/pictures/other_pictures
No:
-/pictures/upload_location
-/pictures

jovial furnace
wintry schooner
#

yaml:

...
    volumes:
      # Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - /etc/localtime:/etc/localtime:ro
      - /pictures/other_pictures:/external/library1
    env_file:
      - .env
...

.env:

UPLOAD_LOCATION=/pictures/upload_location
DB_DATA_LOCATION=/whatever/it/is
...
jovial furnace
#

would it literally be - /pictures/other_pictures:/external/library1 or do i change the right side to be like /Volumes/Pictures/

wintry schooner
#

left side has to be /Volumes/Pictures/

#

right side can be whatever you want, it'll be what you enter in the GUI

jovial furnace
#

oh!

wintry schooner
#

And to be clear, you CANNOT use /Volumes/Pictures/ as an external library and put UPLOAD_LOCATION=/Volumes/Pictures/upload

jovial furnace
#

gotcha, let me try

#

sorry if i'm being dense here. i'm just not connecting the dots in my head. doesnt the .env need to point to a directory thats also mapped (or is it mounted) in the yaml?

wintry schooner
#

What do you think ${UPLOAD_LOCATION} does?

#

If you were to skip the env file this would be equivalent to - /Volumes/Upload:/usr/src/app/upload

#

(If your upload location was mapped to /Volumes/Upload)

jovial furnace
#

sorry i meant for the db one

wintry schooner
#

DB_DATA_LOCATION is preferrably a mapped directory, yes. DO NOT put it on a network drive, but if you really need to you can put it in a volume

#

Just be aware that if you EVER docker compose down -v it effectively wipes your database

#

the -v is "remove all volumes"

jovial furnace
#

i can see it adding all my pics now!!! thanks!

#

though i dont see thumbnails yet. maybe it needs to finish scannign everything first?

wintry schooner
#

thumbnails will ge queued, no worries

#

check the jobs for what work is left

jovial furnace
#

i am seeing many errors, i think for EVERY image
immich_server | [Nest] 7 - 03/04/2025, 2:57:33 PM ERROR [Microservices:LibraryService] Error reading file: /external/library1/2014/07 - Jul/2014.07.17 14.33.01.jpg. Error: Error: EIO: i/o error, stat '/external/library1/2014/07 - Jul/2014.07.17 14.33.01.jpg'

fathom talon
#

sounds like your hard drive might be broken tbh

jovial furnace
#

nah its a 16 drive raid, that would not be likely

jovial furnace
#

ok so i decided to change my setup. got a new dedicated drive just for immich's photos. i'm not sure how i go about telling immich to, kind of start over. i dont want to physically delete anything from the old setup but immich keeps looking for things that are no longer there when i try to start it up. any suggestions?

wintry schooner
#

You are re-using the database so it will expect things to be in the same place. Either wipe your DB or use a new folder for the new one, i.e. change DB_DATA_LOCATION

jovial furnace
wintry schooner
#

Yep

jovial furnace
wintry schooner
#

That's how the DB_DATA_LOCATION works, yes

#

unless you reference an existing postgres folder, it will create a new one

jovial furnace
#

ok thx, i'll try

jovial furnace
#

ok that part worked but now i have mount issues. i obv still have that part incorrect.

Error response from daemon: Mounts denied: 
The path /external/library1/immich-uploads is not shared from the host and is not known to Docker.
You can configure shared paths from Docker -> Preferences... -> Resources -> File Sharing.
      # Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - /etc/localtime:/etc/localtime:ro
      - /Volumes/Pictures:/external/library1
    env_file:
      - .env```

```# The location where your uploaded files are stored
UPLOAD_LOCATION=/external/library1/immich-uploads```
wintry schooner
#

Well it says right there You can configure shared paths from Docker -> Preferences... -> Resources -> File Sharing.

jovial furnace
#

can u tell how noob i am? sorry

#

i added it there in docker, but its gone after a restart

#

at least i assume this is where

wintry schooner
#

Probably? I don't use MacOS

#

Or docker desktop :p

jovial furnace
#

😢

fathom talon
#

We don’t recommend using windows or Mac partly for this reason

jovial furnace
#

it was working fine when i used a network drive though

fathom talon
#

Yep, that all makes sense. Docker on windows or Mac is a bad experience

jovial furnace
#

now i got it back to this message.

jovial furnace
#

scratch that, got past it but now getting this:

immich_server            | api worker exited with code 1

does that mean my db is on a drive too small, potentially?

wintry schooner
#

I think this means there is no space on whatever you've mounted, or it's not allowed to write

jovial furnace
#

how would i confirm which? the drive itself says there are 14GB free. i think i need the db to be on the mounted usb drive. does that seem possible?

wintry schooner
#

This is not the DB, this is in your library

#

so whatever UPLOAD_LOCATION is set at

jovial furnace
#

thats a 14TB drive 😅

jovial furnace
#

it seems to happen when i tell it to scan all of my photos after an hour or so

#

i have > 400k photos

wintry schooner
#

Not sure what to tell you, the hardware is unsupported. If you could use a different (supported) device to run immich and then use the old mac as network storage that might work