bureaucraten, interfacemoderatoren, Beheerders (Semantic MediaWiki), Curatoren (Semantic MediaWiki), Redacteuren (Semantic MediaWiki), toezichthouders, beheerders
205
bewerkingen
Regel 949: | Regel 949: | ||
To begin with, the registry will need storage for its images. True to our earlier experiments, we start by creating a persistent volume claim. (I'll assume there's a persistent volume to fulfill it; if not, check above how to create one yourself.) | To begin with, the registry will need storage for its images. True to our earlier experiments, we start by creating a persistent volume claim. (I'll assume there's a persistent volume to fulfill it; if not, check above how to create one yourself.) | ||
<pre> | |||
apiVersion: v1 | |||
kind: PersistentVolumeClaim | |||
metadata: | |||
name: registry-files | |||
spec: | |||
storageClassName: default | |||
accessModes: | |||
- ReadWriteOnce | |||
resources: | |||
requests: | |||
storage: 20Gi | |||
</pre> | |||
The registry deployment: | |||
<pre> | |||
apiVersion: apps/v1 | |||
kind: Deployment | |||
metadata: | |||
name: registry | |||
spec: | |||
selector: | |||
matchLabels: | |||
app: registry | |||
replicas: 1 | |||
template: | |||
metadata: | |||
labels: | |||
app: registry | |||
spec: | |||
volumes: | |||
- name: registrystorage | |||
persistentVolumeClaim: | |||
claimName: registry-files | |||
containers: | |||
- name: registry | |||
image: registry:2 | |||
ports: | |||
- containerPort: 5000 | |||
volumeMounts: | |||
- mountPath: /var/lib/registry | |||
name: registrystorage | |||
</pre> | |||
And a Service + Ingress to make it accessible on a new hostname. I found that Docker doesn't support accessing a registry with a path prefix, so we have to give it its own hostname. Luckily, with Traefik, it's easy to route; you'll only have to add a record in DNS. | |||
<pre> | |||
apiVersion: v1 | |||
kind: Service | |||
metadata: | |||
name: registry-service | |||
spec: | |||
selector: | |||
app: registry | |||
ports: | |||
- name: registry | |||
port: 5000 | |||
protocol: TCP | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Ingress | |||
metadata: | |||
name: registry-ingress | |||
spec: | |||
rules: | |||
- host: kuberegistry.sjorsgielen.nl | |||
http: | |||
paths: | |||
- path: / | |||
backend: | |||
serviceName: registry-service | |||
servicePort: 5000 | |||
</pre> | |||
After a minute, as before, https://kuberegistry.sjorsgielen.nl/v2/ (replace with your own hostname) should return 200 OK with a page content of "{}". | |||
= To do = | = To do = |