Docker实战 | 使用Docker部署Imagor Studio图片编辑工具

【Docker项目实战】使用Docker部署Imagor Studio图片编辑工具

  • [一、 Imagor Studio介绍](#一、 Imagor Studio介绍)
    • [1.1 Imagor Studio 简介](#1.1 Imagor Studio 简介)
    • [1.2 Imagor Studio主要特点](#1.2 Imagor Studio主要特点)
  • 二、本次实践规划
    • [2.1 本地环境规划](#2.1 本地环境规划)
    • [2.2 本次实践介绍](#2.2 本次实践介绍)
  • 三、本地环境检查
    • [3.1 检查Docker服务状态](#3.1 检查Docker服务状态)
    • [3.2 检查Docker版本](#3.2 检查Docker版本)
    • [3.3 检查docker compose 版本](#3.3 检查docker compose 版本)
  • [四、拉取Imagor Studio镜像](#四、拉取Imagor Studio镜像)
  • [五、部署Imagor Studio服务](#五、部署Imagor Studio服务)
    • [5.1 创建部署目录](#5.1 创建部署目录)
    • [5.2 编辑部署文件](#5.2 编辑部署文件)
    • [5.3 创建Imagor Studio容器](#5.3 创建Imagor Studio容器)
    • [5.4 查看Imagor Studio容器状态](#5.4 查看Imagor Studio容器状态)
    • [5.5 检查Imagor Studio容器日志](#5.5 检查Imagor Studio容器日志)
  • [六、访问Imagor Studio服务](#六、访问Imagor Studio服务)
    • [6.1访问Imagor Studio初始页](#6.1访问Imagor Studio初始页)
    • [6.2 注册账号](#6.2 注册账号)
    • [6.3 文件存储设置](#6.3 文件存储设置)
    • [6.4 系统设置](#6.4 系统设置)
    • [6.5 上传图片](#6.5 上传图片)
    • [6.6 编辑图片](#6.6 编辑图片)
  • 七、总结

一、 Imagor Studio介绍

1.1 Imagor Studio 简介

Imagor Studio 是一款自托管的高性能图像画廊与实时编辑网络应用,专为创作者设计,结合虚拟滚动流畅展示与非破坏性编辑工作流,支持桌面与移动端无缝操作。

1.2 Imagor Studio主要特点

  • 高性能图像画廊:基于 Imagor 引擎,支持虚拟滚动,实现海量图片的快速加载与流畅浏览。
  • 零配置部署:开箱即用,无需复杂设置,兼容通用存储方案,简化部署与维护流程。
  • 非破坏性编辑工作流:所有编辑操作保留原始图像,确保数据安全,支持随时回溯修改。
  • 实时图像编辑:提供实时预览的编辑功能,包括颜色调整、特效应用、裁剪等专业工具。
  • 即时生成编辑URL:每次编辑自动生成可分享的图像URL,便于协作与嵌入使用。
  • 触摸优化界面:专为移动设备优化触控操作,同时保留桌面端完整功能,体验一致流畅。

二、本次实践规划

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为 Ubuntu 24.04.2 LTS。

hostname IP地址 操作系统版本 Docker版本 部署项目 备注
jeven 192.168.3.88 Ubuntu 24.04.2 LTS 28.5.0 Imagor Studio ------

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;

2.在Docker环境下部署Imagor Studio图片编辑工具。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

bash 复制代码
root@jeven:~# systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: enabled)
     Active: active (running) since Sat 2025-10-04 13:29:05 UTC; 2 days ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 888 (dockerd)
      Tasks: 65
     Memory: 1.2G (peak: 1.4G)
        CPU: 3min 23.296s
     CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

bash 复制代码
root@jeven:~# docker -v
Docker version 28.5.0, build 887030f

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

bash 复制代码
root@jeven:~# docker compose version
Docker Compose version v2.39.4

四、拉取Imagor Studio镜像

下载Imagor Studio容器镜像,镜像名称: registry.cn-hangzhou.aliyuncs.com/jeson/imagor-studio:0.6.7

bash 复制代码
docker pull registry.cn-hangzhou.aliyuncs.com/jeson/imagor-studio:0.6.7

五、部署Imagor Studio服务

5.1 创建部署目录

  • 创建部署目录
bash 复制代码
mkdir -p /data/imagor-studio/{data,pictures}  && cd  /data/imagor-studio
  • 目录授权工作
bash 复制代码
chmod -R 777 /data/imagor-studio

5.2 编辑部署文件

使用docker-cli方式部署,可参考以下命令:

bash 复制代码
docker run -d \
   --restart unless-stopped \
   --name imagor-studio \
   -p 9200:8000 \
   -v $(pwd)/data:/app/data \
   -v $(pwd)/pictures:/app/gallery:ro \
   -e DATABASE_URL="sqlite:///app/data/imagor-studio.db" \
   registry.cn-hangzhou.aliyuncs.com/jeson/imagor-studio:0.6.7

在部署目录下,创建docker-compose.yaml文件,如下所示:

bash 复制代码
vim docker-compose.yaml
yaml 复制代码
version: '3'

services:
  imagor-studio:
    image: registry.cn-hangzhou.aliyuncs.com/jeson/imagor-studio:0.6.7
    container_name: imagor-studio
    restart: always
    ports:
      - "9200:8000"
    volumes:
      - ./data:/app/data
      - ./pictures:/app/gallery:ro
    environment:
      - DATABASE_URL=sqlite:///app/data/imagor-studio.db

5.3 创建Imagor Studio容器

执行以下命令,创建Imagor Studio容器。

bash 复制代码
docker compose up -d

5.4 查看Imagor Studio容器状态

检查Imagor Studio容器运行状态,确保Imagor Studio容器正常启动。

bash 复制代码
root@jeven:/data/imagor-studio# docker compose ps
WARN[0000] /data/imagor-studio/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potentialconfusion
NAME            IMAGE                                                         COMMAND                  SERVICE         CREATED          STATUS       PORTS
imagor-studio   registry.cn-hangzhou.aliyuncs.com/jeson/imagor-studio:0.6.7   "/usr/local/bin/imag..."   imagor-studio   28 seconds ago   Up 28 seconds   0.0.0.0:9200->8000/tcp, [::]:9200->8000/tcp

5.5 检查Imagor Studio容器日志

检查容器运行日志,确保Imagor Studio服务正常运行。

bash 复制代码
docker compose logs

六、访问Imagor Studio服务

6.1访问Imagor Studio初始页

浏览器地址: http://<个人的服务器IP>:9200,访问Imagor Studio初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。

6.2 注册账号

填写登录账号信息,填写完毕后,确认创建即可。

6.3 文件存储设置

选择默认配置即可,确认选择文件存储。

6.4 系统设置

可选择首页标题名称,自行设置或者默认都可以,点击"Next"后,进入到Imagor Studio主页。

6.5 上传图片

在宿主机图片存储目录上传图片,如下所示:

bash 复制代码
root@jeven:/data/imagor-studio/pictures# pwd
/data/imagor-studio/pictures
root@jeven:/data/imagor-studio/pictures# ls
中秋图片.jpg

浏览器刷新Imagor Studio主页,可以看到图片正常显示。

6.6 编辑图片

双击打开刚才上传的图片,点击编辑选项,可以对图片进行编辑处理。

七、总结

通过本次实践,我们成功使用Docker部署了功能强大的自托管图像管理工具Imagor Studio。Imagor Studio不仅提供了高性能的图像画廊体验,还支持实时编辑、非破坏性工作流和即时生成编辑URL,极大提升了图像处理效率。其触摸优化的界面确保了在移动设备和桌面端都能获得流畅一致的操作体验。整个部署过程简单高效,是创作者和开发者管理与处理图像资源的理想选择。

相关推荐
小羊没烦恼!2 小时前
C#综合揭秘——Entity Framework 并发处理详解
java·开发语言·前端·javascript·数据库·mysql·c#
Xxtaoaooo2 小时前
私人日记不想散落在多个App?我用DailyTxT把记录、搜索和图片都放进自己的NAS
docker·nas·dailytxt
吴声子夜歌2 小时前
Docker入门与实战——Etcd(高可用的键值数据库)
数据库·docker·etcd
刘 大 望2 小时前
Agent 的规划与执行范式:Plan-Execute-Replan 与 ReAct
java·python·ai·chatgpt·langchain·ai编程
flytalei2 小时前
从 Docker Compose 到 K3s:逐浪博客 MySQL 数据迁移实战与一致性验证
mysql·docker·容器
周周爱喝粥呀2 小时前
详细教程:在 Docker 中部署 PostgreSQL 并使用 pgAdmin 可视化管理
docker·postgresql·容器
const_qiu3 小时前
第四章 05:4.5 Multi-Agent —— 五个专职智能体协作
java·人工智能
A小码哥3 小时前
大模型成本怎么降,5 个动作先做前两个
java·前端·spring
鬼手点金3 小时前
构建有效 Agent 的核心原则
java·人工智能·git·学习·自动化