Enterprise-grade photo backup for Raspberry Pi and Linux hosts. Stable, scalable, and Raspberry Pi (ARM64) compatible.
The core services orchestrating your personal cloud.
Networking & Auth
File Sharing (SMB)
Mirroring & Backups
# Raspberry Pi / ARM64 Compatible Stack
services:
tailscale:
image: tailscale/tailscale:latest
container_name: tailscale
hostname: dockervault
environment:
- TS_AUTHKEY=${TS_AUTHKEY}
- TS_STATE_DIR=/var/lib/tailscale
volumes:
- ./tailscale/state:/var/lib/tailscale
- /dev/net/tun:/dev/net/tun
cap_add:
- NET_ADMIN
- SYS_MODULE
restart: always
samba:
image: dperson/samba
container_name: samba
network_mode: service:tailscale
environment:
- USERID=${SAMBA_UID}
- GROUPID=${SAMBA_GID}
volumes:
- ${PATH_TO_NVME}:/mnt/photos:rw
- ${PATH_TO_HDD}:/mnt/backup:ro
command: >
-u "${VAULT_USER};${VAULT_PASS}"
-s "Photos;/mnt/photos;yes;no;no;${VAULT_USER}"
restart: always
# --- TAILSCALE ---
# Get this from Tailscale dashboard after logging in with family Gmail
TS_AUTHKEY=tskey-auth-ksjdfh7623khjsdf...
# --- CREDENTIALS ---
# These are the ones the family types into PhotoSync on their iPhones
VAULT_USER=family
VAULT_PASS=A_Simple_Family_Password_123
# --- STORAGE PATHS ---
PATH_TO_NVME=/mnt/vault_ssd/photos
PATH_TO_HDD=/mnt/backup_hdd/vault_mirror
SAMBA_UID=1000
SAMBA_GID=1000
π The "One Password" Strategy
Sign up at Tailscale.com using a dedicated new Gmail (e.g. mgv.family@gmail.com).
Every family member logs into the Tailscale app with this same account.
This creates a private mesh where everyone instantly sees dockervault.
Target (SMB)
Host: dockervault
User: family
Pass: A_Simple_Family_Password_123
Automation
Trigger: On Power Plugged In
Open Files App > Browse > β― > Connect to Server.
Address: smb://dockervault