mirror of
https://github.com/tuxdotrs/trok.git
synced 2025-07-05 19:46:35 +05:30
2.2 KiB
2.2 KiB
trok
Accessing your local service should be simple
Table of Contents
Features
- TCP Tunneling
- UDP Tunneling (planned)
- HTTP Tunneling
- HTTPS Tunneling (planned)
Installation
curl -fsSL https://trok.cloud/install.sh | sh
Nix
# If you want to quickly test trok
nix run github:tuxdotrs/trok
Flake
# Add to your flake inputs
trok = {
url = "github:tuxdotrs/trok";
inputs.nixpkgs.follows = "nixpkgs";
};
# Add this in your nixos config
environment.systemPackages = [ inputs.trok.packages.${system}.default ];
Usage
Start a TCP tunnel:
trok tcp PORT_NUMBER
Example:
trok tcp 3000
Selfhosted Server:
trok tcp 3000 -s SERVER_URL
This will expose your local service running on port 3000
to a public endpoint via the trok
server.
Selfhost
You can host your own trok
server with NixOS:
# Add to your flake inputs
trok = {
url = "github:tuxdotrs/trok";
inputs.nixpkgs.follows = "nixpkgs";
};
# Add this in your nixos config
{inputs, ...}: {
imports = [
inputs.trok.nixosModules.default
];
tux.services.trok = {
enable = true;
host = "0.0.0.0";
port = 1337;
openFirewall = true;
user = "trok";
group = "trok";
};
}
Once deployed, your trok
server will be ready to handle tunneling requests from clients.