1
2023-01-13:joxit/docker-registry-ui 是 registry 的 web 界面工具之一。请问部署在 k3s 中,yaml 如何写?
作者:福大大架构师每日一题
- 2023-01-13 北京
本文字数:1694 字
阅读完需:约 6 分钟
2023-01-13:joxit/docker-registry-ui 是 registry 的 web 界面工具之一。请问部署在 k3s 中,yaml 如何写?
答案 2023-01-13:
yaml 如下:
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: docker-registry-ui
name: docker-registry-ui
namespace: droneci
spec:
replicas: 1
selector:
matchLabels:
app: docker-registry-ui
template:
metadata:
labels:
app: docker-registry-ui
spec:
containers:
- env:
- name: "DELETE_IMAGES"
value: "true"
- name: "REGISTRY_TITLE"
value: "Docker registry UI"
# - name: "REGISTRY_URL"
# value: "http://registry:5000"
- name: NGINX_PROXY_PASS_URL
value: "http://registry:5000"
- name: PULL_URL
value: "docker-registry-ui:80"
- name: SINGLE_REGISTRY
value: "true"
image: "joxit/docker-registry-ui:latest"
imagePullPolicy: IfNotPresent
name: docker-registry-ui
securityContext:
privileged: true
---
apiVersion: v1
kind: Service
metadata:
labels:
app: docker-registry-ui
name: docker-registry-ui
namespace: droneci
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
app: docker-registry-ui
type: NodePort
---
apiVersion: v1
kind: ConfigMap
metadata:
labels:
app: registry
name: registry
namespace: droneci
data:
config.yml: |
version: 0.1
log:
fields:
service: registry
storage:
cache:
blobdescriptor: inmemory
filesystem:
rootdirectory: /var/lib/registry
http:
addr: :5000
headers:
X-Content-Type-Options: ['*']
Access-Control-Allow-Origin: ['*']
Access-Control-Allow-Methods: ['*']
health:
storagedriver:
enabled: true
interval: 10s
threshold: 3
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: registry
namespace: droneci
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- host: dockergit.dsy.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: registry
port:
number: 5000
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: registry
name: registry
namespace: droneci
spec:
replicas: 1
selector:
matchLabels:
app: registry
template:
metadata:
labels:
app: registry
spec:
containers:
- image: "registry"
imagePullPolicy: IfNotPresent
name: registry
volumeMounts:
- mountPath: /var/lib/registry
name: volv
- mountPath: /etc/docker/registry/config.yml
subPath: config.yml
name: volv2
volumes:
- hostPath:
path: /root/k8s/droneci/registry/var/lib/registry
type: DirectoryOrCreate
name: volv
- configMap:
name: registry
name: volv2
---
apiVersion: v1
kind: Service
metadata:
labels:
app: registry
name: registry
namespace: droneci
spec:
ports:
- port: 5000
nodePort: 50000
protocol: TCP
targetPort: 5000
selector:
app: registry
type: NodePort
复制代码
划线
评论
复制
发布于: 刚刚阅读数: 2
版权声明: 本文为 InfoQ 作者【福大大架构师每日一题】的原创文章。
原文链接:【http://xie.infoq.cn/article/25d1e7454b679f92422913d40】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
福大大架构师每日一题
关注
还未添加个人签名 2021-02-15 加入
还未添加个人简介
评论