惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Hacker News: Ask HN
Hacker News: Ask HN
N
News and Events Feed by Topic
Forbes - Security
Forbes - Security
The Last Watchdog
The Last Watchdog
TaoSecurity Blog
TaoSecurity Blog
Schneier on Security
Schneier on Security
SecWiki News
SecWiki News
V
Vulnerabilities – Threatpost
Project Zero
Project Zero
O
OpenAI News
W
WeLiveSecurity
Security Archives - TechRepublic
Security Archives - TechRepublic
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
H
Hacker News: Front Page
Cisco Talos Blog
Cisco Talos Blog
Spread Privacy
Spread Privacy
Help Net Security
Help Net Security
P
Privacy & Cybersecurity Law Blog
K
Kaspersky official blog
S
Security @ Cisco Blogs
Latest news
Latest news
AWS News Blog
AWS News Blog
U
Unit 42
Martin Fowler
Martin Fowler
阮一峰的网络日志
阮一峰的网络日志
S
Secure Thoughts
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Know Your Adversary
Know Your Adversary
Scott Helme
Scott Helme
博客园 - 司徒正美
B
Blog RSS Feed
C
Check Point Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
D
Docker
Google Online Security Blog
Google Online Security Blog
Jina AI
Jina AI
aimingoo的专栏
aimingoo的专栏
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Last Week in AI
Last Week in AI
月光博客
月光博客
C
CXSECURITY Database RSS Feed - CXSecurity.com
S
SegmentFault 最新的问题
NISL@THU
NISL@THU
T
The Blog of Author Tim Ferriss
C
Cisco Blogs
Attack and Defense Labs
Attack and Defense Labs
小众软件
小众软件

叶泯希

每天都是绝版呢———记博客二周年 | 叶泯希 海的那边,真的是自由吗? | 叶泯希 放学打球 | 叶泯希 因 LeanCloud 停止对外服务,对数据迁移至 Vercel 。 2025:得与失 | 叶泯希 世事无常,珍惜眼前 | 叶泯希 “花怎么会落呢” | 叶泯希 “世界充满分歧,所以要学会尊重别人” | 叶泯希 “死亡不是永别,遗忘才是” | 叶泯希 “爱就像蓝天白云晴空万里突然暴风雨” | 叶泯希 “小雨天气” | 叶泯希 快下雨,别打雷了,赶紧的,热! | 叶泯希 寄博客一周年 | 叶泯希 出门不要摔跤容易烫伤 | 叶泯希 主题魔改——Solitude主题 | 叶泯希 自定义表盘导航软件——对小米手环9的折腾 | 叶泯希 武汉之旅 | 叶泯希 关于我在2024年做了这件事... | 叶泯希 2024.11.24 | 叶泯希 他乡纵有当头月,不及家乡一盏灯 | 叶泯希 Vercel+Aiven 自建Umami统计 | 叶泯希 侧边栏——Solitude主题 | 叶泯希 弹幕留言板——Solitude主题 | 叶泯希 2024.11.13 | 叶泯希 2024.11.12 | 叶泯希 好像还没写过日常 | 叶泯希 给自己的网站加上Do you like me 小组件 网站数据库中表的设计 | 叶泯希 听山河把春风酿成千言万语吹过旧人故里 | 叶泯希 网站页面规划设计 | 叶泯希 你出现又幻灭是错觉 | 叶泯希 网站功能设计 | 叶泯希 •ᴗ• | 叶泯希 相机喜欢镜头前的每一个故事 | 叶泯希 白茶记异品,天曹玉玲珑 | 叶泯希 岁月的年轮,再诚恳。也渡不过红尘《宿命》 | 叶泯希 云朵偷喝了酒,于是映红了半边天。 | 叶泯希 用太多的精力因为上天自有安排 | 叶泯希 我一脚踏空,我就要飞起来了。 | 叶泯希 日落是永远拍不完的浪漫 | 叶泯希 风吹过我的头发 | 叶泯希 童话里的王国住着巫婆 | 叶泯希 “晚风吹起你鬓间的白发” | 叶泯希 人性的背后都是白云苍狗 | 叶泯希 蒲公英的约定 | 叶泯希 我捡到过一束光,日落时还给了太阳。 | 叶泯希 去拥抱陌生,期待惊喜,所有的不期而遇都在 | 叶泯希 人生天地间,忽如远行客 | 叶泯希 少年的征途应是星辰大海,而非烟尘人间 | 叶泯希 数据库表结构 | 叶泯希 第八章 Centos 7 Linux配置mariadb 实训任务:部署数据库 第七章 Centos 7 Linux配置ftp 实训任务1:FTP服务器加密传输 第六章 Centos 7 Linux配置web 实训任务:Apache服务器部署 第五章 Centos 7 Linux配置dns 实训任务:部署DNS服务器 第四章 Centos 7 Linux配置dhcp 实训任务1:使用DHCP中继部署多子网环境 第三章 Centos 7 Linux配置samba 实训任务1:配置Samba服务 第二章_Centos 7 Linux配置ssh 实训任务:SSH的安全配置 | 叶泯希 第一章 VMware Workstation Pro 17安装Centos 7 安装虚拟机及简单配置 Hello World | 叶泯希
Windows 安装 Docker 部署 Immich
标签 · 2025-04-08 · via 叶泯希

