【Docker项目实战】使用Docker部署pinry堆叠图像公告系统

简介: 【4月更文挑战第10天】使用Docker部署pinry堆叠图像公告系统

一、pinry介绍

1.1 pinry简介

  • pinry简介

Pinry,一个平铺图像板系统,适用于想要以易于浏览的格式保存、标记和共享图像、视频和网页的人。它是开源和自托管的。

1.2 pinry特点

  • 图像获取和在线预览
  • Pin 图标记系统
  • 浏览器扩展
  • 多用户支持
  • 与 docker 配合得很好
  • 公共和私人板
  • 按标签搜索/使用名称搜索板
  • 通过 DRF 提供完整的 API 支持
  • CLI 支持(通过命令行工具向 Pinry 添加图像或 url)
  • 支持简体中文

    1.3 pinry使用场景

  • 收藏和分享灵感:Pinry可以作为个人或团队收集、保存和分享灵感的工具。用户可以通过将图像、视频和网页添加到他们的Pinry板上来记录他们的灵感。这对于创意人士、设计师、摄影师等有很强需求的人群非常有帮助。

  • 项目管理:Pinry可以被用作项目管理工具,用户可以创建不同的板来组织和管理他们的项目。他们可以将相关的图像、视频和网页添加到特定的板上,并使用标记、描述和分类等功能来整理和查找内容。

  • 学习和研究:Pinry可以用作学习和研究工具,用户可以创建一个板来保存和整理与他们的学习和研究领域相关的图像、视频和网页。他们可以使用标记和描述功能来记录笔记和观点,方便后续回顾和分享。

  • 团队协作:Pinry可以用于团队协作,团队成员可以共享和讨论他们的图像、视频和网页,以便更好地合作和沟通。他们可以使用评论和@提及功能来进行讨论和交流。

    二、本地环境介绍

    2.1 本地环境规划

    本次实践为个人测试环境,操作系统版本为centos7.6。

hostname IP地址 操作系统版本 Docker版本
dokcer 192.168.3.166 centos 7.6 2 20.10.17

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署pinry堆叠图像公告系统。

三、本地环境检查

3.1 检查Docker服务状态

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

[root@jeven ~]# 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 Mon 2024-01-08 22:13:39 CST; 1h 24min ago
     Docs: https://docs.docker.com
 Main PID: 11719 (dockerd)
    Tasks: 22
   Memory: 520.4M
   CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701

3.3 检查docker compose 版本

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

[root@jeven ~]# docker compose version
Docker Compose version v2.6.0

四、下载pinry镜像

从docker hub拉取pinry镜像

[root@jeven ~]# docker pull getpinry/pinry
Using default tag: latest
latest: Pulling from getpinry/pinry
69692152171a: Pull complete
66a3c154490a: Pull complete
82a02637ec8f: Pull complete
d8b2fbd22335: Pull complete
c23c10f79e77: Pull complete
fed942222a11: Pull complete
15c59856e0c2: Pull complete
efe8f94c3b02: Pull complete
02ac53993651: Pull complete
db8c99692bb0: Retrying in 2 seconds
79b84675f08b: Download complete
4fb263c94429: Retrying in 1 second
2900d104f423: Waiting
44b60670e9f6: Waiting
340c5087829d: Waiting
4821235a5970: Waiting
latest: Pulling from getpinry/pinry
Digest: sha256:b0f9eeb195d478d9a989e220861b4638f4fb489d02fdaac1e46bbacd46e90a96
Status: Image is up to date for getpinry/pinry:latest
docker.io/getpinry/pinry:latest

五、部署pinry应用

5.1 创建部署目录

创建pinry部署目录

mkdir -p /data/pinry/data  && cd /data/pinry/

5.2 编辑docker-compose.yaml文件

如果需要使用docker-cli命令部署,执行以下命令,映射端口可自行修改。

docker run -d  --name pinry --restart always -p 5421:80  -v /data/pinry/data:/data  getpinry/pinry

本次实践部署使用docker compose方式,编辑docker-compose.yaml文件。

version: '3.9'
services:
    pinry:
        image: getpinry/pinry
        volumes:
            - '/data/pinry/data:/data'
        ports:
            - '5421:80'
        restart: always
        container_name: pinry

5.3 创建pinry容器

使用docker-compose.yaml文件创建pinry容器

[root@jeven pinry]# docker compose up -d
[+] Running 2/2
 ⠿ Network pinry_default  Created                                                                                       0.1s
 ⠿ Container pinry        Started                                                                                       0.5s

5.4 检查pinry容器状态

检查pinry容器状态,确保pinry容器正常启动。

[root@jeven pinry]# docker compose ps
NAME                COMMAND                  SERVICE             STATUS              PORTS
pinry               "/pinry/docker/scrip…"   pinry               running             0.0.0.0:5421->80/tcp, :::5421->80/tcp

六、访问pinry首页

6.1 注册账号

