A lightweight, multi-tool Docker image with SSL automation, Docker diagnostics and CLI utilities β designed for development and debugging workflows.
Registry | Image Name |
---|---|
Docker Hub | docker.io/infocyph/tools |
GitHub Container | ghcr.io/infocyph/tools |
- Lightweight Alpine-based container
- Auto-generates trusted development certificates using
mkcert
- Supports server and client certificate generation
- Wildcard domain certs via virtual host file scanning
- Includes tools like
curl
,git
,openssl
,nmap
,jq
,tree
, andncdu
- Interactive Docker TUI via
lazydocker
- Host volumes supported for cert persistence and dynamic vhost domain input
- Bundles
.p12
client certificates - Set timezone via environment variable
TZ
Tool | Purpose |
---|---|
mkcert |
Generate local CA-signed SSL certs |
mkhost |
Generate nginx, apache host configuration |
openssl |
Certificate inspection, bundling |
lazydocker |
TUI-based Docker management |
curl /wget |
Web endpoint testing |
jq |
JSON manipulation |
nmap |
Network scanner |
net-tools |
IP, ARP, routing, and ifconfig commands |
ncdu |
Disk usage visualizer |
tree |
Directory structure visualizer |
bash , coreutils |
POSIX compatibility and scripting |
On container startup, the included certify.sh
script:
- Scans all
*.conf
files under/etc/share/vhosts/**
- Extracts domain names from filenames
- Adds wildcard versions automatically
- Generates server and client certificates using
mkcert
The script looks for .conf
files in any subdirectory under /etc/share/vhosts
.
Filename β Domains:
File Name | Domains Generated |
---|---|
test.local.conf |
test.local , *.test.local |
example.com.conf |
example.com , *.example.com |
internal.dev.site.conf |
internal.dev.site , *.internal.dev.site |
Additionally added automatically:
localhost
127.0.0.1
::1
services:
certgen:
image: infocyph/docker-tools
container_name: docker-tools
volumes:
- ../../configuration/apache:/etc/share/vhosts/apache:ro
- ../../configuration/nginx:/etc/share/vhosts/nginx:ro
- ../../configuration/ssl:/etc/mkcert
- ../../configuration/rootCA:/etc/share/rootCA
- /var/run/docker.sock:/var/run/docker.sock
π This container can run as a one-shot cert generator or as a long-lived utility box.
Certificate Type | Files Generated |
---|---|
Apache (Server) | apache-server.pem , apache-server-key.pem |
Apache (Client) | apache-client.pem , apache-client-key.pem |
Nginx (Server) | nginx-server.pem , nginx-server-key.pem |
Nginx (Proxy) | nginx-proxy.pem , nginx-proxy-key.pem |
Nginx (Client) | nginx-client.pem , nginx-client-key.pem , nginx-client.p12 |
π‘οΈ All generated certs are placed in /etc/mkcert
.
docker run --rm -it \
-v $(pwd)/configuration/apache:/etc/share/vhosts/apache:ro \
-v $(pwd)/configuration/nginx:/etc/share/vhosts/nginx:ro \
-v $(pwd)/configuration/ssl:/etc/mkcert \
infocyph/tools
docker exec -it docker-tools lazydocker
Make sure /var/run/docker.sock
is mounted.
Licensed under the MIT License
Β© infocyph, abmmhasan
Encountered a problem or want to suggest a feature?
Open an issue or start a discussion!