I don’t have a ready answer for you, other than setting up headless browsers in any CI system can be a royal pain. I would recommend using the SSH option so you can tinker, rather than going through the laborious tweak-commit-push-rebuild cycle for every item to try.
Personally, I do all my headless testing in Docker† - it lets me get it working locally, and then it Just Works remotely. However the project for which I have done that on CircleCI used PhantomJS, which is now very dead. One day I will get that working on Chrome Driver or Selenium. However, at least it demonstrates to me that headless browser testing is very possible.
† So in Circle CI, this is Docker-in-Docker.