访问地址:http://192.168.3.166:5421,将IP替换为自己服务器IP地址,进入到pinry首页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。

在这里插入图片描述

点击注册账号,自定义设置账号密码登录即可。

在这里插入图片描述

在这里插入图片描述

七、pinry的基本使用

7.1 新建画板

在上方菜单栏的新建选项中,选择画板。

在这里插入图片描述

编辑画板名称,自定义填写即可。

在这里插入图片描述

7.2 新建pin

点击新建“pin”选项

在这里插入图片描述

选择上传本地图片,编辑标签,选择刚新建的画板。

在这里插入图片描述

7.3 查看图片分享链接

查看刚上传的图片,点击查看图片。

在这里插入图片描述

点击分享链接,可以看到图片地址。

在这里插入图片描述
在这里插入图片描述

八、总结

Pinry是一个非常强大和实用的平铺图像板系统。它的界面简洁直观,使用起来非常流畅。它提供了多种组织、标记和搜索图像的方式,使得用户可以方便地管理和共享自己的图像收藏。而且由于是开源和自托管的,你可以完全掌控自己的数据和隐私。如果你需要一个方便易用的图像板系统,我会推荐你试试Pinry。

相关文章
|
1天前
|
测试技术 Linux Docker
【好玩的开源项目】Docker部署cook菜谱工具
【7月更文挑战第19天】Docker部署cook菜谱工具
13 1
|
8天前
|
Docker Python 容器
容器化技术,特别是Docker,已经成为现代软件开发和部署的重要工具。
容器化技术,特别是Docker,已经成为现代软件开发和部署的重要工具。
|
8天前
|
Kubernetes 持续交付 开发者
微软Azure云上部署Docker容器的技术实践
【7月更文挑战第15天】Docker与Azure的集成,为开发者提供了一种快速、可扩展和可维护的应用部署方式。通过在Azure平台上部署Docker容器,开发者可以充分利用Azure丰富的云服务和强大的基础设施,实现应用的快速迭代和高效运行。未来,随着Docker和Azure的不断发展和集成,我们可以期待更加便捷和高效的容器化应用部署体验。
|
8天前
|
Kubernetes Cloud Native 持续交付
云原生架构的核心组成部分通常包括容器化(如Docker)、容器编排(如Kubernetes)、微服务架构、服务网格、持续集成/持续部署(CI/CD)、自动化运维(如Prometheus监控和Grafana可视化)等。
云原生架构的核心组成部分通常包括容器化(如Docker)、容器编排(如Kubernetes)、微服务架构、服务网格、持续集成/持续部署(CI/CD)、自动化运维(如Prometheus监控和Grafana可视化)等。
|
13天前
|
Java 应用服务中间件 持续交付
Java面试题:简述Docker等容器化技术的原理及其在Java应用部署中的作用。
Java面试题:简述Docker等容器化技术的原理及其在Java应用部署中的作用。
24 0
|
14天前
|
JSON 测试技术 数据安全/隐私保护
【Docker项目实战篇】Docker部署PDF多功能工具Stirling-PDF
【7月更文挑战第7天】Docker部署PDF多功能工具Stirling-PDF
42 0
|
6天前
|
Shell Linux Docker
docker常用命令大全(基础、镜像、容器、数据卷)
这些命令仅仅是 Docker 命令行工具的冰山一角,但对于日常操作来说已经非常全面。通过熟练地使用这些基础命令,用户可以有效地管理 Docker 的镜像、容器、数据卷和网络。随着用户对 Docker 的深入使用,更高级的命令和选项将会变得必需,但上面列出的命令已经为用户提供了一个坚实的起点。对于初学者来说,理解和掌握这些常用命令是深入学习 Docker 的基础。
76 5
docker常用命令大全(基础、镜像、容器、数据卷)
|
3天前
|
Ubuntu Devops 云计算
ubuntu docker-compose编排容器并且设置自启动
使用Docker Compose编排容器并设置为Ubuntu系统的自启动服务,不仅优化了应用的部署流程,也提升了运行时的可管理性和可靠性。通过上述步骤,您可以轻松实现这一目标。维护此类服务时,记得定期检查和更新您的 `docker-compose.yml`文件,确保所有的服务都符合当前的业务需求和技术标准。在云计算和微服务架构不断演进的今天,掌握Docker Compose等工具对于DevOps和软件工程师来说,变得尤为重要。
13 3
|
7天前
|
弹性计算 运维 应用服务中间件
容器的优势,在Docker中运行Tomcat
摘要:了解Docker与虚拟机的区别:虚拟机使用Hypervisor创建完整操作系统,而容器通过namespace和cgroup实现轻量级隔离,共享主机内核。Docker启动快、资源利用率高,适合快速部署和跨平台移植。但安全性相对较低。示例介绍了如何通过Docker搜索、拉取官方Tomcat镜像并运行容器,最后验证Tomcat服务的正常运行。