Skip to content

Instantly share code, notes, and snippets.

@scorpion1201
Created April 14, 2023 04:38
Show Gist options
  • Save scorpion1201/ba33dc4e7ad35de94e97180dc050091e to your computer and use it in GitHub Desktop.
Save scorpion1201/ba33dc4e7ad35de94e97180dc050091e to your computer and use it in GitHub Desktop.
To deploy docker registry on k8s
apiVersion: v1
kind: Namespace
metadata:
name: image-registry
---
apiVersion: v1
kind: ConfigMap
metadata:
name: docker-registry
namespace: image-registry
data:
registry-config: |
version: 0.1
log:
fields:
service: registry
loglevel: info
storage:
s3:
accesskey: AWS_S3_ACCESS_KEY
secretkey: AWS_S3_SECRET_KEY
region: AWS_S3_REGION
bucket: AWS_S3_BUCKET_NAME
secure: true
cache:
blobdescriptor: inmemory
delete:
enabled: true
redirect:
disable: false
http:
addr: :5000
headers:
X-Content-Type-Options: [nosniff]
health:
storagedriver:
enabled: true
interval: 10s
threshold: 3
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: docker-registry
namespace: image-registry
spec:
replicas: 1
selector:
matchLabels:
app: docker-registry
template:
metadata:
labels:
app: docker-registry
spec:
containers:
- name: docker-registry
image: registry:2
env:
- name: REGISTRY_HTTP_SECRET
value: HTTP_SECRET_KEY
ports:
- containerPort: 5000
volumeMounts:
- name: config
mountPath: /etc/docker/registry/config.yml
readOnly: true
- name: image-store
mountPath: /var/lib/registry
volumes:
- name: config
configMap:
name: docker-registry
items:
- key: registry-config
path: config.yml
- name: image-store
emptyDir: {}
---
apiVersion: v1
kind: Service
metadata:
name: docker-registry
namespace: image-registry
spec:
type: NodePort
selector:
app: docker-registry
ports:
- port: 5000
targetPort: 5000
nodePort: 32000
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment