如何在Debian 10上安装Diaspora分散式社交媒体

如何在Debian 10上安装Diaspora分散式社交媒体

Diaspora是一个开源的注重隐私的分布式社交网络。它由一组独立部署并拥有的节点组成,这些节点可互操作以创建网络。 Diaspora是一个社交网络,专注于权力下放,自由和隐私这三种哲学。

本教程将向您展示如何在Debian Buster 10上安装Diaspora分布式社交网络。将Diaspora与Nginx Web服务器和PostgreSQL数据库服务器一起安装。另外,SSL Letsencrypt用于保护您的Diaspora安装。

先决条件

  • Debian克星10
  • 2 GB RAM或更多
  • 根权限

我该怎么办?

  • 安装软件包依赖项
  • 为Diaspora创建一个新的PostgreSQL用户
  • 建立新使用者
  • 安装Ruby和RVM(Ruby版本管理器)
  • Diaspora分布式社交网络安装和配置
  • 将Diaspora配置为系统服务
  • 将Nginx配置为侨民的反向代理
  • 被测

第1步-安装软件包依赖项

首先,为散居安装安装一些软件包依赖项,包括PostgreSQL,Redis和Nginx Web服务器。

使用以下apt命令安装软件包依赖项。

sudo apt-get install build-essential cmake gnupg2 libssl-dev libcurl4-openssl-dev libxml2-dev libxslt-dev imagemagick ghostscript curl libmagickwand-dev git libpq-dev redis-server nodejs postgresql

安装完所有内容后,启动PostgreSQL,Nginx和Redis服务,然后将它们全部添加到系统引导中。

systemctl start redis-serversystemctl enable redis-serversystemctl start postgresqlsystemctl enable postgresql

结果,在Debian Buster 10上安装了diaspora安装的某些软件包依赖项。

第2步-为Diaspora创建一个新的PostgreSQL用户

在此步骤中,您将更改默认“ postgres”用户的密码,并创建一个新的散居PostgreSQL用户。

使用下面的“ psql”命令登录到PostgreSQL shell。

sudo -i -u postgres psql

使用以下查询更改默认用户“ postgres”的密码。

password postgres

输入新密码并重复,输入默认用户的密码’Postgres‘已配置。

接下来,使用特权“”创建特权“ diaspora”创作的‘使用以下PostgreSQL查询创建数据库。

CREATE USER diaspora WITH CREATEDB PASSWORD 'yourpassword';

类型”出口‘退出PostgreSQL shell。

创建一个新的Diaspora数据库

结果是一个新的散居PostgreSQL用户。

第3步-创建新用户

创建PostgreSQL数据库用户后,创建一个名为“ diaspora”的新系统用户并将其添加到sudo组。

创建一个名为“ diaspora”的新用户,并使用以下命令设置密码:

adduser --disabled-login Diasporapasswd diaspora

现在,将“ diaspora”用户添加到“ sudo”组中。

usermod -a -G sudo diaspora

结果,“ diaspora”用户将能够运行“ sudo”命令并获得root特权。

创建系统用户Diaspora

步骤4:安装RVM和Ruby

在继续之前,请使用以下命令登录“ diaspora”用户。

su - diaspora

接下来,为“ diaspora”用户安装RVM(Ruby版本管理器)和Ruby 2.6。

使用以下命令为RVM软件包添加GPGP密钥:

gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

RVM包Inpot GPG密钥

使用以下命令安装RVM(Ruby版本管理器):

curl -sSL https://get.rvm.io | bash -s stable

输入“ diaspora”用户的密码,然后按Enter。

完成所有安装后,在服务器上加载rvm脚本。

source /home/diaspora/.rvm/scripts/rvm

因此,您可以运行rvm命令来安装Ruby。

安装RVM Ruby版本管理器

使用以下rvm命令安装Ruby 2.6。

rvm install 2.6

安装完所有内容后,请检查您的Ruby版本。

ruby -v

