Så här integrerar du Esadax privata behållarregister med Kubernetes med hjälp av imagePullSecrets – plus valfri vägledning om spegling till GitHub Container Registry (GHCR).
För att hämta privata behållaravbildningar som finns på esadax-registry.esadax.sh måste du skapa en Kubernetes-hemlighet och referera till den i din distribution eller podspecifikation.
kubectl create secret docker-registry esadax-registry-creds \
--docker-server=esadax-registry.esadax.sh \
--docker-username=your_username \
--docker-password=your_token \
--docker-email=your@email.com
💡 Ersätt
your_tokenmed en personlig åtkomsttoken eller CI-token från Esadax. Du kan byta namn påesadax-registry-credsefter behov för din miljö.
apiVersion: apps/v1
kind: Deployment
metadata:
name: private-app
spec:
replicas: 1
selector:
matchLabels:
app: private-app
template:
metadata:
labels:
app: private-app
spec:
containers:
- name: app
image: esadax-registry.esadax.sh/my-project/my-app:latest
ports:
- containerPort: 80
imagePullSecrets:
- name: esadax-registry-creds
✅ När den har distribuerats kommer Kubernetes att använda den refererade hemligheten för att autentisera med Esadax register och dra din bild.
Om du vill spegla dina bilder till GHCR (t.ex. för redundans eller offentlig delning) följer du dessa steg.
# Authenticate to GHCR
echo $GHCR_TOKEN | docker login ghcr.io -u YOUR_GITHUB_USERNAME --password-stdin
# Tag the existing image
docker tag esadax-registry.esadax.sh/my-project/my-app:latest ghcr.io/YOUR_GITHUB_USERNAME/my-app:latest
# Push to GitHub
docker push ghcr.io/YOUR_GITHUB_USERNAME/my-app:latest
Se till att GitHub-förrådet är offentligt eller korrekt konfigurerat för privat åtkomst med finkorniga personliga åtkomsttokens.
imagePullSecrets globalt med hjälp av ett ServiceAccount, om din miljö stöder det.