From 655c52f9cea69a60911844e5c291c2f0eb9b2fcd Mon Sep 17 00:00:00 2001 From: fatedier Date: Tue, 11 Dec 2018 11:56:00 +0800 Subject: [PATCH] doc: add conf template --- README.md | 29 +++++++++++++++++++++++++++++ README_zh.md | 30 ++++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+) diff --git a/README.md b/README.md index 6cbca0a..fdef5c7 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,7 @@ frp is a fast reverse proxy to help you expose a local server behind a NAT or fi * [P2P Mode](#p2p-mode) * [Features](#features) * [Configuration File](#configuration-file) + * [Configuration file template](#configuration-file-template) * [Dashboard](#dashboard) * [Authentication](#authentication) * [Encryption and Compression](#encryption-and-compression) @@ -345,6 +346,34 @@ You can find features which this document not metioned from full example configu [frpc full configuration file](./conf/frpc_full.ini) +### Configuration file template + +Configuration file tempalte can be rendered using os environments. Template uses Go's standard format. + +```ini +# frpc.ini +[common] +server_addr = {{ .Envs.FRP_SERVER_ADDR }} +server_port = 7000 + +[ssh] +type = tcp +local_ip = 127.0.0.1 +local_port = 22 +remote_port = {{ .Envs.FRP_SSH_REMOTE_PORT }} +``` + +Start frpc program: + +``` +export FRP_SERVER_ADDR="x.x.x.x" +export FRP_SSH_REMOTE_PORT="6000" +./frpc -c ./frpc.ini +``` + +frpc will auto render configuration file template using os environments. +All environments has prefix `.Envs`. + ### Dashboard Check frp's status and proxies's statistics information by Dashboard. diff --git a/README_zh.md b/README_zh.md index c457b7a..a97b04d 100644 --- a/README_zh.md +++ b/README_zh.md @@ -23,6 +23,7 @@ frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp * [点对点内网穿透](#点对点内网穿透) * [功能说明](#功能说明) * [配置文件](#配置文件) + * [配置文件模版渲染](#配置文件模版渲染) * [Dashboard](#dashboard) * [身份验证](#身份验证) * [加密与压缩](#加密与压缩) @@ -360,6 +361,35 @@ frp 提供了一种新的代理类型 **xtcp** 用于应对在希望传输大量 [frpc 完整配置文件](./conf/frpc_full.ini) +### 配置文件模版渲染 + +配置文件支持使用系统环境变量进行模版渲染,模版格式采用 Go 的标准格式。 + +示例配置如下: + +```ini +# frpc.ini +[common] +server_addr = {{ .Envs.FRP_SERVER_ADDR }} +server_port = 7000 + +[ssh] +type = tcp +local_ip = 127.0.0.1 +local_port = 22 +remote_port = {{ .Envs.FRP_SSH_REMOTE_PORT }} +``` + +启动 frpc 程序: + +``` +export FRP_SERVER_ADDR="x.x.x.x" +export FRP_SSH_REMOTE_PORT="6000" +./frpc -c ./frpc.ini +``` + +frpc 会自动使用环境变量渲染配置文件模版,所有环境变量需要以 `.Envs` 为前缀。 + ### Dashboard 通过浏览器查看 frp 的状态以及代理统计信息展示。