在Rocky 9上通过Docker Compose部署FRP内网穿透服务
以下是基于Rocky 9使用Docker Compose部署FRP内网穿透服务的详细步骤:
### 一、替换Docker源为阿里云源为了提高下载速度,建议将Docker官方源替换为阿里云镜像源。
- 备份原始Docker源配置文件:
sudo mv /etc/yum.repos.d/docker-ce.repo /etc/yum.repos.d/docker-ce.repo.backup
- 创建新的Docker源配置文件`/etc/yum.repos.d/docker-ce.repo`,内容如下:
[docker-ce-stable]
name=Docker CE Stable - $basearch
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/$releasever/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
[docker-ce-test]
name=Docker CE Test - $basearch
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/$releasever/$basearch/test
enabled=0
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
[docker-ce-nightly]
name=Docker CE Nightly - $basearch
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/$releasever/$basearch/nightly
enabled=0
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
### 二、安装Docker与Docker Compose
#### 1. 安装Docker
- 更新系统软件包:
sudo dnf update
- 安装必要的依赖包:
sudo dnf install -y dnf-utils device-mapper-persistent-data lvm2
- 添加Docker官方仓库:
sudo dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
- 安装Docker:
sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
- 启动并设置Docker开机自启:
sudo systemctl start docker
sudo systemctl enable docker
#### 2. 安装Docker Compose
- 从GitHub下载最新版本的Docker Compose:
sudo curl -L "https://github.com/docker/compose/releases/download/v2.18.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
- 赋予可执行权限:
sudo chmod +x /usr/local/bin/docker-compose
### 三、配置FRP服务端
#### 1. 创建FRP服务端目录
mkdir -p /opt/frp/server
cd /opt/frp/server
#### 2. 配置`frps.ini`
[common]
bind_port = 7000
token = your_custom_token
vhost_http_port = 8080
vhost_https_port = 443
tcp_mux = false
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = your_password
enable_prometheus = true
log_file = /var/log/frps.log
log_level = info
log_max_days = 3
#### 3. 编写`docker-compose.yml`
version: '3'
services:
frps:
image: snowdreamtech/frps
container_name: frps
restart: always
network_mode: host
volumes:
- ./frps.ini:/etc/frp/frps.ini
command: ["-c", "/etc/frp/frps.ini"]
### 四、配置FRP客户端
#### 1. 创建FRP客户端目录
mkdir -p /opt/frp/client
cd /opt/frp/client
#### 2. 配置`frpc.ini`
[common]
server_addr = your_server_ip
server_port = 7000
token = your_custom_token
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6022
#### 3. 编写`docker-compose.yml`
version: '3'
services:
frpc:
image: snowdreamtech/frpc
container_name: frpc
restart: always
network_mode: host
volumes:
- ./frpc.ini:/etc/frp/frpc.ini
command: ["-c", "/etc/frp/frpc.ini"]
### 五、启动服务
#### 1. 启动服务端
docker-compose up -d
#### 2. 启动客户端
docker-compose up -d
### 六、验证服务
访问`http://your_server_ip:7500`以进入管理面板,确保客户端已成功连接。此外,尝试从外部网络SSH到`your_server_ip:6022`,验证是否能正常访问内网服务。
注意:请根据实际需求调整防火墙规则及FRP配置参数。