help apps
Your own address: https://you.tun.runv.club
Whatever listens on the socket /run/runv-apps/you/app.sock shows up
there. Two ways to fill it:
1. A tunnel from your own machine, like pico.sh's tuns. Run your app
locally (say on port 8000), then:
ssh -R /run/runv-apps/you/app.sock:localhost:8000 you@runv.club -N
It's live while that ssh runs.
2. An app running here, kept alive by systemd. Example in python,
~/app.py:
import http.server, socketserver, os
sock = "/run/runv-apps/" + os.environ["USER"] + "/app.sock"
if os.path.exists(sock): os.remove(sock)
class H(http.server.BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200); self.end_headers()
self.wfile.write(b"hello from runv\n")
os.umask(0o007)
socketserver.UnixStreamServer.allow_reuse_address = True
with socketserver.UnixStreamServer(sock, H) as s: s.serve_forever()
~/.config/systemd/user/runv-app.service:
[Service]
ExecStart=/usr/bin/python3 %h/app.py
Restart=on-failure
[Install]
WantedBy=default.target
then: systemctl --user enable --now runv-app
The socket must be readable by its group (umask 007). Your app counts
against your 1 GB of RAM and 200 processes, and the rules still apply:
no proxies, and don't collect your visitors' data.