清新文艺的微社区PaoPao

在这里插入图片描述

什么是 PaoPao ?

PaoPao 是一个 Go 写的轻量级社区。采用 Gin+Vue 实现的微社区,界面清爽拥有话题、发布短内容、评论等功能。

在这里插入图片描述

安装

在群晖上以 Docker 方式安装。

本文写作时,bitbus/paopao-ce 镜像, latest 对应的版本是 0.5.2

在这里插入图片描述

接下来要准备 3 个文件,分别是:

  • paopao-mysql.sql:数据库初始化脚本;
  • config.yaml.sample:应用的设置文件;
  • docker-compose.ymlDocker Compose 工具使用的配置文件,用于定义和管理多个 docker 容器的服务;

paopao-mysql.sql

文件比较长,直接去官网下载,不需要修改

地址: https://github.com/rocboss/paopao-ce/blob/main/scripts/paopao-mysql.sql

在这里插入图片描述

config.yaml.sample

文件比较长,直接去官网下载

地址:
https://github.com/rocboss/paopao-ce/blob/main/config.yaml.sample

在这里插入图片描述

文件需要根据自己的设置进行修改,将 LocalOSS 中的 Domain 后面的值,由 127.0.0.1:8008 改为你群晖的主机 IP + 8038端口或者域名

之所以是 8038 而不是 8008 是因为主机端口在 docker-compose.yml 中设置为了 8038

在这里插入图片描述

否则上传的图片会显示不出来

在这里插入图片描述

docker-compose.yml

将下面的内容保存为 docker-compose.yml,这是基于官方的 docker-compose.yaml 修改而成

原文件地址:https://github.com/rocboss/paopao-ce/blob/main/docker-compose.yaml

version: '3.1'services:db:image: mysql:8.0container_name: paopao-dbrestart: always#ports:#  - 3306:3306volumes:- ./paopao-mysql.sql:/docker-entrypoint-initdb.d/paopao.sql- ./mysql_data:/var/lib/mysqlenvironment:MYSQL_DATABASE: paopaoMYSQL_USER: paopaoMYSQL_PASSWORD: paopaoMYSQL_RANDOM_ROOT_PASSWORD: 'yes'redis:image: redis/redis-stack:7.2.0-v2container_name: paopao-redisrestart: always#ports:#  - 6379:6379#  - 8001:8001environment:REDISEARCH_ARGS: "MAXSEARCHRESULTS 5"meili:image: getmeili/meilisearch:v1.4container_name: paopao-meilirestart: always#ports:#  - 7700:7700volumes:- ./meili_data:/meili_dataenvironment:- MEILI_MASTER_KEY=paopao-meilisearchbackend:image: bitbus/paopao-cecontainer_name: paopao-webrestart: alwaysports:- 8038:8008# modify below to reflect your custom configurevolumes:- ./config.yaml.sample:/app/paopao-ce/config.yaml- ./data:/app/paopao-ce/customdepends_on:- db- redis- meili
  • 容器 paopao-db 的环境变量
可变
MYSQL_DATABASE数据库库名
MYSQL_USER数据库用户
MYSQL_PASSWORD数据库用户对应的密码
MYSQL_RANDOM_ROOT_PASSWORD启用随机生成的 root 用户密码

前三个参数如果修改了默认值,需要同步修改 config.yaml.sample 文件中对应的 MySQL 数据库部分

在这里插入图片描述

然后执行下面的命令

# 新建文件夹 paopao 和 子目录
mkdir -p /volume1/docker/paopao/{data,meili_data,mysql_data}# 进入 paopao 目录
cd /volume1/docker/paopao# 将 paopao-mysql.sql、config.yaml.sample、docker-compose.yml 三个文件放入当前目录

现在的目录结构如下:

在这里插入图片描述

为了避免容器 paopao-web 因连接数据库失败而反复重启,我们需要需要先启动数据库

# 一键启动数据库
docker-compose up -d db

数据库初始化大概5分钟左右,当看到日志显示下面的信息,数据库应该就准备好了

[Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.33' socket: '/var/run/mysqld/mysqld.sock' port: 3306 MySQL Community Server - GPL.

在这里插入图片描述

接下来就可以启动其他容器了

# 一键启动
docker-compose up -d

如果没什么意外的话,现在应该能看到 4 个容器在运行

在这里插入图片描述

运行

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

在这里插入图片描述

先点注册 按钮注册新用户

在这里插入图片描述

注册成功之后的界面

在这里插入图片描述

发帖方式类似于微博和推特,先试试图片,看起来一切正常

在这里插入图片描述

PaoPao 和我们之前介绍的 Misskey 是同类应用,只是 PaoPao 并不是去中心化的

文章传送门:去中心化开源社交平台Misskey

但是,PaoPao 有桌面端,下载地址:https://github.com/rocboss/paopao-ce/releases

在这里插入图片描述

有兴趣你可以搭一个试试

参考文档

rocboss/paopao-ce: 🔥An artistic “twitter like” community built on gin+zinc+vue+ts 清新文艺微社区
地址:https://github.com/rocboss/paopao-ce

广场 | 泡泡 - 一个清新文艺的微社区
地址:https://www.paopao.info

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/492115.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数字化转型导师坚鹏:地市级政府数字化转型案例研究

地市级政府数字化转型案例研究 课程背景: 很多地市级政府存在以下问题: 不清楚地市级政府数字化转型的政务服务类成功案例 不清楚地市级政府数字化转型的社会管理类成功案例 不清楚地市级政府数字化转型的智慧城市类成功案例 课程特色&#xff…

【蓝桥杯】拓扑排序

一.拓扑排序 1.定义: 设G(V,E)是一个具有n个顶点的有向图,V中的顶点序列称为一个拓扑序列,当且仅当满足下列条件:若从顶点到有一条路径,则在顶点序列中顶点必在之前。 2.基本思想…

海南云仓酒庄拜会三亚市贸促会与三亚国际商会共谋发展 共绘蓝图

2024年2月23日上午,三亚市贸促会党组书记、会长、三亚国际商会会长方玉来在三亚国际商会会议室与海南云仓酒庄有限公司党支部书记蒋义一行进行了深入座谈交流,本次还有副会长张成山、秘书处副秘书长孙秋丽、李婧参加了座谈会。此次座谈会旨在加强双方的合…

JAVA毕业设计129—基于Java+Springboot+thymeleaf的物业管理系统(源代码+数据库)

毕设所有选题: https://blog.csdn.net/2303_76227485/article/details/131104075 基于JavaSpringbootthymeleaf的物业管理系统(源代码数据库)129 一、系统介绍 本项目前后端分离,本系统分为管理员、小区管理员、用户三种角色 1、用户: 登…

yolov8车辆识别模型(附数据集)

目录 前言 一、我的数据集 二、其他车辆数据集 三、我的模型 四、模型训练(一站式链接) 五、我的训练过程 前言 因为为了做毕设,所以训练了一个道路监控的车辆模型。 效果不是很好,希望大佬们指导一下。 再此也分享我找了到的…

《Docker 简易速速上手小册》第6章 Docker 网络与安全(2024 最新版)

文章目录 6.1 Docker 网络概念6.1.1 重点基础知识6.1.2 重点案例:基于 Flask 的微服务6.1.3 拓展案例 1:容器间的直接通信6.1.4 拓展案例 2:跨主机容器通信 6.2 配置与管理网络6.2.1 重点基础知识6.2.2 重点案例:配置 Flask 应用的…

Python高性能web框架--Fastapi快速入门

文章目录 fastapi框架一、预备知识点1.1、http协议一、简介二、 http协议特性三、http请求协议与响应协议 1.2、api接口 二、quick start简单案例 fastapi框架 Fastapi,一个用于构建 API 的现代、快速(高性能)的web框架。 fastapi的两个核心…

three中界面交互gui.js库的使用

gui.js库(可视化改变三维场景) dat.gui.js说白了就是一个前端js库,对HTML、CSS和JavaScript进行了封装,学习开发的时候,借助dat.gui.js可以快速创建控制三维场景的UI交互界面,你打开课件中案例源码体验一下就能感受到。 学习dat…

Flask基础学习4

19-【实战】问答平台项目结构搭建_剪_哔哩哔哩_bilibili 参考如上大佬的视频教程&#xff0c;本博客仅当学习笔记&#xff0c;侵权请联系删除 问答发布的web前端页面实现 register.html {% extends base.html %}{% block head %}<link rel"stylesheet" href&q…

【Antv-G6成长之路一】初识antv G6之什么是G6,G6能做哪些事情?(附实例图文)

G6详解目录 写在前面涉及知识&#xff1a;效果图1、G6是什么&#xff1f;1.1、g6的概念1.2、g6的应用 2、G6基础示例demo2.1、引入组件包&#xff08;js&#xff09;2.2、创建画布div2.3、创建G6节点2.4 常用节点属性说明2.5、设置数据节点和连线2.6、代码最终实现 3、G6官网4、…

嵌入式学习day25 Linux

进程基本概念: 1.进程: 程序&#xff1a;存放在外存中的一段数据组成的文件 进程&#xff1a;是一个程序动态执行的过程,包括进程的创建、进程的调度、进程的消亡 2.进程相关命令: 1.top 动态查看当前系统中的所有进程信息&#xff08;根据CPU占用率排序&a…

【笔记】【电子科大 离散数学】 2.命题

文章目录 数理逻辑定义 命题定义不是命题的例子 原子命题和复合命题定义约定 命题联结词否定联结词定义例子真值表 合取联结词定义例子真值表 析取联结词定义例子 蕴含联结词定义例子真值表 等价联结词定义例子真值表 命题符号化及其应用速查表格优先级复合命题符号化布尔检索演…