initial commit
This commit is contained in:
commit
587b3d02e1
3 changed files with 72 additions and 0 deletions
23
Dockerfile
Normal file
23
Dockerfile
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
ARG BUILD_FROM
|
||||||
|
FROM $BUILD_FROM
|
||||||
|
|
||||||
|
RUN apk add --no-cache curl
|
||||||
|
|
||||||
|
# Download FRP
|
||||||
|
RUN curl -L https://github.com/fatedier/frp/releases/download/v0.60.0/frp_0.60.0_linux_amd64.tar.gz -o frp.tar.gz
|
||||||
|
|
||||||
|
# Extract the downloaded tar.gz file
|
||||||
|
RUN tar -zxvf frp.tar.gz
|
||||||
|
|
||||||
|
# Move the FRPC binary to the desired location
|
||||||
|
RUN mv frp_0.60.0_linux_amd64/frpc /usr/local/bin/
|
||||||
|
|
||||||
|
# Clean up by removing unnecessary files
|
||||||
|
RUN rm -rf frp.tar.gz frp_0.60.0_linux_amd64
|
||||||
|
|
||||||
|
|
||||||
|
# Copy data for add-on
|
||||||
|
COPY run.sh /
|
||||||
|
RUN chmod a+x /run.sh
|
||||||
|
|
||||||
|
CMD [ "/run.sh" ]
|
24
config.yaml
Normal file
24
config.yaml
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
name: "FRP (Fast Reverse Proxy)"
|
||||||
|
description: "Expose internal services (like Home Assistant) securely to the internet using FRP"
|
||||||
|
version: "0.60.0"
|
||||||
|
slug: "frp"
|
||||||
|
init: false
|
||||||
|
arch:
|
||||||
|
- amd64
|
||||||
|
network:
|
||||||
|
mode: host
|
||||||
|
options:
|
||||||
|
server_addr: "<YOUR_FRP_SERVER_IP>"
|
||||||
|
server_port: 2113
|
||||||
|
token: "<YOUR_FRP_TOKEN>"
|
||||||
|
local_ip: "<actual local ip - e.g. 192.XXX...>"
|
||||||
|
local_port: 8123
|
||||||
|
remote_port: 8123
|
||||||
|
|
||||||
|
schema:
|
||||||
|
server_addr: str
|
||||||
|
server_port: int
|
||||||
|
token: str
|
||||||
|
local_ip: str
|
||||||
|
local_port: int
|
||||||
|
remote_port: int
|
25
run.sh
Normal file
25
run.sh
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
#!/usr/bin/with-contenv bashio
|
||||||
|
|
||||||
|
server_addr=$(bashio::config 'server_addr')
|
||||||
|
server_port=$(bashio::config 'server_port')
|
||||||
|
token=$(bashio::config 'token')
|
||||||
|
local_ip=$(bashio::config 'local_ip')
|
||||||
|
local_port=$(bashio::config 'local_port')
|
||||||
|
remote_port=$(bashio::config 'remote_port')
|
||||||
|
|
||||||
|
# Create FRP configuration file
|
||||||
|
echo "[common]" > /etc/frpc.ini
|
||||||
|
echo "server_addr = ${server_addr}" >> /etc/frpc.ini
|
||||||
|
echo "server_port = ${server_port}" >> /etc/frpc.ini
|
||||||
|
echo "token = ${token}" >> /etc/frpc.ini
|
||||||
|
|
||||||
|
echo "[ha_dashboard]" >> /etc/frpc.ini
|
||||||
|
echo "type = tcp" >> /etc/frpc.ini
|
||||||
|
echo "local_ip = ${local_ip}" >> /etc/frpc.ini
|
||||||
|
echo "local_port = ${local_port}" >> /etc/frpc.ini
|
||||||
|
echo "remote_port = ${remote_port}" >> /etc/frpc.ini
|
||||||
|
|
||||||
|
echo "--------------- FRP Configuration (frpc.ini): -----------------------"
|
||||||
|
cat /etc/frpc.ini
|
||||||
|
echo "Starting FRP Service..."
|
||||||
|
/usr/local/bin/frpc -c /etc/frpc.ini
|
Loading…
Add table
Reference in a new issue