[GH-ISSUE #1237] 关于frps的两个建议1)frps默认加载ini ,2)frps禁用和解禁name #973

Closed
opened 2026-05-05 12:37:26 -06:00 by gitea-mirror · 2 comments
Owner

Originally created by @status301 on GitHub (May 8, 2019).
Original GitHub issue: https://github.com/fatedier/frp/issues/1237

建议frps在使用时默认先判断运行目录下是否存在frps.ini文件,没有再绑定默认的7000端口。

原因:在docker化发现执行默认参数会找不到文件
cat Dockerfile

# 指定创建的基础镜像
FROM scratch

# 作者描述信息
MAINTAINER scratch_frp ***@gmail.com

# 添加全部执行文件
ADD ./* /

# 设置环境变量
ENV PATH /:$PATH

# 设置工作目录
WORKDIR /

# 默认执行参数
#CMD ["/frps" "-c" "/frps.ini"]

# 默认执行文件
ENTRYPOINT ["/frps"]

结局:

[root@HK frps_docker]# docker run --rm frps
Error: open ["/frps" "-c" "/frps.ini"]: no such file or directory
Usage:
  frps [flags]

Flags:
      --allow_ports string         allow ports
      --bind_addr string           bind address (default "0.0.0.0")
  -p, --bind_port int              bind port (default 7000)
      --bind_udp_port int          bind udp port
  -c, --config string              config file of frps
      --dashboard_addr string      dasboard address (default "0.0.0.0")
      --dashboard_port int         dashboard port
      --dashboard_pwd string       dashboard password (default "admin")
      --dashboard_user string      dashboard user (default "admin")
  -h, --help                       help for frps
      --kcp_bind_port int          kcp bind udp port
      --log_file string            log file (default "console")
      --log_level string           log level (default "info")
      --log_max_days int           log_max_days (default 3)
      --max_ports_per_client int   max ports per client
      --proxy_bind_addr string     proxy bind address (default "0.0.0.0")
      --subdomain_host string      subdomain host
  -t, --token string               auth token
  -v, --version                    version of frpc
      --vhost_http_port int        vhost http port
      --vhost_http_timeout int     vhost http response header timeout (default 60)
      --vhost_https_port int       vhost https port

[root@HK frps_docker]# 

frps禁用和解禁name

我自建的frps支撑了10+的frpc客户端,有时service的端口会有冲突,需要临时取消穿透。
现在只能在需要时修改frpc的配置文件,能否在frps内存中暂时禁用name(强制name已使用释放端口或将端口随机),在使用完成后在解禁(测试发现frp的name是唯一的同一时间只能存在1个)

禁用:
./frps proxies disable name1
启用:
./frps proxies enable name1
Originally created by @status301 on GitHub (May 8, 2019). Original GitHub issue: https://github.com/fatedier/frp/issues/1237 # 建议frps在使用时默认先判断运行目录下是否存在frps.ini文件,没有再绑定默认的7000端口。 原因:在docker化发现执行默认参数会找不到文件 cat Dockerfile ``` # 指定创建的基础镜像 FROM scratch # 作者描述信息 MAINTAINER scratch_frp ***@gmail.com # 添加全部执行文件 ADD ./* / # 设置环境变量 ENV PATH /:$PATH # 设置工作目录 WORKDIR / # 默认执行参数 #CMD ["/frps" "-c" "/frps.ini"] # 默认执行文件 ENTRYPOINT ["/frps"] ``` 结局: ``` [root@HK frps_docker]# docker run --rm frps Error: open ["/frps" "-c" "/frps.ini"]: no such file or directory Usage: frps [flags] Flags: --allow_ports string allow ports --bind_addr string bind address (default "0.0.0.0") -p, --bind_port int bind port (default 7000) --bind_udp_port int bind udp port -c, --config string config file of frps --dashboard_addr string dasboard address (default "0.0.0.0") --dashboard_port int dashboard port --dashboard_pwd string dashboard password (default "admin") --dashboard_user string dashboard user (default "admin") -h, --help help for frps --kcp_bind_port int kcp bind udp port --log_file string log file (default "console") --log_level string log level (default "info") --log_max_days int log_max_days (default 3) --max_ports_per_client int max ports per client --proxy_bind_addr string proxy bind address (default "0.0.0.0") --subdomain_host string subdomain host -t, --token string auth token -v, --version version of frpc --vhost_http_port int vhost http port --vhost_http_timeout int vhost http response header timeout (default 60) --vhost_https_port int vhost https port [root@HK frps_docker]# ``` # frps禁用和解禁name 我自建的frps支撑了10+的frpc客户端,有时service的端口会有冲突,需要临时取消穿透。 现在只能在需要时修改frpc的配置文件,能否在frps内存中暂时禁用name(强制name已使用释放端口或将端口随机),在使用完成后在解禁(测试发现frp的name是唯一的同一时间只能存在1个) ``` 禁用: ./frps proxies disable name1 启用: ./frps proxies enable name1 ```
Author
Owner

@status301 commented on GitHub (May 8, 2019):

或者开放1个API,使用api(GUI)禁用/启用 name

<!-- gh-comment-id:490524458 --> @status301 commented on GitHub (May 8, 2019): 或者开放1个API,使用api(GUI)禁用/启用 name
Author
Owner

@status301 commented on GitHub (May 16, 2019):

#已解决
1)

[root@HK ~]# tail running.sh
#docker run -d --name=frps --restart=always -v /root:/root --net=host frps -c /root/frps.ini
#docker run -d --name=frpc --restart=always -v /root:/root frpc -c /root/frpc.ini
[root@HK ~]# docker ps -a
eb51e9c78982        frps                "frps -c /root/frp..."   4 days ago          Up 3 days                                    frps
c85bcbe3bbcc        frpc                "frpc -c /root/frp..."   5 days ago          Up 3 days                                    frpc
[root@HK ~]#

在frpc中映射frpc Admin

[common]
admin_addr = 127.0.0.1
admin_port = 7400
admin_user = admin
admin_pwd = admin
user = H

[CloudController]
type = http
local_port = 7400
custom_domains = fd991cf8-4716-4cd0-48bb-0f1aec96c5cc.***.me
<!-- gh-comment-id:493107224 --> @status301 commented on GitHub (May 16, 2019): #已解决 1) ``` [root@HK ~]# tail running.sh #docker run -d --name=frps --restart=always -v /root:/root --net=host frps -c /root/frps.ini #docker run -d --name=frpc --restart=always -v /root:/root frpc -c /root/frpc.ini [root@HK ~]# docker ps -a eb51e9c78982 frps "frps -c /root/frp..." 4 days ago Up 3 days frps c85bcbe3bbcc frpc "frpc -c /root/frp..." 5 days ago Up 3 days frpc [root@HK ~]# ``` 2) 在frpc中映射frpc Admin ``` [common] admin_addr = 127.0.0.1 admin_port = 7400 admin_user = admin admin_pwd = admin user = H [CloudController] type = http local_port = 7400 custom_domains = fd991cf8-4716-4cd0-48bb-0f1aec96c5cc.***.me ```
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/frp#973
No description provided.