以下是您将获得的结果。

使用RVM Ruby版本管理器安装Ruby 2.6广告

结果,RVM和Ruby已作为“ diaspora”用户安装。

第5步-下载并配置Diaspora

在继续之前,请确保您以“ diaspora”用户身份登录。

使用git命令下载Diaspora源代码并转到它。

git clone -b master https://github.com/diaspora/diaspora.gitcd diaspora

接下来,复制示例数据库配置“ database.yml”和散居配置“ diaspora.yml”。

cp config/database.yml.example config/database.ymlcp config/diaspora.yml.example config/diaspora.yml

然后使用vim编辑器编辑数据库配置“ database.yml”。

vim config/database.yml

在PostgreSQL数据库部分中,使用数据更改高级用户名和密码。

postgresql: &postgresql  adapter: postgresql  host: "localhost"  port: 5432  username: "diaspora"  password: "yourpassword"  encoding: unicode

保存并关闭。

接下来,编辑侨民设置“ diaspora.yml”。

vim config/diaspora.yml

请按如下所示更改设置,并检查域名是否属于您。

configuration: ## Section...  environment: ## Section...    url: "https://pod.hakase-labs.to/"    certificate_authorities: '/etc/ssl/certs/ca-certificates.crt'    require_ssl: true...  server: ## Section    rails_environment: 'production'...

保存并关闭。

然后使用以下命令安装散居者所需的gem和ruby库。

gem install bundlerscript/configure_bundlerbin/bundle install --full-index

安装diaspora库

然后运行diaspora数据库迁移。

RAILS_ENV=production bundle exec rake db:create db:migrate

完成所有操作后,使用以下命令编译所有Rails资产管道:

RAILS_ENV=production bin/rake assets:precompile

并完成了Diaspora的安装。

第6步-将Diaspora设置为服务

安装侨民后,将其配置为systemd服务。

然后转到“ / etc / systemd / system”目录,并使用vim编辑器创建一个新的分组单元服务文件“ diaspora.target”。

cd /etc/systemd/system/vim diaspora.target

将以下设置粘贴到其中。

[Unit]Description=Diaspora social networkWants=postgresql.serviceWants=redis-server.serviceAfter=redis-server.serviceAfter=postgresql.service[Install]WantedBy=multi-user.target

保存并关闭。

接下来,使用vim编辑器为Diaspora创建一个名为“ diaspora-web.service”的新服务文件。

vim diaspora-web.service

将以下设置粘贴到其中。

[Unit]Description=Diaspora social network (unicorn)PartOf=diaspora.targetStopWhenUnneeded=true[Service]User=diasporaEnvironment=RAILS_ENV=productionWorkingDirectory=/home/diaspora/diasporaExecStart=/bin/bash -lc "bin/bundle exec unicorn -c config/unicorn.rb -E production"Restart=always[Install]WantedBy=diaspora.target

保存并关闭。

广告

然后使用以下vim命令为监视服务创建一个新的服务文件“ diaspora-sidekiq.service”。

vim diaspora-sidekiq.service

粘贴以下配置。

[Unit]Description=Diaspora social network (sidekiq)PartOf=diaspora.targetStopWhenUnneeded=true[Service]User=diasporaEnvironment=RAILS_ENV=productionWorkingDirectory=/home/diaspora/diasporaExecStart=/bin/bash -lc "bin/bundle exec sidekiq"Restart=always[Install]WantedBy=diaspora.target

保存并关闭。

现在,重新加载systemd管理器,并将所有diaspora服务添加到系统引导中。

sudo systemctl daemon-reloadsudo systemctl enable diaspora.target diaspora-sidekiq.service diaspora-web.service

将Diaspora配置为系统服务

然后使用以下命令启动Diaspora服务:

systemctl start diaspora.target

“ Diaspora.target”将自动启动“ diaspora-web.service”和“ diaspora-sidekiq.service”的其他服务。

使用以下命令检查散居服务:

