It is now possible to set the user login (instead of having it hardcoded to "docker"). Also, various actions have been broken out in separate functions to facilitate future maintenance.