No description
  • Rust 92.7%
  • Shell 6.3%
  • PowerShell 0.5%
  • Dockerfile 0.5%
Find a file
gofix f9a590a705
All checks were successful
Rust CI / Format, lint, and test (push) Successful in 1m0s
Build and publish container image / Build linux/arm64 image (push) Successful in 3m24s
chore: retarget upstream portal-tunnel v2.3.2 (#80)
chore: retarget upstream portal-tunnel v2.3.2
2026-06-06 14:00:44 +00:00
.forgejo/workflows ci: disable kaniko registry cache push (#59) 2026-05-03 17:23:59 +00:00
crates/portal-relay chore: retarget upstream portal-tunnel v2.3.2 (#80) 2026-06-06 14:00:44 +00:00
docs chore: retarget upstream portal-tunnel v2.3.2 (#80) 2026-06-06 14:00:44 +00:00
fixtures/go chore: retarget upstream portal-tunnel v2.3.2 (#80) 2026-06-06 14:00:44 +00:00
scripts chore: retarget upstream portal-tunnel v2.3.2 (#80) 2026-06-06 14:00:44 +00:00
.dockerignore initial commit 2026-05-02 02:01:05 +09:00
.gitignore initial commit 2026-05-02 02:01:05 +09:00
Cargo.lock chore: retarget upstream portal-tunnel v2.3.2 (#80) 2026-06-06 14:00:44 +00:00
Cargo.toml chore: retarget upstream portal-tunnel v2.3.2 (#80) 2026-06-06 14:00:44 +00:00
docker-compose.yml chore: retarget upstream portal-tunnel v2.2.4 2026-05-28 10:42:57 +00:00
Dockerfile chore: retarget upstream portal-tunnel v2.3.1 (#79) 2026-06-06 06:24:35 +00:00
README.md chore: retarget upstream portal-tunnel v2.3.2 (#80) 2026-06-06 14:00:44 +00:00

portal-tunnel-rs

A lightweight Rust port of the portal-tunnel relay-server.

Compatible with upstream portal-tunnel v2.3.2. Not every upstream feature is implemented — see docs/unsupported-features.md for the support matrix. For the release-cycle workflow (retargeting at a new upstream, or shipping a port-level patch), see docs/RELEASE.md.

Quick start

Published images are linux/arm64 only.

docker pull code.rly.best/gofix/portal-tunnel-rs:latest
docker run --rm --cap-add=NET_ADMIN --cap-add=NET_BIND_SERVICE \
  -p 4017:4017 -p 443:443 \
  code.rly.best/gofix/portal-tunnel-rs:latest

A reference docker-compose.yml with persistent cert volume is included in this repo. For linux/amd64 you can build from source — cargo build --release --bin portal-relay works on any host with a Rust toolchain.

Configuration

All settings are configured through environment variables (or the equivalent --flag form). Run portal-relay --help to see the full list.

Release tags

Tags are v<upstream>+rs.<n> (or v<upstream>-rs.<n> for container images, since the OCI tag spec disallows +):

  • v2.1.8+rs.1 → first stable Rust build for upstream v2.1.8
  • v2.1.9+rs.1 → first build retargeted at upstream v2.1.9
  • v2.2.0+rs.1 → first build retargeted at upstream v2.2.0
  • v2.2.1+rs.1 → first build retargeted at upstream v2.2.1
  • v2.2.2+rs.1 → first build retargeted at upstream v2.2.2
  • v2.2.3+rs.1 → first build retargeted at upstream v2.2.3
  • v2.2.4+rs.1 → first build retargeted at upstream v2.2.4
  • v2.2.5+rs.1 → first build retargeted at upstream v2.2.5
  • v2.3.0+rs.1 → first build retargeted at upstream v2.3.0
  • v2.3.1+rs.1 → first build retargeted at upstream v2.3.1
  • v2.3.2+rs.1 → first build retargeted at upstream v2.3.2

Pick the tag whose upstream component matches the portal-tunnel version your clients expect.