简单易用的多功能图床Picsur

什么是 Picsur ?

Picsur 是一款易于使用、可自行托管的图片分享服务,类似于 Imgur,并内置转换功能。支持多种格式的图片,包括 QOIJPGPNGWEBP(支持动画)、TIFFBMPGIF(支持动画)等。支持编辑图像,包括调整大小、旋转、翻转、去除透明度、负片效果以及灰度化处理等。用户还可以设置图片的有效期,并在列表中显示自己的图片。

什么是 QOI ?

QOI (The Quite OK Image Format) 是一种全新的图像无损压缩规范。它能够在保持无损压缩的同时,使图像的大小类似于 PNG,同时提供了 20 倍至 50 倍更快的编码速度和 3 倍至 4 倍更快的解码速度。

官方提供了在线演示,为了防止服务器耗尽磁盘空间,并防止人们使用它来托管有问题的图像,上传的图片每五分钟删除一次,最大文件大小为 16MB,地址:https://picsur.org

安装

ghcr.io 镜像下载

官方的镜像没有发布在 docker hub,而是在 ghcr.io,所以直接用命令行来安装。

SSH 客户端中依次执行下面的命令

1
2
# 下载镜像
docker pull ghcr.io/caramelfur/picsur:latest

如果没有科学上网,很可能会拉不动

docker compose 安装

涉及到两个容器,采用 docker-compose 安装,将下面的内容保存为 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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
version: '3'

services:
picsur:
image: ghcr.io/caramelfur/picsur:latest
container_name: picsur
restart: unless-stopped
ports:
- '8455:8080'
environment:
PICSUR_HOST: '0.0.0.0'
PICSUR_PORT: 8080
PICSUR_DB_HOST: picsur_postgres
PICSUR_DB_PORT: 5432
PICSUR_DB_USERNAME: picsur
PICSUR_DB_PASSWORD: picsur
PICSUR_DB_DATABASE: picsur

## The default username is admin, this is not modifyable
PICSUR_ADMIN_PASSWORD: picsur

## Optional, random secret will be generated if not set
# PICSUR_JWT_SECRET: CHANGE_ME
# PICSUR_JWT_EXPIRY: 7d

## Maximum accepted size for uploads in bytes
PICSUR_MAX_FILE_SIZE: 128000000
## No need to touch this, unless you use a custom frontend
# PICSUR_STATIC_FRONTEND_ROOT: "/picsur/frontend/dist"

## Warning: Verbose mode might log sensitive data
# PICSUR_VERBOSE: "true"

picsur_postgres:
image: postgres:14-alpine
container_name: picsur_postgres
restart: unless-stopped
volumes:
- ./data:/var/lib/postgresql/data
environment:
POSTGRES_DB: picsur
POSTGRES_PASSWORD: picsur
POSTGRES_USER: picsur

然后执行下面的命令

1
2
3
4
5
6
7
8
9
10
# 新建文件夹 picsur 和 子目录
mkdir -p /volume1/docker/picsur/data

# 进入 picsur 目录
cd /volume1/docker/picsur

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:8455 就能看到主界面

点右上角 Login 登录,默认用户名是admin,默认密码是环境变量 PICSUR_ADMIN_PASSWORD中设置的值

【注意】:只有 登录 按钮,没有 注册的入口

登录成功后

上传一张图片

原始图片为 png,被转成了默认的 jpg 格式,提供了 Markdown 等嵌入代码

上传的图片,可以在 My Images 中找到

原始图像

默认情况下,Picsur 不会保留您的原始图像文件。因为对于大多数用途来说,这是不需要的,并且它可以节省磁盘空间。

如果您想启用此功能,可以转至settings --> general,然后启用Keep original fileYes。保存设置后,将保留原始文件

【注意】:exif 数据不会从原始图像中删除。因此,请确保您不会意外共享敏感数据。

注册用户

默认情况下,用户无法注册自己的帐户。这是为了防止用户意外允许任何人上传到他们的实例。

如果你想允许这样做,也是可以的。要更改此设置,请转至 settings --> roles --> guest --> edit,然后授予访客角色权限 Register

保存角色后,注册 按钮将出现在登录页面上

现在可以注册新用户了

其他的功能可以慢慢摸索

参考文档

CaramelFur/Picsur: An easy to use, selfhostable image sharing service like Imgur with built in converting
地址:https://github.com/CaramelFur/Picsur

Picsur
地址:https://picsur.org

QOI — The Quite OK Image Format
地址:https://qoiformat.org/