Common CLIs packaged in containers with a HTTP interface
About these functions:
- They are multi-arch - for
- They are built with
- They are built and published to GHCR as container images to avoid the Docker Hub's rate limits
You may also like the bash template for OpenFaaS, so you can perform multiple tasks with CLIs or call your scripts over HTTPS.
Using the functions
You can deploy them through openfaas on Kubernetes, or openfaas on a VM with faasd.
faas-cli store deploy curl faas-cli store deploy nodeinfo faas-cli deploy --image ghcr.io/openfaas/alpine:latest \ --name env --fprocess="env"
faas-cli store deploy nmap echo -n "-sP 192.168.0.0/24" faas-cli invoke nmap
Or run them ad-hoc with Docker:
docker run -p 8080:8080 --name hey \ -d ghcr.io/openfaas/hey:latest curl http://127.0.0.1:8080 -d "-c 5 -n 1000 https://your-service.com/"
alpine- a base for running built-in bash or busybox commands like
env(use it to debug headers) or
wc -lto count text within a body
curl- debug outgoing networking or internal services
figlet- print ASCII logso
hey- run a load-test against a HTTP API, website, or function with hey
nmap- scan a network range
nodeinfo- debug auto-scaling, find the container's memory, CPU information and uptime
sleep- debug timeouts or async by sleeping for a set duration
sentimentanalysis- use Python's textblob library to find out if a statement is positive or negative
shasum- generate a SHA for a given input