Ana içeriğe geç

Nexus Usage

If your organization has defined a docker-proxy repository on Nexus, configure containerd registry mirrors on Kubernetes worker nodes and update image paths in Apinizer deployment files according to the Nexus address.

bilgi

Replace the <NEXUS_HOST> placeholder in this page with your organization's registry address (e.g. repo.xxx.gov.tr). Path segments (docker-proxy, etc.) may vary based on your Nexus configuration.

Modern Kubernetes installations use containerd. Apply this configuration on all worker nodes in the cluster.

Edit containerd config.toml
sudo su
sudo vi /etc/containerd/config.toml

Add the following mirror definition under [plugins."io.containerd.grpc.v1.cri".registry] (replace <NEXUS_HOST> with your registry address):

[plugins."io.containerd.grpc.v1.cri".registry.mirrors."<NEXUS_HOST>"]
endpoint = ["https://<NEXUS_HOST>"]

Example:

[plugins."io.containerd.grpc.v1.cri".registry.mirrors."repo.xxx.gov.tr"]
endpoint = ["https://repo.xxx.gov.tr"]
Restart containerd service
sudo systemctl restart containerd
sudo systemctl status containerd
Verify image pull

Test that the image can be pulled on the node:

sudo ctr images pull <NEXUS_HOST>/docker-proxy/apinizercloud/cache:<APINIZER_VERSION>

Example:

sudo ctr images pull repo.xxx.gov.tr/docker-proxy/apinizercloud/cache:2025.07.6

Kubernetes Deployment Configuration

Update the image field in Deployment, StatefulSet, or Helm values files according to your Nexus path structure:

image: <NEXUS_HOST>/docker-proxy/apinizercloud/cache:<APINIZER_VERSION>

Example:

image: repo.xxx.gov.tr/docker-proxy/apinizercloud/cache:2025.07.6

Use the same path pattern for other Apinizer components:

# API Manager
image: repo.xxx.gov.tr/docker-proxy/apinizercloud/apimanager:<APINIZER_VERSION>

# Worker
image: repo.xxx.gov.tr/docker-proxy/apinizercloud/worker:<APINIZER_VERSION>

# Integration
image: repo.xxx.gov.tr/docker-proxy/apinizercloud/integration:<APINIZER_VERSION>

# API Portal
image: repo.xxx.gov.tr/docker-proxy/apinizercloud/apiportal:<APINIZER_VERSION>

If Using Docker Runtime

On legacy environments or nodes using Docker runtime, edit /etc/docker/daemon.json. Apply the same configuration on all nodes using Docker.

sudo vi /etc/docker/daemon.json
{
"data-root": "/docker-data",
"insecure-registries": ["<NEXUS_HOST>"],
"registry-mirrors": ["https://<NEXUS_HOST>"],
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2"
}
sudo systemctl daemon-reload
sudo systemctl restart docker
docker info
not

For certificate or image pull errors, see Kubernetes, Docker and Containerd Troubleshooting.