docker frps 配置服務端服務
阿新 • • 發佈:2020-09-02
準備
- 域名解析 將frp.xx.com解析到伺服器ip,將泛域名 *.frp.xx.com解析到frp.xx.com即可
- https證書申請 泛域名證書現在可以用acme.sh申請Let's Encrypt證書,先挖個坑,後續再寫一篇補上
- GitHub下載最新編譯檔案 GitHub frp releases
- 複製frps和frps.ini檔案到frps目錄下
frps
--frps
--frps.ini
--Dockerfile
- 修改frps.ini配置檔案
只需要按需修改
name | value | rmk |
---|---|---|
vhost_http_port | 8888 | http埠 |
vhost_https_port | 445 | https埠 |
dashboard_user | username | web管理端管理員賬戶 |
dashboard_pwd | password | web管理端管理員密碼 |
subdomain_host | frp.xx.com | 子域名配置 |
# [common] is integral section [common] # A literal address or host name for IPv6 must be enclosed # in square brackets, as in "[::1]:80", "[ipv6-host]:http" or "[ipv6-host%zone]:80" bind_addr = 0.0.0.0 bind_port = 7000 # udp port to help make udp hole to penetrate nat bind_udp_port = 7001 # udp port used for kcp protocol, it can be same with 'bind_port' # if not set, kcp is disabled in frps kcp_bind_port = 7000 # specify which address proxy will listen for, default value is same with bind_addr # proxy_bind_addr = 127.0.0.1 # if you want to support virtual host, you must set the http port for listening (optional) # Note: http port and https port can be same with bind_port vhost_http_port = 8888 vhost_https_port = 445 # response header timeout(seconds) for vhost http server, default is 60s # vhost_http_timeout = 60 # set dashboard_addr and dashboard_port to view dashboard of frps # dashboard_addr's default value is same with bind_addr # dashboard is available only if dashboard_port is set dashboard_addr = 0.0.0.0 dashboard_port = 7500 # dashboard user and passwd for basic auth protect, if not set, both default value is admin dashboard_user = user dashboard_pwd = 124356aabb # dashboard assets directory(only for debug mode) # assets_dir = ./static # console or real logFile path like ./frps.log log_file = /frps/frps.log # trace, debug, info, warn, error log_level = info log_max_days = 3 # disable log colors when log_file is console, default is false disable_log_color = false # auth token token = tokenwords # heartbeat configure, it's not recommended to modify the default value # the default value of heartbeat_timeout is 90 # heartbeat_timeout = 90 # only allow frpc to bind ports you list, if you set nothing, there won't be any limit allow_ports = 2000-3000,3001,3003,4000-50000 # pool_count in each proxy will change to max_pool_count if they exceed the maximum value max_pool_count = 5 # max ports can be used for each client, default value is 0 means no limit max_ports_per_client = 0 # if subdomain_host is not empty, you can set subdomain when type is http or https in frpc's configure file # when subdomain is test, the host used by routing is test.frps.com subdomain_host = frp.xx.com # if tcp stream multiplexing is used, default is true tcp_mux = true # custom 404 page for HTTP requests # custom_404_page = /path/to/404.html
- 修改Dockerfile檔案
FROM centos
WORKDIR /frp
COPY . .
RUN chmod -R 777 /frp
CMD ["/frp/frps","-c","/frp/frps.ini"]
- 建立映象
frps目錄下執行
docker build -t frps .
- 建立並啟動容器
docker run -d --restart=always -p 7000:7000 -p 7500:7500 -p 8888:8888 -p 445:445 --name frps_server frps