castled

Crates.iocastled
lib.rscastled
version0.0.1-alpha.3
sourcesrc
created_at2024-07-17 05:08:13.627132
updated_at2024-08-09 02:38:04.449002
descriptionBest tunnel for development and kubernetes
homepage
repositoryhttps://github.com/openosaka/castle
max_upload_size
id1305818
size229,801
Sword (sword-jin)

documentation

README

Castle

Crates.io Go Pkg CI Test License

Castle is a simple tunnel based on GRPC that allows you to expose your local services to the internet, but it's mainly designed for 🌟testing and ✨development purposes.

It resolves the problem of the traffic inside k8s reach your local services, the great advantage of this idea is that you can mocking any external service in your _test file, no matter which language you are using.

You can use this tool when you are considering:

  • I want to expose my local service to the kubernetes cluster.
    • access the local database, redis, etc from the k8s cluster
  • I want to mock a external service(e.g. Google, Slack, etc) when I'm doing integration tests.

Basically, this tunnel is primarily for this purpose. If you want to expose your local service to the internet, ngrok, frp or other tools are more suitable for you.

Features

  • Tcp tunnel
    • specify the remote port
    • random remote port if not specified
  • Udp tunnel
    • specify the remote port
    • random remote port if not specified
  • Http tunnel
    • specify the domain
    • specify the subdomain
    • specify the remote port
    • random subdomain if --random-subdomain is specified
    • random remote port if not specified
    • support http/1.1
      • Upload file
      • Download file
    • support http/2
Commit count: 0

cargo fmt