第六章:Pi节点搭建教程:阿里云/腾讯云Linux服务器网络代理与端口映射

第六章:Pi节点搭建教程:阿里云/腾讯云Linux服务器网络代理与端口映射

本章教程将引导您完成在Linux云服务器(包括但不限于阿里云和腾讯云等主流云平台)上安装Docker的过程,并部署网络代理工具及实现31400-31409端口的映射服务。此外,还将介绍如何安装Portainer以简化容器的管理,从而为您的Pi Node创建一个高效、安全且易于管理的运行环境。

一、2024年主网环境π节点搭建流程:

  1. Pi Node节点的核心作用与关键特性
  2. 搭建Pi节点前的准备工作
  3. 对比服务器与个人电脑哪个更适合Pi节点
  4. Windows Server与Windows 10系统对比,安装Pi节点的考量
  5. 如何选购并配置适合Pi Node节点的云服务器
  6. 阿里云与腾讯云服务器配置Docker、代理与端口映射方法
  7. 电脑与物理服务器安装Pi Node 0.4.11节点详细教程
  8. Pi Node安装后的性能提升与健康监控

二、前提条件:

  1. 您已经拥有一台位于海外地区的Linux云服务器,系统镜像为Ubuntu或Debian,在防火墙设置中,允许并放行所有TCP和UDP协议的端口,范围从1到65335。
  2. 掌握了基本的Linux命令行操作,如文件操作、用户管理等。
  3. Docker容器技术有初步的认识,了解镜像、容器等概念。

三、Docker安装

1.更新系统软件包

sudo apt update

2.安装所需的依赖库

sudo apt install apt-transport-https ca-certificates gnupg2 software-properties-common

3.添加Docker官方GPT秘钥

curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -

4.设置Docker稳定版存储库:

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"

5.更新软件包索引

sudo apt update

6.检查缓存策略,确保官方仓库

apt-cache policy docker-ce

7.安装Docker引擎

sudo apt install docker-ce

8.查看安装状态如下所示

docker version
Client: Docker Engine - Community
Version:           27.1.2
API version:       1.46
Go version:        go1.21.13
Git commit:        d01f264
Built:             Mon Aug 12 11:51:13 2024
OS/Arch:           linux/amd64
Context:           default

Server: Docker Engine - Community
Engine:
Version:          27.1.2
API version:      1.46 (minimum version 1.24)
Go version:       go1.21.13
Git commit:       f9522e5
Built:            Mon Aug 12 11:51:13 2024
OS/Arch:          linux/amd64
Experimental:     false
containerd:
Version:          1.7.20
GitCommit:        8fc6bcff51318944179630522a095cc9dbf9f353
runc:
Version:          1.1.13
GitCommit:        v1.1.13-0-g58aa920
docker-init:
Version:          0.19.0
GitCommit:        de40ad0

9.安装Docker Compose

sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

10.添加可读写权限

sudo chmod +x /usr/local/bin/docker-compose

11.验证Docker Compose安装状态

docker-compose version

12. 使用 Hello World 镜像验证 Docker 安装,结果如下:

sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
c1ec31eb5944: Pull complete 
Digest: sha256:53cc4d415d839c98be39331c948609b659ed725170ad2ca8eb36951288f81b75
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

13.Docker常用命令

# 启动Docker服务  
sudo systemctl start docker  
  
# 设置Docker服务开机自动启动  
sudo systemctl enable docker  
  
# 查看Docker服务的运行状态  
sudo systemctl status docker  
  
# 重启Docker服务  
sudo systemctl restart docker  
  
# 停止Docker服务  
sudo systemctl stop docker  
  

四、安装网络代理工具

1.创建 Docker 配置文件目录

mkdir -p /etc/pinode-service/netwok-tools

2.进入配置文件目录

cd /etc/pinode-service/netwok-tools

3.创建Docker-Compose配置文件

vim docker-compose.yaml

4.复制以下内容到Docker-Compose.yaml文件

为了正确配置 docker-compose.yml 文件,请遵循以下指南:

  • SERVERURL: 设置为你已经解析的域名。
  • PUID 和 PGID: 查询并填写适当的用户 ID (PUID) 和组 ID (PGID)。
  • Volumes: 确保 volumes 部分的挂载路径为实际的文件系统路径。
services:
  wireguard:
    image: lscr.io/linuxserver/wireguard:latest
    container_name: network-tool
    cap_add:
      - NET_ADMIN
      - SYS_MODULE
    environment:
      - PUID=998
      - PGID=998
      - TZ=Etc/UTC
      - SERVERURL=test.pinodecdn.com
      - SERVERPORT=51820
      - PEERS=1
      - PEERDNS=auto
      - INTERNAL_SUBNET=10.8.0.6
      - ALLOWEDIPS=0.0.0.0/0
      - PERSISTENTKEEPALIVE_PEERS=
      - LOG_CONFS=true
    volumes:
      - /etc/pinode-service/netwok-tools:/config
      - /lib/modules:/lib/modules
    ports:
      - 51820:51820/udp
    sysctls:
      - net.ipv4.conf.all.src_valid_mark=1
    restart: unless-stopped

5.启动Docker容器拉取镜像

docker-compose up -d

6.部署完成下载客户端配置文件

部署完成后,下载并安装桌面版客户端软件DeskTop,容器会在项目所在路径自动生成客户端配置文件。下载此文件并导入到客户端软件中,即可完成服务器连接设置。

五、部署31400-31409端口映射服务

1.创建端口映射Docker配置文件

mkdir -p /etc/pinode-service/ports
cd /etc/pinode-service/ports
vim config.toml

2.编辑服务端31400-31409端口配置文件

[server]
bind_addr = "0.0.0.0:2333" 

[server.transport] 
type = "tcp"

