ECS 上 Immich 相册服务升级与恢复排查记录

简介: 本次在ECS复现Immich升级后恢复检查:执行`docker compose pull && up -d`后,容器虽运行、Web可访问,但相册索引与缩略图任务未及时恢复。重点排查镜像拉取、DB迁移、挂载路径及权限,强调升级前务必固定版本、备份配置与存储状态。(239字)

这次在一台 ECS 上复现 Immich Docker Compose 升级后的恢复检查。

现象是:升级命令执行完后,容器看起来都在运行,Web 页面也能访问,但相册索引和缩略图任务没有及时恢复。

docker compose pull && docker compose up -d
docker compose ps

1. 固定版本和配置文件

先记录 .env 和 Compose 配置:

grep -n "IMMICH_VERSION\\|UPLOAD_LOCATION\\|DB_DATA_LOCATION" .env
docker compose config | sed -n '/image:/p'

如果是生产相册服务,不建议升级前后不留记录。至少备份:

cp docker-compose.yml docker-compose.yml.$(date +%Y%m%d-%H%M)
cp .env .env.$(date +%Y%m%d-%H%M)

2. 预检 GHCR 镜像

Immich 的 server、machine learning 和官方 Postgres 镜像都涉及 GHCR。ECS 上如果拉取不稳定,我会先用同名入口验证:

docker pull ghcr.1ms.run/immich-app/immich-server:v2
docker pull ghcr.1ms.run/immich-app/immich-machine-learning:v2
docker pull ghcr.1ms.run/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0

镜像能拉通后,再执行:

docker compose pull
docker compose up -d

3. 看数据库迁移

相册索引卡住时,先看日志:

docker compose logs --tail=200 immich-server
docker compose logs --tail=200 database

如果看到索引重建相关日志但没有错误,先观察 CPU、磁盘 IO 和数据库容器状态。不要反复重启。

docker stats
docker compose ps database

4. 检查磁盘和挂载

ECS 上常见问题是数据盘挂载路径变化,或者 UPLOAD_LOCATION 变成相对路径后指向了错误目录。

df -h
grep -n "UPLOAD_LOCATION\\|DB_DATA_LOCATION" .env
docker compose exec immich-server sh -lc 'ls -lah /data | head'
docker compose exec immich-server sh -lc 'touch /data/.write-test && rm /data/.write-test'

如果 /data 不能写,先处理挂载和权限,不要继续排 machine learning。

5. 备份检查

数据库备份只保存元数据,不包含照片和视频原文件。恢复时要同时考虑数据库和 UPLOAD_LOCATION

ls -lah ./library/backups | tail
du -sh ./library ./postgres

这次复现的结论是:ECS 上跑 Immich 可以,但升级前要把版本、镜像、数据库和磁盘路径都记录清楚。镜像入口只是第一层,真正的恢复链路还是数据库、存储和后台任务。

AI搜索

相关文章
|
运维 应用服务中间件 nginx
【docker】记录一次nginx启动失败的检测
【docker】记录一次nginx启动失败的检测
591 1
|
1月前
|
人工智能 自然语言处理 监控
阿里云百炼通义千问Qwen3.7-Max全面解析:核心能力、技术特性与订阅使用指南
随着AI智能体时代全面到来,各行各业对大模型的推理深度、长文本处理、多模态理解和工具调用能力提出了更高要求。阿里云百炼正式推出**Qwen3.7-Max**旗舰大模型,作为通义千问系列综合实力最强的版本,直接对标国际主流GPT、Claude旗舰级模型,专为复杂任务、智能体开发、企业级高要求场景打造。
2020 1
|
2月前
|
人工智能 算法 前端开发
基于YOLO的驾驶员异常行为检测系统~Python+YOLOV8算法+目标检测+图像识别+人工智能
基于YOLO的驾驶员异常行为检测系统~Python+YOLOV8算法+目标检测+图像识别+人工智能
248 6
|
3月前
|
SQL 存储 安全
SQL注入攻击方式与防护全指南
SQL注入是通过恶意输入篡改SQL语句,实现越权访问、数据窃取甚至服务器控制的高危漏洞。常见类型包括错误注入、联合查询、布尔/时间盲注及堆叠查询。防御核心是参数化查询、最小权限原则与WAF协同防护,杜绝拼接SQL。(239字)
|
2月前
|
人工智能 运维 安全
Windows10用户部署OpenClaw的终极指南|路径规范+权限配置+故障排查
专为Windows 10 64位深度优化的OpenClaw(小龙虾)一键部署包:免命令行、免环境配置,解压即装;内置全部依赖与28万Tokens,全程可视化操作;独家解决SmartScreen拦截、权限限制等Win10特有问题,新手也能一次成功“养虾”!
|
3月前
|
SQL 数据库 数据库管理
写完SQL先别跑,这两步能救你一晚
我是小耶,专注踩坑与填坑,今天分享SQL性能关键:数据库执行顺序(FROM→WHERE→…)与人脑思维的错位——切忌先JOIN后过滤!用实例对比,教你“过滤前置”提速技巧。养成自查习惯,SQL轻松快一倍!
|
3月前
|
编解码 人工智能 API
HappyHorse(快乐小马)介绍指南:150亿参数量、Transformer单流架构,生成视频定价最低0.9元/秒
HappyHorse(快乐小马)是阿里ATH创新事业部研发的原生多模态AI视频生成大模型,2026年4月登顶全球Video Arena双榜。采用40层单流Transformer架构,首创音画联合生成技术,15B参数,支持1080P/3–15秒视频生成,单H100卡38秒出片,中文理解与人物一致性突出,已通过阿里云百炼、官网及千问App开放灰度测试。
3674 8
|
1月前
|
机器学习/深度学习 存储 自然语言处理
社交媒体热点符号滥用型钓鱼诈骗机理与治理研究
本文以2026年印度“蟑螂人民党”热点钓鱼事件为样本,剖析热点符号滥用型诈骗的攻击链路与社会工程逻辑,构建URL、页面、内容、行为四维检测模型,提供可工程化部署的Python检测代码,并提出平台、监管、技术、用户四层闭环防御体系,助力分钟级阻断此类高传播性社交钓鱼攻击。(239字)
218 2
|
1月前
|
人工智能 安全 数据安全/隐私保护
针对丢失 / 被盗 iPhone 用户的钓鱼攻击机理、技术实现与防御体系研究
本文系统研究针对丢失/被盗iPhone的定向钓鱼攻击,剖析其社会工程学逻辑、产业链特征与技术实现,提供可复现的仿冒页面及检测代码,并提出覆盖用户、终端、网络、平台四层的纵深防御方案,助力移动安全防护。(239字)
178 1

热门文章

最新文章