openshift搭建registry-持久存储nfs

来源:互联网 发布:sql定义变量赋值并输出 编辑:程序博客网 时间:2024/06/08 05:37

报错:


https://docs.openshift.org/latest/install_config/registry/deploy_registry_existing_clusters.html 


The Docker registry pod runs as user 1001. This user must be able to write to the host directory. You may need to change directory ownership to user ID 1001 with this command:

$ sudo chown 1001:root <path>


新增registry:

oc delete dc docker-registry registry-console router

oc delete svc docker-registry registry-console router

oc delete serviceaccounts registry router

 

 

mkdir -p /opt/openshift-registry

chown 1001:root /opt/openshift-registry

oc create serviceaccount registry -n default

oc adm policy add-scc-to-user privileged system:serviceaccount:default:registry

 

#service clusterrolebinding deploymentconfig

oc adm registry --service-account=registry --mount-host=/opt/openshift-registry

oc logs dc/docker-registry

 

 

#为admin帐号授权

oc adm policy add-role-to-user system:registry admin

oc adm policy add-role-to-user admin admin -n openshift

oc adm policy add-role-to-user system:image-builder admin

 

oc adm policy add-role-to-user system:image-puller system:anonymous -n openshift

 

 

 

 

搭建nfs-nfs目录权限

chown 1001.1000030000 /export/openshift-registry-storage

chmod g+s /export/openshift-registry-storage

共享:exports

/export/openshift-registry-storage *(rw,sync,no_root_squash,no_subtree_check)

 

oc project default

[root@master template]# cat registry-pvc.yaml

apiVersion: v1

kind: List

items:

- apiVersion: v1

kind: PersistentVolume

metadata:

name: registry-storage

labels:

provider: docker-registry

project: default

spec:

capacity:

storage: 20Gi

accessModes:

- ReadWriteMany

nfs:

path: /export/openshift-registry-storage

server: 192.168.6.135

persistentVolumeReclaimPolicy: Retain

- apiVersion: v1

kind: PersistentVolumeClaim

metadata:

labels:

provider: docker-registry

project: default

name: registry-storage

spec:

accessModes:

- ReadWriteMany

resources:

requests:

storage: 20Gi

volumeName: registry-storage

 

 

 

oc get svc docker-registry -o yaml > registry-svc.yml

oc delete -f registry-svc.yml

[root@master template]# cat registry-svc.yml

apiVersion: v1

kind: Service

metadata:

creationTimestamp: 2017-04-14T01:57:18Z

labels:

docker-registry: default

name: docker-registry

namespace: default

resourceVersion: "56807"

selfLink: /api/v1/namespaces/default/services/docker-registry

uid: b0fbef3d-20b5-11e7-832b-5afbca75f359

spec:

clusterIP: 172.30.0.3

portalIP: 172.30.0.3

ports:

- name: 5000-tcp

port: 5000

protocol: TCP

targetPort: 5000

selector:

docker-registry: default

sessionAffinity: ClientIP

type: ClusterIP

status:

loadBalancer: {}

 

 

oc create -f registry-svc.yml

oc get svc docker-registry

 

web界面:

进入 "openshift web" - "default" - "Deployments" - "docker-registry" 点 "Actions" - "Edit YAML" 进入编辑模式,找到以下部分

修改:

volumes:

- name: registry-storage

persistentVolumeClaim:

claimName: registry-storage

 

 

oc login -n openshift

oc whoami -t

docker login -u admin -p 5S1FMOjluARDLwR33PW-JTJAz3PkY4XcnximqoAYDuU 172.30.0.3:5000

docker tag nginx:1.11.4-alpine 172.30.0.3:5000/openshift/nginx:1.11.4-alpine

docker push 172.30.0.3:5000/openshift/nginx:1.11.4-alpine

0 0
原创粉丝点击