前言

我有挺多图片的,想搭建个图片管理工具奈何没有服务器,也没有 Nas ,干脆就笔记本电脑上。
打算用 Windows 装个 Docker 再在里面装个 Immich 。
给位佬友们有什么好推荐的吗,最好就能放在托管平台上面的,但是我 不想花钱
别问为什么没有图片,懒得截。

环境

  • Windows 11

准备工作

  1. 开启电脑的功能 Hyper-V适用于 Linux 的 Windows 子系统和虚拟机平台
    1. 打开控制面板 -> 程序 -> 程序和功能 -> 启用或关闭 Windows 功能
    2. Hyper-V 和 适用于 Linux 的 Windows 子系统和虚拟机平台 (勾选)
  2. 去官网下载 Docker并安装 (速度有点慢自行想办法)
    1. 无脑点 OK 然后等
    2. 安装完成点 Close
    3. 在桌面找到蓝色小鲸鱼打开它
    4. Accept(同意) 一些协议
    5. 提示需要登陆,感觉没必要可以点右上角 Skip(跳过)
    6. 调查问卷 Skip(跳过) 就行
    7. 更改 Docker 语言
      1. 点击这里去下载汉化包
      2. 关闭Docker Desktop
      3. 在Docker安装目录找到app.asar文件并将其备份,防止出现意外。
        • Windows下默认为C:\Program Files\Docker\Docker\frontend\resources
        • Macos下默认为/Applications/Docker.app/Contents/MacOS/Docker Desktop.app/Contents/Resources
        • Ubuntu/Debian下默认为/opt/docker-desktop/resources
      4. 将下载的asar文件改名为app.asar后替换原文件
    8. 打开终端CMD输入 docker –version
      1
      2
      PS C:\Users\59974> docker --version
      Docker version 28.0.4, build b8034c0
    9. 安装成功
  1. 新建 F:/web/immich 文件夹(全英文路径)
  2. 下载最新的配置文件,我写了个脚本双击运行即可 updatedownload.bat
    F:/web/immich/updatedownload.bat
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    @echo off


    set BASE_URL=https://github.com/immich-app/immich/releases/latest/download/


    echo 正在下载 docker-compose.yml ...
    powershell -Command "Invoke-WebRequest -Uri '%BASE_URL%docker-compose.yml' -OutFile 'docker-compose.yml'"
    if %ERRORLEVEL% neq 0 (
    echo 下载 docker-compose.yml 失败!
    pause
    exit /b %ERRORLEVEL%
    )


    echo 正在下载 .env 文件 ...
    powershell -Command "Invoke-WebRequest -Uri '%BASE_URL%example.env' -OutFile '.env'"
    if %ERRORLEVEL% neq 0 (
    echo 下载 .env 失败!
    pause
    exit /b %ERRORLEVEL%
    )


    echo 正在下载 hwaccel.ml.yml ...
    powershell -Command "Invoke-WebRequest -Uri '%BASE_URL%hwaccel.ml.yml' -OutFile 'hwaccel.ml.yml'"
    if %ERRORLEVEL% neq 0 (
    echo 下载 hwaccel.ml.yml 失败!
    pause
    exit /b %ERRORLEVEL%
    )


    echo 正在下载 hwaccel.transcoding.yml ...
    powershell -Command "Invoke-WebRequest -Uri '%BASE_URL%hwaccel.transcoding.yml' -OutFile 'hwaccel.transcoding.yml'"
    if %ERRORLEVEL% neq 0 (
    echo 下载 hwaccel.transcoding.yml 失败!
    pause
    exit /b %ERRORLEVEL%
    )


    echo 正在下载 prometheus.yml ...
    powershell -Command "Invoke-WebRequest -Uri '%BASE_URL%prometheus.yml' -OutFile 'prometheus.yml'"
    if %ERRORLEVEL% neq 0 (
    echo 下载 prometheus.yml 失败!
    pause
    exit /b %ERRORLEVEL%
    )

    echo 所有文件下载完成!
    pause
  3. 修改 F:/web/immich/.env 文件(你不想改数据库密码可跳过)
    F:/web/immich/.env
    1
    2
    3
    4
    5
    6
    7
      # To set a timezone, uncomment the next line and change Etc/UTC to a TZ identifier from this list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
    - # TZ=Etc/UTC
    + TZ=Asia/Shanghai
    # Connection secret for postgres. You should change it to a random password
    # Please use only the characters `A-Za-z0-9`, without special characters or spaces
    - DB_PASSWORD=postgres
    + DB_PASSWORD=密码
  4. 运行安装代码
    1
    docker compose up -d
  5. 打开 http://127.0.0.1:2283(本机IP地址),显示 欢迎使用 Immich 界面即部署成功。

