https://github.com/albertogeniola/container-nettool
Containerized Web utility useful to run basic network checks
https://github.com/albertogeniola/container-nettool
Last synced: 8 months ago
JSON representation
Containerized Web utility useful to run basic network checks
- Host: GitHub
- URL: https://github.com/albertogeniola/container-nettool
- Owner: albertogeniola
- License: mit
- Created: 2022-04-08T10:12:20.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2022-04-19T18:44:43.000Z (about 4 years ago)
- Last Synced: 2025-10-10T19:37:15.004Z (8 months ago)
- Language: TypeScript
- Size: 635 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Contributors][contributors-shield]][contributors-url]
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
[![MIT License][license-shield]][license-url]
[![LinkedIn][linkedin-shield]][linkedin-url]
## About The Project
This is no more than a containerized web-server (using Python Flask) that runs a bouch of simple tools to
debug things, especially when dealing with containerized environments.
You might be thinking: yeah, we don't need that, as we can easily attach to a running container, spawn a
shell and do our stuff from there. That is indeed correct, __but__ that gets harder when dealing with
serverless technologies as Google's CloudRun or AppEngine flexible.
Careful! This tool is not intended for production use.
This is a debugging container which HAS TO BE PROTECTED by some security layer (e.g. Google's IAP)
so that only allowed users can access it. Failure to do so would potentially leave a "backdoor" opened
for any system this container could reach, configuring it as a perfect vector to attack other workloads.
### Built With
* [Angular 11 + Typescript](https://nextjs.org/)
* [Flask + Python 3.10](https://reactjs.org/)
* [Docker](https://angular.io/)
## Getting Started
This repo contains all you need to build your version of the Container Net-Tool.
You just need to clone the repo, build the image and deploy it wherever needed.
To test it locally, here's what you need to do:
```sh
git clone https://github.com/albertogeniola/container-nettool.git
cd container-nettool
docker build -t net-tool:$(cat VERSION) .
CONTAINER_PORT=8080
docker run net-tool:$(cat VERSION) -p 0.0.0.0:5000:$CONTAINER_PORT/tcp -e PORT=$CONTAINER_PORT
```
Note: you must both expose the container port and tell the container which port it has to bind via the
PORT env var. This ensures best compatibility with Google CloudRun as it assumes the container port
can be changed at any time.
## License
Distributed under the MIT License. See `LICENSE.txt` for more information.
## Contact
Project Link: [https://github.com/albertogeniola/container-nettool](https://github.com/albertogeniola/container-nettool)
[contributors-shield]: https://img.shields.io/github/contributors/albertogeniola/container-nettool.svg?style=for-the-badge
[contributors-url]: https://github.com/albertogeniola/container-nettool/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/albertogeniola/container-nettool.svg?style=for-the-badge
[forks-url]: https://github.com/albertogeniola/container-nettool/network/members
[stars-shield]: https://img.shields.io/github/stars/albertogeniola/container-nettool.svg?style=for-the-badge
[stars-url]: https://github.com/albertogeniola/container-nettool/stargazers
[issues-shield]: https://img.shields.io/github/issues/albertogeniola/container-nettool.svg?style=for-the-badge
[issues-url]: https://github.com/albertogeniola/container-nettool/issues
[license-shield]: https://img.shields.io/github/license/albertogeniola/container-nettool.svg?style=for-the-badge
[license-url]: https://github.com/albertogeniola/container-nettool/blob/master/LICENSE.txt
[linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=for-the-badge&logo=linkedin&colorB=555
[linkedin-url]: https://linkedin.com/in/albertogeniola