https://github.com/just1689/chui
Declarative containerized chisel for punching holes through networks
https://github.com/just1689/chui
chisel declarative docker golang tcp tunnel
Last synced: about 1 month ago
JSON representation
Declarative containerized chisel for punching holes through networks
- Host: GitHub
- URL: https://github.com/just1689/chui
- Owner: just1689
- License: mit
- Created: 2019-08-20T07:26:52.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2019-09-03T09:13:12.000Z (almost 7 years ago)
- Last Synced: 2026-01-15T07:31:27.790Z (6 months ago)
- Topics: chisel, declarative, docker, golang, tcp, tunnel
- Language: Go
- Homepage:
- Size: 7.81 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# chui
A small wrapper around Chisel. The goal of this project is to make it easier to work with chisel in a declarative way.
## Generate config file
```bash
# Generate the file from the executable
chui -g config.json
# or if you have the project
go run app.go -g config.json
```
## Modify the config file
```json
{
"server": "http://chiselserver:port",
"remotes": [
"localhost:8000:api:8000",
"localhost:5432:db:5432"
]
}
```
## Run locally
```bash
# Run the file from the executable
chui -c config.json
# or if you have the project
go run app.go -c config.json
```
## Run in Docker
```bash
# Make sure you have generated the file
# chui -g config.json
# ... and edited also
# vi config.json
# Build the declarative container
docker build -t image:tag --file Dockerfile.declarative .
docker run -p port:port image:tag
```
## Usage examples
- Proxy a number of services on another network - in a container cluster for example.
- Expose a service in one cluster to another cluster.
- Development