UPDATED APRIL 10, 2017 (3.1) Loaded as latest.
UPDATED MARCH 24, 2017 (3.0A) - General clean up to reduce process start failures.
HPE 3PAR StoreServ Management Console in a Docker container.
Pull the image = "docker pull 3parjunkie/ssmc"
Run a container = "docker run -di -p 443:8443 --name ssmc 3parjunkie/ssmc"
*The command above runs the image in the background, names the container "ssmc" and maps https port (443) to the SSMC secure port (8443)
Verify that the SSMC is running and listening on port 8443: "docker exec ssmc netstat -an | grep LISTEN"
Look for this ---> tcp 0 0 :::8443 :::* LISTEN
Stopping the container: "docker stop ssmc"
Restarting the container: "docker start ssmc"
Log into the SSMC (Admin/User Consoles)
*If the ssmc service is not running you can execute it manually: "docker exec -d ssmc /etc/init.d/ssmc restart"
This is unsupported by HPE, use at your own discretion.
I'd like to suggest a couple of new features for the next revision:
a) Add a variable to the dockerfile, eg STARTUP_TIMEOUT to allow the user to specify a timeout. In my implementation the 60 second timeout you have in the JAVA wrapper statements is not long enough.
b) Storage persistence.
Configuration persistence is pretty easy. I use a docker-compose file to control my use of this. /var/opt/hpe/ssmc/data is the directory that needs to be persisted. When you build your dockerfile, if you move all the info from /var/opt/hpe/ssmc/data to a different directory (e.g. /var/opt/hpe/ssmc/initial-data), then in the startup script /etc/init.d/ssmc you could check for the existence of files in /var/opt/hpe/ssmc/data, and if they aren't there, copy them over from .../initial-data. This way, if a user maps a volume to /var/opt/hpe/ssmc/data, upon initial startup the directory gets properly populated and after that it will detect and use the persisting data.