https://github.com/pexmor/tooldock
Toolbox in a docker. A collection of utilities used in various situation. By containerizing them it is host OS independent.
https://github.com/pexmor/tooldock
bash containers docker dockerfile tmux toolbox tools
Last synced: about 2 months ago
JSON representation
Toolbox in a docker. A collection of utilities used in various situation. By containerizing them it is host OS independent.
- Host: GitHub
- URL: https://github.com/pexmor/tooldock
- Owner: PexMor
- License: mit
- Created: 2020-10-13T06:53:52.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2021-07-06T11:29:40.000Z (almost 5 years ago)
- Last Synced: 2025-05-17T14:09:24.638Z (about 1 year ago)
- Topics: bash, containers, docker, dockerfile, tmux, toolbox, tools
- Language: Shell
- Homepage:
- Size: 12.7 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Tooldock
Toolbox in a docker.
__Purpose:__ use docker as lightweight VM
__Use-cases:__
* multitude of VPNs (VPNs tends to override complete networking)
* run small portable apps (i.e. certmonger)
## General usage
Ingredients:
* the Docker installed
* the image (made by `01build.sh`)
* installed `tmux` (or `screen`)
### Inside the host terminal
You would need the running container and then attach to that container using multiple consoles.
1. start the container `./05run.sh`
2. start `tmux` session
### Life inside the tmux session
1. attach to the running container `./10exec.sh` - start interactive shell
2. attach to it again from second tmux pane (new pane `Ctrl + b and c`)
3. detach from the `tmux` and let it live in the background (detach: `Ctrl + b and d`, re-attach using `tmux a`)
> Note: to rename pane `Ctrl + b and ,`, to list sessions `tmux ls`
## Bash netns
This a small and independent script that let's you enter network namespace without need of containers. It utilizes the excelent tool of iproute2, which offers subcommand `netns`.
It consists of two files the main script `70netNsBash.sh` and the customization script `custom_ns_bash.sh` which __NOT__ part of the repo as it will be... well custom. But there is an example you can start with `custom_ns_bash.sh.example`.