前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Docker 部署 Mastodon - 一个去中心化的社交平台

Docker 部署 Mastodon - 一个去中心化的社交平台

作者头像
崔哥
发布2023-11-05 09:39:14
6580
发布2023-11-05 09:39:14
举报
文章被收录于专栏:崔哥的专栏

在当今互联网时代,社交媒体已经成为人们生活的重要一部分,然而,传统社交媒体平台通常集中于单一中央服务器,这引发了一些问题,包括隐私担忧、数据泄露风险以及广告和跟踪滥用。然而,现在有一种新的社交网络正在崭露头角,它将互联网的去中心化精神引入了社交媒体世界 - 那就是 Mastodon。

Mastodon 是一种开源、分布式的社交网络平台,以其强调去中心化、用户隐私和自主控制而引起了广泛的关注。与传统社交媒体巨头如 Twitter 和 Facebook 不同,Mastodon 的去中心化设计使其不依赖于单一中央服务器。相反,它由许多相互连接的服务器(或称为实例)组成,每个实例都是一个独立的社交网络社区,用户可以选择在其中注册。这意味着没有单一的权威机构掌握着所有用户数据,从而降低了个人隐私的风险,减少了数据泄露的可能性,并提供了更好的用户控制。

Mastodon 的开源性质也为用户提供了更多的透明度和参与机会。该平台的源代码是开放的,允许社区审查、修改和贡献,确保了平台的发展和改进不受单一实体的控制。此外,Mastodon 不包含广告,也不追踪用户的在线行为,从而提供了一个更加干净和隐私友好的社交媒体环境。

在本文中,我们将深入探讨如何使用 Mastodon,以及如何通过 Docker 轻松部署自己的 Mastodon 实例,让您能够体验到这一去中心化社交媒体平台的强大功能和优势。无论您是关心隐私和数据安全,还是寻求更好的社交媒体用户体验,Mastodon 都是一个备受欢迎的选择,它在社交媒体的未来中扮演着重要的角色。

开始之前

首先,下载我整理好的docker-compose.yml文件

https://github.com/chudaozhe/docker-compose-samples/tree/main/mastodon

接着,准备一个域名和证书

  • 域名:test.cuiwei.net
  • 证书:test.cuiwei.net.keytest.cuiwei.net.pem

如果你只是想本地跑一下,也行

  • 修改hosts:127.0.0.1 test.cuiwei.net
  • web、streaming、sidekiq 这3个服务增加extra_hosts,如下:
代码语言:javascript
复制
extra_hosts: 
  - "test.cuiwei.net:192.168.11.241"

#192.168.11.241 为宿主机ip
#extra_hosts作用是 往容器内/etc/hosts文件中添加记录,注意格式是相反的

快速开始

初始化

代码语言:javascript
复制
docker compose -f docker-compose.yml run --rm web bundle exec rake mastodon:setup

上一步执行成功,会启动dbredis两个容器,同时会提示你输入域名(先别输),先进到db容器创建一个给mastodon用的数据库,如下创建一个用户和数据库,名称都是mastodon,密码为空

代码语言:javascript
复制
psql -U postgres
CREATE USER mastodon CREATEDB;
create database mastodon owner mastodon encoding UTF8;

接着,按照提示,一步步来

接下来,生成一份配置,需要手动复制到.env.production文件

最后是导入数据,和创建管理员用户

启动服务

初始化完成,就能启动服务了

代码语言:javascript
复制
docker compose up -d

访问

https://test.cuiwei.net

其他

  1. .env.production 从何而来?

下载官方代码

代码语言:javascript
复制
git clone git@github.com:mastodon/mastodon.git

根目录有个.env.production.sample文件,改名为 .env.production,(必须的)

如果是初次运行,记得把里面LOCAL_DOMAIN, PostgreSQLredis这些你知道的都配好(不配也可以,只是最后一步创建管理员账号会失败)

参考

https://github.com/mastodon/mastodon

https://blog.csdn.net/halobug/article/details/131704066

https://docs.joinmastodon.org/admin/install/#setting-up-nginx

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 开始之前
  • 快速开始
    • 初始化
      • 启动服务
      • 访问
      • 其他
      • 参考
      相关产品与服务
      容器镜像服务
      容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档