Skip to main content
Confirm root, crt, and db.dataSource in ca.json are rewritten to /home/step/.step/... before you run the container. The container mounts your ~/.step directory at /home/step/.step, so the host-absolute paths that step ca init wrote do not exist inside it and the container exits immediately. See Configure step-ca to use CryptoHub.

Confirm the PKCS #12 password is in your shell

The container needs PKCS11_P12 so the FXPKCS11 module can open client.p12. You pass it through from your shell, and /etc/profile.d scripts populate login shells only, so an empty variable is passed silently rather than reported as an error.
Shell
If this prints an empty line, the container starts and then fails to authenticate to the CryptoHub. Start a new login shell and check again before you continue. When you run the container with sudo, the variable is expanded by your own shell before sudo runs, so -e PKCS11_P12="$PKCS11_P12" still passes the value, but only if your shell holds one.

Start the CA

Run the container. Replace <CA-PASSWORD-FILE> with the path to the password file you created in Configure step-ca to use CryptoHub, for example /tmp/ca-password.txt.
Shell
The flags carry the following meaning:
Follow the container log and confirm the CA is serving:
Shell
The startup output ends with:
Shell
Serving HTTPS on :9000 ... is the line that confirms the CA is up. If the container exits before printing it, the log line immediately above names the cause. See Troubleshooting.

Confirm the CryptoHub session

The FXPKCS11 log is the proof that the CA reached the appliance rather than falling back to something local. The module writes it to the path in the LOG-FILE setting of fxpkcs11.cfg, and falls back to /tmp/fxpkcs11.log when it cannot write to that path.
Shell
The log records the module initializing, loading the TLS material from /usr/local/lib/fxpkcs11, opening a session to your CryptoHub on port 2001, and logging in:
Shell
To keep the FXPKCS11 log on the host for troubleshooting after the container stops, add -v /tmp:/tmp to the run command and read /tmp/fxpkcs11.log on the host instead.
If the container exits instead of serving, check sudo docker logs stepca and see Troubleshooting.