进阶操作

1. 更改模型,及文件路径

  1. 映射外部相册文件夹,更改模型
    F:/web/immich/docker-compose.yml
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    services:
    immich-server:
    container_name: immich_server
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    - # extends:
    - # file: hwaccel.transcoding.yml
    - # service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
    + extends:
    + file: hwaccel.transcoding.yml
    + service: nvenc # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
    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
    + - F:/together:/mnt/media:ro
    immich-machine-learning:
    container_name: immich_machine_learning
    # For hardware acceleration, add one of -[armnn, cuda, rocm, openvino, rknn] to the image tag.
    # Example tag: ${IMMICH_VERSION:-release}-cuda
    image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
    - # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
    - # file: hwaccel.ml.yml
    - # service: cpu # set to one of [armnn, cuda, rocm, openvino, openvino-wsl, rknn] for accelerated inference - use the `-wsl` version for WSL2 where applicable
    + extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
    + file: hwaccel.ml.yml
    + service: cuda # set to one of [armnn, cuda, rocm, openvino, openvino-wsl, rknn] for accelerated inference - use the `-wsl` version for WSL2 where applicable
    volumes:
    + - F:/web/model-cache:/cache
  2. 下载模型(自行配置SSH)
    1
    2
    3
    4
    5
    git clone https://huggingface.co/immich-app/buffalo_l
    git clone https://huggingface.co/immich-app/XLM-Roberta-Large-Vit-B-16Plus

    git clone https://hf-mirror.com/immich-app/buffalo_l
    git clone https://hf-mirror.com/immich-app/XLM-Roberta-Large-Vit-B-16Plus
  3. 移动文件夹,树状图如下
    F:/web/model-cache
    1
    2
    3
    4
    5
    6
    7
    model-cache
    ├─clip
    │ └─XLM-Roberta-Large-Vit-B-16Plus
    │ ├─textual
    │ └─visual
    └─facial-recognition
    └─buffalo_l
  4. 跟之前一样,运行安装代码等待部署即可
    1
    docker compose up -d

2. 内网穿透

自己琢磨吧

3. 效果

结尾

至此,教程结束。希望对你有所帮助,有任何问题请在下方留言。可以关注我的 公众号以及订阅我的文章 ,感谢你的支持,是对我最大的动力,当然了,更多的是因为热爱。

本文参考

叶泯希

见过花开就好

本文是原创文章,采用CC BY-NC-SA 4.0协议,完整转载请注明来自叶泯希