Windchill runs well in containers, but not by accident. A few things we learned the hard way.
Size memory for the container, not the host
Method servers that are given memory limits without matching memory settings get killed at the worst moment. Set memory explicitly and leave headroom.
Treat the vault as a first-class dependency
File vaults on cloud file shares behave differently from local disks. Latency on small files matters more than throughput. Measure it before go-live, and monitor it afterwards.
Rehearse rollbacks
A rollback that has only been described is not a rollback. Every pipeline we build includes a rollback job that is exercised on the test environment with every release.
Clone environments on demand
The single biggest quality-of-life improvement for most teams is being able to refresh a test environment from production in a couple of hours. Once that exists, testing stops being negotiable.