如何在云服务器上搭建 Nostr 中继器,并在 Nostr 客户端中连接使用。
我在这个文章还未写完的时候就鸽掉了Nostr的搭建!
强烈建议不要根据这个教程来搭建Nostr中继器!
你需要先知道:
- 我使用的云服务器的提供商为 DigitalOcean
- 我使用的云服务器的系统为 Ubuntu 22.04 (LTS) x64
- 我使用的云服务器的配置为 1 个 CPU、1GB 内存,以及 25GB 固态
- 我使用的云服务器有 ipv6 地址和固定公共 IP 地址
- 你需要有一个域名
创建用户
-
创建一个不是 root 的用户:
如果执行这个指令后系统要求你创建一个密码,那就不需要执行下面这个指令;反之,执行该命令给该用户设置密码:
-
将该用户添加到 sudo 组中,从而授予其 sudoer 权限:
-
从 root 切换到我们创建的用户:
安装 Docker
1 2 3 4 5 6 7 8 9 10 11 12 13
| sudo apt update sudo apt install nodejs npm nginx certbot python3-certbot-nginx
sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" echo "sudo tee /etc/apt/sources.list.d/docker.list > /dev/null" sudo chmod a+r /etc/apt/keyrings/docker.gpg sudo apt update sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
|
下载 nostream
1 2
| cd /home/用户名 git clone https://github.com/Cameri/nostream.git
|
配置 nginx
1 2 3 4 5
| rm -rf /etc/nginx/sites-available/default
sudo nano /etc/nginx/sites-available/default
|
将以下内容复制粘贴到这个新的配置文件:
1 2 3 4 5 6 7 8 9 10 11
| server{ server_name 子域名.域名.后缀; location / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_pass http://127.0.0.1:8008; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } }
|
最后重启一下 nginx:
1
| sudo service nginx restart
|
设置域名的 DNS
在你的域名 DNS 设置中,你需要添加两个记录:
启动 Nostr 中继器
sudo certbot --nginx -d 子域名.域名.后缀
cd ~/nostream
# 开启 TMUX 会话
# 用于分离和维护进程运行
tmux
# 启动中继器
sudo chmod 666 /var/run/docker.sock
npm run docker:compose:start