Last month the NetApp SolidFire integrations team released the latest PowerShell Tools for managing SolidFire systems. This release (18.104.22.168) is the first release to also include direct support for the module outside of Microsoft Windows operating environments. Leveraging the recently open-sourced .Net Core, this release allows us to deploy the SolidFire PowerShell Tools on Linux, macOS, and Docker container images.
The NetApp SolidFire PowerShell Tools image can be found on NetApp’s Docker Hub location https://hub.docker.com/u/netapp/ or called directly from a Docker command.
On MacOS running Docker I can execute the following
docker run -it -v $(pwd):/scripts netapp/solidfire-powershell
The volume mount section allows you to mount a local directory to the /scripts directory within the container. This command sets the current working path for the session to mount to the /scripts directory.
Like many folks I tend to put my scripts in my Github directory and want to access it when I deploy. Yes. I know I can change my working directory to that directory before launching the container. However, I want to change the mount as it may be dynamic in my future use.
Instead I want to mount directly to my GitHub directory. In order to do this I modify the volume mount info by changing the path value on the left side of the colon. I added the quotation marks in case your path has a space in it:
docker run -it -v "/Users/jatwell/Documents/Github/":/scripts netapp/solidfire-powershell
As you can see I have launched the container with my GitHub directory successfully mounted to /scripts within the container. Those scripts are now available within my container session. I can now browse and execute PowerShell scripts on my local Macbook Pro against my lab without a jump box.
You can see a full demo of getting started with the NetApp SolidFire PowerShell Tools on Docker by our developer Adam Haid.
I highly recommend you go out and explore the new methods for running PowerShell and managing SolidFire in your environments. Expect more content leveraging these new capabilities in the future. Have an interesting use case for these capabilities? Share it with us and we can explore it.