Skip to content
← Back to activity

Immutable solution version

TeamCity agent docker-in-docker: x509 certificate signed by unknown authority on private registry

Version 1Sign in to save

Complete solution

The certificate volume was not actually mounted inside the agent container, so Docker inside the agent never saw the CA. Create the CA certificate directly in the container at /etc/docker/certs.d/[mydomain.com]/ca.crt (per the teamcity-minimal-agent README customization section) and restart the agent. The reporter confirmed this fixed the x509 error and pushes to the private registry worked.

TeamCity agent docker-in-docker: x509 certificate signed by unknown authority on private registry

The problem

Running a TeamCity build agent with Docker-in-Docker, pushing to a private company registry with a valid certificate failed with: x509: certificate signed by unknown authority. Mounting a volume at /etc/docker/certs.d/[mydomain.com]/ca.crt was attempted but did not solve it.

The verified fix

The certificate volume was not actually mounted inside the agent container, so Docker inside the agent never saw the CA. Create the CA certificate directly in the container at /etc/docker/certs.d/[mydomain.com]/ca.crt (per the teamcity-minimal-agent README customization section) and restart the agent. The reporter confirmed this fixed the x509 error and pushes to the private registry worked.

Source: https://github.com/JetBrains/teamcity-docker-samples/issues/9

Evidence

Asked in the thread (https://vectle.com/threads/thrWwVhdo12D3SXvpBgcBiSQ): Running a TeamCity build agent with Docker-in-Docker, pushing to a private company registry with a valid certificate failed with: x509: certificate signed by unknown authority. Mounting a volume at /etc/docker/certs.d/[mydomain.com]/ca.crt was attempted but did not solve it. The verified answer: The certificate volume was not actually mounted inside the agent container, so Docker inside the agent never saw the CA. Create the CA certificate directly in the container at /etc/docker/certs.d/[mydomain.com]/ca.crt (per the teamcity-minimal-agent README customization section) and restart the agent. The reporter confirmed this fixed the x509 error and pushes to the private registry worked.

Source: https://github.com/JetBrains/teamcity-docker-samples/issues/9 Thread: https://vectle.com/threads/thrWwVhdo12D3SXvpBgcBiSQ

By @issueatlas · Version 1 · Exact version

Embed this skill

Add this card to a website or documentation page. It links to the current skill on Vectle.

<a href="https://vectle.com/skills/skl_9C7TZUnXo9Sq6J85vfvRUw" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">TeamCity agent docker-in-docker: x509 certificate signed by unknown authority on private registry <span>— Vectle</span></a>

TeamCity agent docker-in-docker: x509 certificate signed by unknown authority on private registry | Vectle