systemctl status diaspora-websystemctl status diaspora-sidekiq

以下是您将获得的结果。

开始了散居服务

结果,Diaspora作为systemd服务运行。最后,散居配置已完成。

步骤7-产生SSL Letsencrypt

在本教程中,您将使用SSL Letsencrypt保护Diaspora的安装。在此步骤中,您将安装certbot工具并为Diaspora域的安装生成SSL Letsencrypt。

使用以下apt命令安装Certbot。

sudo apt install certbot

安装完所有内容后,请使用以下certbot命令为您的侨民域名生成SSL Letsencrypt。

certbot certonly --rsa-key-size 2048 --standalone --agree-tos --no-eff-email --email [email protected] -d pod.hakase-labs.to

现在可以在“ /etc/letsencrypt/live/yourdomain.com/”目录中使用该证书。

第8步-创建一个新用户并下载diaspora

此步骤将Nginx Web服务器安装并配置为Diaspora的反向代理。

使用以下apt命令安装Nginx。

sudo apt install nginx

安装完所有内容后,转到“ / etc / nginx / sites-available”目录,然后使用vim编辑器创建新的虚拟主机配置“ diaspora”。

cd /etc/nginx/sites-available/vim diaspora

将SSL Letsencrypt域名和路径更改为您自己的名称和路径,并将其粘贴到其中。

upstream diaspora_server { server unix:/home/diaspora/diaspora/tmp/diaspora.sock;}server {  listen 80;  listen [::]:80;   server_name pod.hakase-labs.to;  return 301 https://pod.hakase-labs.to$request_uri;  access_log /dev/null;  error_log /dev/null;}server {  listen 443 ssl http2;  listen [::]:443 ssl http2;  server_name pod.hakase-labs.to;  access_log /var/log/nginx/dspr-access.log;  error_log /var/log/nginx/dspr-error.log;  ssl_certificate /etc/letsencrypt/live/pod.hakase-labs.to/fullchain.pem;  ssl_certificate_key /etc/letsencrypt/live/pod.hakase-labs.to/privkey.pem;  ssl_protocols TLSv1.2;  ssl_ciphers EECDH+CHACHA20:EECDH+AESGCM:EECDH+AES;  ssl_ecdh_curve X25519:P-521:P-384:P-256;  ssl_prefer_server_ciphers on;  ssl_session_cache shared:SSL:10m;  root /home/diaspora/diaspora/public;  client_max_body_size 5M;  client_body_buffer_size 256K;  try_files $uri @diaspora;  location /assets/ {    expires max;    add_header Cache-Control public;  }  location @diaspora {    proxy_set_header X-Real-IP $remote_addr;    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;    proxy_set_header X-Forwarded-Proto https;    proxy_set_header Host $http_host;    proxy_redirect off;    proxy_pass http://diaspora_server;  }}

保存并关闭。

现在激活散居配置并测试Nginx配置。

ln -s /etc/nginx/sites-available/diaspora /etc/nginx/sites-enabled/nginx -t

确保没有错误,然后重新启动Nginx服务并将其添加到系统引导中。

systemctl restart nginxsystemctl enable nginx

结果,Nginx Web服务器现在被配置为侨民的反向代理。

将Nginx配置为侨民的反向代理

步骤9-测试

打开Web浏览器,然后在地址栏中输入diaspora域名。

http://pod.hakase-labs.to/

然后,您将看到默认的diaspora主页,如下所示。

散居者主页

点击“链接创建一个帐户‘ 部分。

接下来,输入您的第一个散居账户的电子邮件地址,用户名和密码,[[创建一个帐户‘。

创建一个账户Diaspora

上载您的个人资料图片等太棒了!带我去散居‘按钮。

Diaspora配置文件设置

您将看到以下侨民仪表板。

散居仪表板

如您所见,在Debian Buster 10上使用Nginx反向代理安装Diaspora已成功完成。

Source

Sidebar