...
- Only support containerized deployments
- Grouper in 2.5 will live in one directory in one container: /opt/grouper/grouperWebapp
- In Grouper 2.4 there were 4 directories: ws, ui, daemon, scim
- All code and libraries for all features of grouper will be in this one place
- A switch by command line or grouper-hibernate.properties will tell the container if it is a UI/WS/daemon/GSH, or it can be multiple
- You can fire up GSH from any container
- The grouper hibernate and morph params can be passed from env variable or params to container
- db url, db user, db pass, morph pass
- the passes can be paths of external files
- the db pass can be encrypted
- the entire "conf" directory can be mounted externally
- the log directory can me mounted outside the container
- any overlay can be attached to the webapp from /opt/grouper/shashRootslashRoot
- for instance, to overlay the grouper.properties, put a file in /opt/grouper/slashRoot/opt/grouper/grouperWebapp/WEB-INF/classes/grouper.properties
- So... to convert from tomcat to container:
- Install docker
- Run the ITAP base container with no changes and no dockerfile
- Pass in if WS/UI/daemon
- Either put configs in the database or external mount the conf dir
- Configure logging to log to mounted external file. Do this by mounting the conf dir, and configure the log4j.properties to log to external
- For the bootstrap (DB config), pass in or keep in mounted external files the db and morph creds (passwords should be in files)
- Map the ports so everything works
- Could be the apache port or tomcat port
- After that, the institution can at their own pace
- Use a password manager
- Put logs somewhere else besides host server
- Github/gitlab
- Continuous integration
- Use orchestration
- Run in cloud
- Whatever else we recommend
...