【Docker项目实战】使用Docker部署Ralbum开源照片浏览工具

举报
江湖有缘 发表于 2025/02/28 01:10:05 2025/02/28
46 0 0
【摘要】 【Docker项目实战】使用Docker部署Ralbum开源照片浏览工具

@TOC

一、Ralbum介绍

1.1 Ralbum 简介

Ralbum 是一款用于管理和浏览存储在文件系统中的图像和文件的Web应用程序。它通过生成文件夹和图像列表,让用户可以方便地查看和管理他们的图片库。Ralbum 提供了一个轻量级且用户友好的界面,支持多种浏览方式,包括按钮点击、智能手机上的滑动手势以及键盘快捷键导航。该工具确保原始文件的安全性,仅执行读取操作而不进行任何写入动作。

1.2 主要特点

  1. 图像浏览

    • 用户可以选择浏览原始图像或查看默认提供的调整大小后的版本,这对于慢速网络连接尤为方便。
    • 通过 settings.json 文件,用户可以控制缩略图的尺寸。
    • 缩略图可以在访问时即时生成,或者使用 cron.php 脚本一次性批量创建,提高加载速度。
  2. 搜索功能

    • 如果启用了定时任务(cron),用户可以通过右上角的搜索框快速查找图像。
    • 支持多词搜索以进一步缩小结果范围,帮助用户更精确地找到所需图片。
  3. 地理信息展示

    • 内嵌地理信息(EXIF 数据)的图像可以在地图上显示,用户可以通过搜索功能的子菜单找到地图链接,从而直观地浏览带有地理位置标记的照片。
  4. 用户体验优化

    • 当主图像文件夹为空时,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

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。