118 lines
2.0 KiB
Markdown
118 lines
2.0 KiB
Markdown
# FRP (Fast Reverse Proxy)
|
|
|
|
FRP 内网穿透工具镜像,支持服务端 (frps) 和客户端 (frpc)。
|
|
|
|
## 基础镜像
|
|
|
|
- `debian:latest`
|
|
|
|
## 包含组件
|
|
|
|
| 组件 | 版本 |
|
|
|------|------|
|
|
| frps | 0.66.0 |
|
|
| frpc | 0.66.0 |
|
|
|
|
## 构建
|
|
|
|
```bash
|
|
# 默认构建
|
|
./rebuild.sh frp
|
|
|
|
# 指定版本
|
|
docker build --build-arg FRP_VERSION=0.66.0 -t timi/frp:latest ./frp
|
|
|
|
# 通过代理下载
|
|
docker build --build-arg PROXY=http://proxy:8080 -t timi/frp:latest ./frp
|
|
```
|
|
|
|
## 构建参数
|
|
|
|
| 参数 | 默认值 | 说明 |
|
|
|------|--------|------|
|
|
| `FRP_VERSION` | 0.66.0 | FRP 版本号 |
|
|
| `PROXY` | (空) | 下载时使用的代理地址 |
|
|
|
|
## 暴露端口
|
|
|
|
| 端口 | 说明 |
|
|
|------|------|
|
|
| 7000 | frps 服务端口 |
|
|
| 7500 | frps Dashboard |
|
|
| 7400 | frps KCPTUN |
|
|
|
|
## 使用
|
|
|
|
### 作为服务端 (frps)
|
|
|
|
```bash
|
|
# 创建配置文件
|
|
cat > frps.toml << 'EOF'
|
|
bindPort = 7000
|
|
webServer.addr = "0.0.0.0"
|
|
webServer.port = 7500
|
|
EOF
|
|
|
|
# 运行服务端
|
|
docker run -d --name frps \
|
|
-p 7000:7000 \
|
|
-p 7500:7500 \
|
|
-v $(pwd)/frps.toml:/etc/frp/frps.toml \
|
|
timi/frp:latest
|
|
```
|
|
|
|
### 作为客户端 (frpc)
|
|
|
|
```bash
|
|
# 创建配置文件
|
|
cat > frpc.toml << 'EOF'
|
|
serverAddr = "your-server.com"
|
|
serverPort = 7000
|
|
|
|
[[proxies]]
|
|
name = "web"
|
|
type = "http"
|
|
localPort = 80
|
|
customDomains = ["example.com"]
|
|
EOF
|
|
|
|
# 运行客户端
|
|
docker run -d --name frpc \
|
|
-v $(pwd)/frpc.toml:/etc/frp/frpc.toml \
|
|
--entrypoint /usr/local/bin/frpc \
|
|
timi/frp:latest -c /etc/frp/frpc.toml
|
|
```
|
|
|
|
### Docker Compose 示例
|
|
|
|
#### 服务端
|
|
|
|
```yaml
|
|
services:
|
|
frps:
|
|
image: timi/frp:latest
|
|
ports:
|
|
- "7000:7000"
|
|
- "7500:7500"
|
|
volumes:
|
|
- ./frps.toml:/etc/frp/frps.toml
|
|
restart: unless-stopped
|
|
```
|
|
|
|
#### 客户端
|
|
|
|
```yaml
|
|
services:
|
|
frpc:
|
|
image: timi/frp:latest
|
|
entrypoint: /usr/local/bin/frpc
|
|
command: ["-c", "/etc/frp/frpc.toml"]
|
|
volumes:
|
|
- ./frpc.toml:/etc/frp/frpc.toml
|
|
restart: unless-stopped
|
|
```
|
|
|
|
## 配置文件参考
|
|
|
|
FRP 官方文档: https://gofrp.org/zh-cn/docs/
|