让远程也能访问家里的电脑——frp反代
ssh连接上服务器后,新建一个名为ngingx_proxy_manager的文件夹用来存放文件和数据(最好建一个统一存放各种docker容器应用的目录)
mkdir /etc/docker/ngingx_proxy_manager &&
cd /etc/docker/ngingx_proxy_manager
新建docker-compose.yml文件并复制以下内容
# 编辑文件
vim docker-compose.yml
# 复制以下内容 shift+ins复制插入
version: "3"
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
# These ports are in format <host-port>:<container-port>
- '80:80' # Public HTTP Port
- '443:443' # Public HTTPS Port
- '81:81' # Admin Web Port
# Add any other Stream port you want to expose
# - '21:21' # FTP
environment:
DB_MYSQL_HOST: "db"
DB_MYSQL_PORT: 3306
DB_MYSQL_USER: "npm"
DB_MYSQL_PASSWORD: "npm"
DB_MYSQL_NAME: "npm"
# Uncomment this if IPv6 is not enabled on your host
# DISABLE_IPV6: 'true'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
depends_on:
- db
db:
image: 'jc21/mariadb-aria:latest'
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: 'npm'
MYSQL_DATABASE: 'npm'
MYSQL_USER: 'npm'
MYSQL_PASSWORD: 'npm'
volumes:
- ./data/mysql:/var/lib/mysql
:wq 保存文件
启动服务
docker-compose up -d
在确保云服务器防火墙已经放行80、81和443端口后即可访问服务器ip:81
进入ngingx_proxy_manager的web管理界面。默认密码为:
Email:
admin@example.com
Password:
changeme
输入密码,进入后台后会强制要求更改用户名和密码。
Docker 方法安装:
cd /root/data/docker_data/frps
touch frps.ini
vim docker-compose.yml
英文输入法下,按 i
version: '3.3'
services:
frps:
restart: always
network_mode: host
volumes:
- './frps.ini:/etc/frp/frps.ini'
container_name: frps
image: snowdreamtech/frps
按一下 esc
,然后:wq
保存退出,之后,
docker-compose up -d
Ok,这样我们就搭建好了 frp 的服务端了,不过,现在我们 frps.ini
里面啥也没有,需要我们来配置一下,这边贴一个咕咕的配置文件给大家参考,满足基本使用。
[common]
#frp 监听端口,与客户端绑定端口
bind_port= 5443
kcp_bind_port = 5443
#dashboard用户名
dashboard_user= gugu
#dashboard密码
dashboard_pwd= passwd
#dashboard端口,启动成功后可通过浏览器访问如http://ip:9527
dashboard_port= 9527
#设置客户端token,对应客户端有页需要配置一定要记住,如果客户端不填写你连不上服务端
token = 8ad3d1x429a2d
cd /root/data/docker_data/frps
vim frps.ini
然后粘贴上面的内容,之后在英文输入法下,按一下 esc
,然后:wq
保存退出。
最后,重启一下 frps 服务即可
docker-compose restart
好了,这边 frp 服务端我们就已经搞定了。(如果有更高级的需求,可以自行参考官方文档来添加内容。)