Installation Troubleshooting

Here are the solutions for some known issues and pitfalls.

Folder not shared from host

$ ./run.sh get_netapp volume -H sim91
docker: Error response from daemon: Mounts denied: 
The path /usr/local/check_netapp_pro/etc
is not shared from OS X and is not known to Docker.
You can configure shared paths from Docker -> Preferences... -> File Sharing.
See https://docs.docker.com/docker-for-mac/osxfs/#namespaces for more info.
.
ERRO[0000] error waiting for container: context canceled 

The hosts folder /usr/local/check_netapp_pro must be shared with docker. Some super secure OS like macOS require the admin to explicitly allow this. Please consult your local dockers user-interface as told by the error-message.

store-files are owned by the root-user

The Store-files on the host are created by the root-user since they are created out of the docker container. This is not a problem by itself but may be not what you want in your environment. The solutions depend on the docker implementation.

Here is one workaround we found. Add the following line to your run.sh:

--user "$(id -u):$(id -g)"

Se also https://vsupalov.com/docker-shared-permissions/

Authfile requested from legacy Perl scripts

Only if you are calling legacy Perl scripts directly (not with check_netapp or get_netapp) the default of the authfile is /usr/local/nagios/etc and not /usr/local/check_netapp_pro/etc.

E.g. ./run.sh check_netapp_pro.pl ... would expect the authfile by default in /usr/local/nagios/etc. We recommend to symlink it from the new default-location (/usr/local/check_netapp_pro/etc/netapp_credentials) to the old one.

Port still read from the authfile

Some getter still read the port from the authfile. Make sure to remove any port entry from the authfile so that the port can be choosen depending on the protocoll (https with port 443 is the default, --no-ssl switches to http with port 80).