首页 AI工具 Lemmy开源社区论坛平台零基础部署教程

Lemmy开源社区论坛平台零基础部署教程

AI工具 130
广告一

什么是Lemmy?

Lemmy是一个开源的、自托管的链接聚合器和论坛平台,类似于Reddit的替代品。它采用联邦式设计,基于ActivityPub协议,可以与Mastodon、Pleroma等其他联邦宇宙(Fediverse)平台互动。Lemmy使用Rust语言编写,后端采用Actix-web框架,前端使用Inferno.js,数据库支持PostgreSQL。

准备工作

在开始部署Lemmy之前,您需要准备以下内容:

Lemmy开源社区论坛平台零基础部署教程

一台Linux服务器(推荐Ubuntu 22.04 LTS)域名一个(可选但推荐)基本的命令行操作知识

本教程将使用CIUIC云服务器作为示例,您可以在该平台购买适合的云服务器实例。

第一步:服务器环境准备

首先登录您的服务器,更新系统软件包:

sudo apt update && sudo apt upgrade -y

安装必要的依赖工具:

sudo apt install -y curl git nginx certbot postgresql postgresql-contrib

第二步:安装Docker和Docker Compose

Lemmy官方推荐使用Docker进行部署,这样可以简化依赖管理:

# 安装Dockercurl -fsSL https://get.docker.com | sudo sh# 安装Docker Composesudo curl -L "https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composesudo chmod +x /usr/local/bin/docker-compose

验证安装是否成功:

docker --versiondocker-compose --version

第三步:配置PostgreSQL数据库

创建Lemmy专用的数据库用户和数据库:

sudo -u postgres psql -c "CREATE USER lemmy WITH PASSWORD 'your_strong_password';"sudo -u postgres psql -c "CREATE DATABASE lemmy WITH OWNER lemmy;"

第四步:部署Lemmy

克隆Lemmy的官方仓库:

git clone https://github.com/LemmyNet/lemmy.gitcd lemmy/docker

修改docker-compose.yml文件,配置您的域名、数据库连接等信息:

version: "3.7"services:  proxy:    image: nginx:1-alpine    ports:      - "80:80"      - "443:443"    volumes:      - ./nginx.conf:/etc/nginx/nginx.conf:ro    depends_on:      - lemmy-ui  lemmy:    image: dessalines/lemmy:latest    hostname: lemmy    volumes:      - lemmy_data:/config    environment:      - RUST_LOG=info      - LEMMY_DATABASE_URL=postgres://lemmy:your_strong_password@postgres:5432/lemmy      - LEMMY_HOSTNAME=yourdomain.com    depends_on:      - postgres  lemmy-ui:    image: dessalines/lemmy-ui:latest    environment:      - LEMMY_UI_LEMMY_INTERNAL_HOST=lemmy:8536      - LEMMY_UI_LEMMY_EXTERNAL_HOST=yourdomain.com      - LEMMY_UI_HOST=0.0.0.0:1234    depends_on:      - lemmy  postgres:    image: postgres:15-alpine    environment:      - POSTGRES_USER=lemmy      - POSTGRES_PASSWORD=your_strong_password      - POSTGRES_DB=lemmy    volumes:      - postgres_data:/var/lib/postgresql/datavolumes:  lemmy_data:  postgres_data:

第五步:配置Nginx和SSL证书

创建Nginx配置文件nginx.conf

events {}http {    server {        listen 80;        server_name yourdomain.com;        location /.well-known/acme-challenge/ {            root /var/www/certbot;        }        location / {            return 301 https://$host$request_uri;        }    }}

获取SSL证书:

sudo certbot certonly --nginx -d yourdomain.com

更新Nginx配置以支持HTTPS:

events {}http {    server {        listen 443 ssl;        server_name yourdomain.com;        ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;        ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;        location / {            proxy_pass http://lemmy-ui:1234;            proxy_set_header Host $host;            proxy_set_header X-Real-IP $remote_addr;            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;        }    }}

第六步:启动Lemmy服务

使用Docker Compose启动所有服务:

sudo docker-compose up -d

等待几分钟让所有服务初始化完成,然后访问您的域名https://yourdomain.com,您应该能看到Lemmy的欢迎页面。

第七步:初始管理员设置

首次访问时,点击"Register"创建一个新账户,第一个注册的用户将自动成为管理员。管理员可以进入设置页面配置社区、调整站点参数等。

维护和更新

要更新Lemmy到最新版本:

cd lemmy/dockersudo docker-compose pullsudo docker-compose up -d

定期备份数据库:

sudo docker exec -t lemmy-docker_postgres_1 pg_dumpall -c -U lemmy > lemmy_backup.sql

通过本教程,您已经成功在CIUIC云服务器上部署了Lemmy社区论坛平台。Lemmy作为一个联邦式开源平台,可以让您完全掌控自己的社区数据,避免被商业平台控制。您可以根据需要进一步定制主题、添加插件或扩展功能。

如果您在部署过程中遇到任何问题,可以参考Lemmy的官方文档或在Lemmy官方社区寻求帮助。

广告一