[server.transport.tcp]
nodelay = true
keepalive_secs = 20
keepalive_interval = 8

[server.services.service1] 
type = "tcp" 
token = "JLJUIbGJSCk2eSDk1aaMRoXuJ5yadi4OcBO" 
bind_addr = "0.0.0.0:31400" 

[server.services.service2] 
type = "tcp" 
token = "GJSCk2eSDk1aaMRoXuJ5yadi4OcBOTvbhc" 
bind_addr = "0.0.0.0:31401" 

[server.services.service3] 
type = "tcp" 
token = "SCk2eSDk1aaMRoXuJ5yadi4OcBOTvbhc4qKjyO8" 
bind_addr = "0.0.0.0:31402" 

# 更多服务配置依次类推...
# (以下省略 service4 到 service9 的配置)

3.创建并编辑docker-compose.yaml文件

services:
  rathole:
    image: rapiz1/rathole
    container_name: pinode-ports
    network_mode: bridge
    ports: 
      - "2333:2333"
    volumes:
      - /etc/pi-service/ports/config.toml:/app/config.toml
    command: --server /app/config.toml
    restart: unless-stopped

4.启动Docker容器并拉取镜像:

docker compose up -d

5.查看容器运行状态:

docker ps -a

6.下载客户端启动程序

6.编辑客户端配置文件

[client]
remote_addr = "127.0.0.1:2333"
default_token = "0pq0yEmuJUBd95DTVLM6Q4uj5eX3km"
heartbeat_timeout = 40

[client.transport]
type = "tcp"

[client.services.service1]
type = "tcp"
token = "JLJUIbGJSCk2eSDk1aaMRJ5yadi4OcBO"
local_addr = "127.0.0.1:31400"

[client.services.service2]
type = "tcp"
token = "GJSCk2eSDk1aaXuJ5yadi4OcBOTvbhc"
local_addr = "127.0.0.1:31401"

[client.services.service3]
type = "tcp"
token = "SCk2eSDk1aaMRoXuJ5yadi4Ocvbhc4qKjyO8"
local_addr = "127.0.0.1.0:31402"

# 更多客户端配置依次类推...
# (以下省略 client4 到 client9 的配置)

7.启动端口转发程序连接服务器

将编辑好的客户端配置文件和下载的启动程序保存至指定目录(例如C:\port),然后运行以下命令启动端口转发服务:

cd c:\port
Porthole.exe -c Porthole.toml

这将启动31400-31409端口的连接服务。

8.检查31400-31409端口通信状态

进入π节点网旗下的端口检测平台的端口检测平台,查询31400-31409端口的通信情况。如果端口状态显示“全部开放”,则说明一切正常。

五、部署Portainer有效管理Docker服务

Portainer 是一个轻量级的开源管理工具,旨在简化 Docker 环境中的容器管理。通过图形用户界面 (GUI),它提供了一种直观的方式来管理和监控 Docker 容器、镜像、网络、卷等。

1. 域名解析与 SSL 证书配置

在开始之前,请确保已自行解析域名并绑定至服务器,并申请 SSL 加密证书(如阿里云、腾讯云提供的免费证书)。本教程不详细介绍此部分。

2. 创建 SSL 证书存放目录并上传证书文件

首先,创建存放 SSL 证书的目录,并将证书文件上传至该目录:

sudo mkdir -p /etc/pinode-service/certs.d
cd /etc/pinode-service/certs.d

将您的证书文件(server_bundle.crt 和 server.key)上传至 /etc/pinode-service/certs.d 目录中。

3. 创建 Portainer 数据卷

为了确保 Portainer 的数据在容器更新或重启时不会丢失,您需要先创建一个数据卷:

docker volume create portainer_data

4. 启用 Portainer 容器

使用以下命令拉取最新的 Portainer 镜像,并启动 Portainer 容器,同时配置 SSL 证书:

docker run -d \
--name=portainer \
-p 8000:8000 \
-p 9443:9443 \
--restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
-v /etc/pinode-service/certs.d:/etc/pinode-service/certs.d \
portainer/portainer-ce:2.21.0 \
--sslcert /etc/pinode-service/certs.d/server_bundle.crt \
--sslkey /etc/pinode-service/certs.d/server.key

5. 查看 Portainer 运行状态

执行以下命令检查 Portainer 容器的运行状态:

docker ps

确保容器状态为 Up,表明 Portainer 已成功运行。

6. 登录 Portainer 管理后台

在浏览器中访问以下 URL,使用 HTTPS 安全连接到 Portainer 管理后台:

https://<你的域名>:9443

首次登录时,系统会提示您设置管理员密码。根据提示完成设置后,您即可开始管理 Docker 环境。

本章教程介绍了如何在云服务器的 Linux 环境(如 Debian 和 Ubuntu)中配置基础镜像、安装 Docker 环境、部署网络代理工具,并实现 31400-31409 端口的映射,以及如何安装 Portainer 工具以有效管理各项服务。这一系列步骤为后续客户端安装 Pi Node 节点奠定了坚实的基础。

本文仅供学习交流之用,作者不对本文内容的准确性、完整性及实用性做出任何保证。任何因本文内容而引发的争议或损失,作者不承担任何责任。

本文由《Pi节点网》原创发布。

原文链接:第六章:Pi节点搭建教程:阿里云/腾讯云Linux服务器网络代理与端口映射

旗下网站:派节点检测网》一键监测您的Pi节点运行状态

版权声明:本文系作者原创,未经许可禁止转载。文中所述观点仅代表作者本人,不代表任何机构的立场。

技术支持与合作咨询:如您需要技术支持或有合作意向,请点击此链接联系Pi节点网技术团队。我们随时欢迎您的垂询,并期待与您的合作。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注