【Docker项目实战】使用Docker部署Ralbum开源照片浏览工具
【摘要】 【Docker项目实战】使用Docker部署Ralbum开源照片浏览工具
@TOC
一、Ralbum介绍
1.1 Ralbum 简介
Ralbum 是一款用于管理和浏览存储在文件系统中的图像和文件的Web应用程序。它通过生成文件夹和图像列表,让用户可以方便地查看和管理他们的图片库。Ralbum 提供了一个轻量级且用户友好的界面,支持多种浏览方式,包括按钮点击、智能手机上的滑动手势以及键盘快捷键导航。该工具确保原始文件的安全性,仅执行读取操作而不进行任何写入动作。
1.2 主要特点
-
图像浏览
- 用户可以选择浏览原始图像或查看默认提供的调整大小后的版本,这对于慢速网络连接尤为方便。
- 通过
settings.json
文件,用户可以控制缩略图的尺寸。 - 缩略图可以在访问时即时生成,或者使用
cron.php
脚本一次性批量创建,提高加载速度。
-
搜索功能
- 如果启用了定时任务(
cron
),用户可以通过右上角的搜索框快速查找图像。 - 支持多词搜索以进一步缩小结果范围,帮助用户更精确地找到所需图片。
- 如果启用了定时任务(
-
地理信息展示
- 内嵌地理信息(EXIF 数据)的图像可以在地图上显示,用户可以通过搜索功能的子菜单找到地图链接,从而直观地浏览带有地理位置标记的照片。
-
用户体验优化
- 当主图像文件夹为空时,Ralbum 会自动展示最近添加的图像、历史同日期的图像以及随机选择的图像,为用户提供多样化的浏览体验。
- 图像以光箱形式呈现,提供沉浸式的观看体验,并支持多种交互方式以适应不同设备和用户的偏好。
Ralbum 不仅提供了便捷的图像管理和浏览功能,还注重保护原始文件的安全性和完整性,同时通过高效的缩略图生成机制提升了浏览效率。此外,其丰富的特性如搜索和地图展示功能,极大地增强了用户的使用体验。
- 中小企业:不需要大型企业级解决方案的小型组织可以通过 DweebUI 获得专业的容器管理能力,而无需投入过多资源。
二、本次实践规划
2.1 本地环境规划
本次实践为个人测试环境,操作系统版本为Centos7。
hostname | 内网 IP地址 | 操作系统版本 | Docker版本 | 项目名称 |
---|---|---|---|---|
VM-8-9-centos | 10.3.8.9 | CentOS Linux 7 | 26.1.3 | Ralbum |
2.2 本次实践介绍
1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署Ralbum应用。
三、本地环境检查
3.1 检查Docker服务状态
检查Docker服务是否正常运行,确保Docker正常运行。
[root@VM-8-9-centos ~]# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2025-01-09 20:59:40 CST; 4 days ago
Docs: https://docs.docker.com
Main PID: 1424 (dockerd)
Tasks: 9
Memory: 1.0G
CGroup: /system.slice/docker.service
3.2 检查Docker版本
检查Docker版本
[root@VM-8-9-centos ~]# docker -v
Docker version 26.1.3, build b72abbb
3.3 检查docker compose 版本
检查Docker compose版本,确保2.0以上版本。
[root@VM-8-9-centos ~]# docker compose version
Docker Compose version v2.27.1
四、下载Ralbum镜像
执行以下命令,拉取以下Ralbum镜像。
[root@VM-8-9-centos ~]# docker pull ralbum/ralbum
Using default tag: latest
latest: Pulling from ralbum/ralbum
2cc3ae149d28: Pull complete
01c187ab622c: Pull complete
4382a8829fff: Pull complete
43046b340e34: Pull complete
199ce03f09e6: Pull complete
82f77a5a3aed: Pull complete
60517e1132d4: Pull complete
048a128f8a9b: Pull complete
29fca939395b: Pull complete
73e70c64ea4e: Pull complete
a39eb8ce7fab: Pull complete
8ba7f5c30795: Pull complete
4cd80e85911a: Pull complete
07589881cfe4: Pull complete
b99bc60f0f6d: Pull complete
ac9d30138e4b: Pull complete
74e1ee756161: Pull complete
1d2adc0cbd38: Pull complete
ae688b5697af: Pull complete
1ed03a8cd15d: Pull complete
90dd6e2ce6c9: Pull complete
049d8c4047f2: Pull complete
57785e0eaca5: Pull complete
Digest: sha256:ff6677b8ef15fa9a19bb3b2efc667d497f961b19ed73ed725502058e78ebc4c3
Status: Downloaded newer image for ralbum/ralbum:latest
docker.io/ralbum/ralbum:latest
五、部署Ralbum应用
5.1 创建部署目录
- 创建部署目录
mkdir -p /data/ralbum/{cache,data,photo} && cd /data/ralbum
- 目录授权
chmod -R 777 /data/ralbum/
5.2 docker-cli方式部署(可选)
可使用以下docker-cli方式,快速部署Ralbum应用。
docker run -d \
--restart always \
--name ralbum \
-p 6200:80 \
-v $(pwd)/photo:/var/data \
-v $(pwd)/cache:/var/www/html/cache \
-v $(pwd)/data:/var/www/html/data \
ralbum/ralbum
5.3 编辑部署文件
本次实践使用docker compose方式部署,在部署目录下,创建docker-compose.yaml文件,其中宿主机映射端口等可以自定义配置。
vim docker-compose.yaml
version: '3'
services:
ralbum:
image: ralbum/ralbum
container_name: ralbum
restart: always
ports:
- "6200:80"
volumes:
- /data/ralbum/photo:/var/data
- /data/ralbum/cache:/var/www/html/cache
- /data/ralbum/data:/var/www/html/data
5.4 创建Ralbum容器
执行以下命令,创建Ralbum容器。
[root@VM-8-9-centos ralbum]# docker compose up -d
WARN[0000] /data/ralbum/docker-compose.yaml: `version` is obsolete
[+] Running 2/2
✔ Network ralbum_default Created 0.1s
✔ Container ralbum Started 0.5s
5.5 查看Ralbum容器状态
检查Ralbum容器状态状态,确保Ralbum容器正常启动。
[root@VM-8-9-centos ralbum]# docker compose ps
WARN[0000] /data/ralbum/docker-compose.yaml: `version` is obsolete
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
ralbum ralbum/ralbum "docker-php-entrypoi…" ralbum 31 seconds ago Up 29 seconds 0.0.0.0:6200->80/tcp, :::6200->80/tcp
六、访问Ralbum服务
6.1 访问Ralbum初始页
访问地址:http://IP地址:6200,将IP替换为自己服务器IP地址。如果无法访问到以下页面,则检查宿主机的防火墙是否关闭或者放行相关端口,云服务器则还需要设置安全组规则。
6.2 上传照片
在宿主机挂载目录/data/ralbum/photo下,上传本地照片。
[root@VM-8-9-centos photo]# pwd
/data/ralbum/photo
[root@VM-8-9-centos photo]# ls
中秋图片.jpg 云计算.png
6.3 浏览照片
刷新浏览器,可以看到照片显示了。
6.4 搜索照片
执行以下命令,启用搜索功能。
docker exec ralbum /var/www/html/ralbum_cron.sh
在搜索栏,搜索图片名称,可以看到可以成功搜索到图片。
七、总结
Ralbum 是一款专为管理和浏览文件系统中的图像和文件而设计的轻量级Web应用程序,它提供了直观的用户界面和支持多种设备的交互方式,确保了便捷高效的图片库管理体验。该工具注重安全性,仅对原始文件执行读取操作,并通过缩略图生成和搜索功能优化了用户的浏览效率。此外,Ralbum 还支持地理信息展示等高级特性,极大地丰富了用户的互动和使用体验。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)