mirror of
https://github.com/aquasecurity/kube-bench.git
synced 2024-11-22 16:18:07 +00:00
Modify entrypoint to allow execution of kube-bench as default
This commit is contained in:
parent
3560bbbbfa
commit
0714683371
27
README.md
27
README.md
@ -19,10 +19,31 @@ kube-bench supports the tests for multiple versions of Kubernetes (1.6, 1.7 and
|
|||||||
|
|
||||||
You can either install kube-bench through a dedicated container, or compile it from source:
|
You can either install kube-bench through a dedicated container, or compile it from source:
|
||||||
|
|
||||||
1. Container installation:
|
### Running inside a container
|
||||||
Run ```docker run --rm -v `pwd`:/host aquasec/kube-bench:latest```. This will copy the kube-bench binary and configuration to you host. You can then run ```./kube-bench <master|node>```.
|
|
||||||
|
You can avoid installing kube-bench entirely by running it inside a container using the host PID namespace.
|
||||||
|
|
||||||
|
```
|
||||||
|
docker run --pid=host aquasec/kube-bench:latest <master|node>
|
||||||
|
```
|
||||||
|
|
||||||
|
You can even use your own configs by mounting them over the default ones in `/opt/kube-bench/cfg/`
|
||||||
|
|
||||||
|
```
|
||||||
|
docker run --pid=host -v path/to/my-config.yaml:/opt/kube-bench/cfg/config.yaml aquasec/kube-bench:latest <master|node>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Installing from a container
|
||||||
|
|
||||||
|
If you want to install a pre-built kube-bench, you can copy the kube-bench binary and configuration files to your host from the Docker container:
|
||||||
|
```
|
||||||
|
docker run --rm -v `pwd`:/host aquasec/kube-bench:latest install
|
||||||
|
```
|
||||||
|
|
||||||
|
You can then run `./kube-bench <master|node>`.
|
||||||
|
|
||||||
|
### Installing from sources
|
||||||
|
|
||||||
2. Install from sources:
|
|
||||||
If Go is installed on the target machines, you can simply clone this repository and run as follows (assuming your [$GOPATH is set](https://github.com/golang/go/wiki/GOPATH)):
|
If Go is installed on the target machines, you can simply clone this repository and run as follows (assuming your [$GOPATH is set](https://github.com/golang/go/wiki/GOPATH)):
|
||||||
|
|
||||||
```go get github.com/aquasecurity/kube-bench
|
```go get github.com/aquasecurity/kube-bench
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
if [ -d /host ]; then
|
if [ "$1" == "install" ]; then
|
||||||
|
if [ -d /host ]; then
|
||||||
mkdir -p /host/cfg/
|
mkdir -p /host/cfg/
|
||||||
yes | cp -rf /cfg/* /host/cfg/
|
yes | cp -rf /cfg/* /host/cfg/
|
||||||
yes | cp -rf /kube-bench /host/
|
yes | cp -rf /kube-bench /host/
|
||||||
@ -7,8 +8,12 @@ if [ -d /host ]; then
|
|||||||
echo "kube-bench is now installed on your host "
|
echo "kube-bench is now installed on your host "
|
||||||
echo "Run ./kube-bench to perform a security check "
|
echo "Run ./kube-bench to perform a security check "
|
||||||
echo "==============================================="
|
echo "==============================================="
|
||||||
else
|
else
|
||||||
echo "Usage:"
|
echo "Usage:"
|
||||||
echo " docker run --rm -v \`pwd\`:/host aquasec/kube-bench"
|
echo " install: docker run --rm -v \`pwd\`:/host aquasec/kube-bench install"
|
||||||
|
echo " run: docker run --rm --pid=host aquasec/kube-bench [command]"
|
||||||
exit
|
exit
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
exec kube-bench "$@"
|
||||||
fi
|
fi
|
||||||
|
Loading…
Reference in New Issue
Block a user