kubectl create namespace harbor
helm repo add harbor https://helm.goharbor.io
helm fetch harbor/harbor --untar
helm install harbor-helm harbor/
helm uninstall harbor-helm
helm install harbor-helm harbor/harbor \
--set database.type=external \
--set database.external.host=10.0.0.11 \
--set database.external.username=dbadmin \
--set database.external.password=dbadmin \
--set redis.type=external \
--set redis.external.addr=10.0.0.23:6379 \
--set redis.external.password=foobared \
--set harborAdminPassword=Harbor12345 \
--set externalURL=http://core.harbor.domain \
--set expose.tls.enabled=false \
--set expose.type=loadBalancer \
--set ipFamily.ipv6.enabled=false
kubectl port-forward pods/harbor-helm-nginx-cc76b85fb-mzj7z 8080:8080 -n harbor6
printenv |grep PASSWORD
helm upgrade --namespace harbor5 harbor-helm harbor/harbor -f ~/harbor/values.yaml
helm upgrade --namespace harbor5 harbor-helm harbor/harbor \
--set database.type=external \
--set database.external.host=10.0.0.11 \
--set database.external.username=dbadmin \
--set database.external.password=dbadmin \
--set redis.type=external \
--set redis.external.addr=10.0.0.23:6379 \
--set redis.external.password=foobared \
--set harborAdminPassword=Harbor12345 \
--set externalURL=http://core.harbor.domain \
--set expose.tls.enabled=false \
--set expose.type=loadBalancer \
--set ipFamily.ipv6.enabled=false
helm upgrade --namespace harbor6 harbor-helm harbor/harbor \
--set database.type=external \
--set database.external.host=10.0.0.11 \
--set database.external.username=dbadmin \
--set database.external.password=dbadmin \
--set redis.type=external \
--set redis.external.addr=10.0.0.23:6379 \
--set redis.external.password=foobared \
--set harborAdminPassword=Harbor12345 \
--set externalURL=http://core.harbor.domain.harbor6:8080 \
--set expose.tls.enabled=false \
--set expose.type=loadBalancer \
--set ipFamily.ipv6.enabled=false
sudo ktctl connect -n harbor6
helm upgrade --namespace harbor6 harbor-helm harbor/harbor \
--set database.type=external \
--set database.external.host=10.0.0.11 \
--set database.external.username=dbadmin \
--set database.external.password=dbadmin \
--set redis.type=external \
--set redis.external.addr=10.0.0.23:6379 \
--set redis.external.password=foobared \
--set harborAdminPassword=Harbor12345 \
--set externalURL=http://harbor-helm-core.harbor6 \
--set expose.tls.enabled=false \
--set expose.type=loadBalancer \
--set ipFamily.ipv6.enabled=false
curl http://harbor-helm-core.harbor6/v2/
sudo ktctl connect -n harbor6
helm upgrade --namespace harbor6 harbor-helm harbor/harbor \
--set database.type=external \
--set database.external.host=10.0.0.11 \
--set database.external.username=dbadmin \
--set database.external.password=dbadmin \
--set redis.type=external \
--set redis.external.addr=10.0.0.23:6379 \
--set redis.external.password=foobared \
--set harborAdminPassword=Harbor12345 \
--set externalURL=http://harbor.harbor6 \
--set expose.tls.enabled=false \
--set expose.type=loadBalancer \
--set ipFamily.ipv6.enabled=false
curl http://harbor.harbor6/v2/
kubectl expose deployment harbor-helm-core --port=80 --target-port=8080
sudo mkdir -p /etc/harbor/ssl/
openssl req -x509 -nodes -days 365 -newrsa:2048 -keyout /etc/harbor/ssl/harbor.-key /etc/harbor/searbor/ssl/harbor/ssl/harbor.crt
helm upgrade --namespace harbor6 harbor-helm harbor/harbor \
--set database.type=external \
--set database.external.host=10.0.0.11 \
--set database.external.username=dbadmin \
--set database.external.password=dbadmin \
--set redis.type=external \
--set redis.external.addr=10.0.0.23:6379 \
--set redis.external.password=foobared \
--set harborAdminPassword=Harbor12345 \
--set externalURL=core.harbor.domain \
--set expose.tls.auto.commonName=letsencrypt-harbor \
--set expose.ingress.hosts.core=core.harbor.domain \
--set expose.ingress.annotations.kubernetes.io/tls-acme=true \
--set expose.ingress.annotations.certmanager.k8s.io/issuer=letsencrypt-harbor
kubectl get ing -n harbor6 -o yaml | grep -A 3 tls
kubectl get secret -n harbor6 harbor-ingress -o yaml
- コンテナを初期化しtrivy フォルダーのアクセス許可を付与します
参考链接

initers:
- name: trivy-permision-fix
securityConext:
runAsUser: 0
image: busybox
command: ['sh', '-c', 'chown -R 10000:10000 /home/scanner']
volumeMounts:
- name: data
mountPath: /home//scanner
demo
docker tag SOURCE_IMAGE[:TAG] core.harbor.domain/mall/REPOSITORY[:TAG]
docker push core.harbor.domain/mall/REPOSITORY[:TAG]
docker login -u admin -p Harbor12345 core.harbor.domain:8080
docker tag app-service:latest core.harbor.domain:8080/mall/app-service:latest
docker push core.harbor.domain:8080/mall/app-service:latest
127.0.0.1 harbor.harbor6
kubectl port-forward pods/harbor-helm-nginx-cc76b85fb-mzj7z 80:8080 -n harbor6
docker login -u admin -p Harbor12345 harbor.harbor6
docker pull harbor.harbor6/mall/app-service:latest
kubectl port-forward pods/harbor-helm-nginx-cc76b85fb-mzj7z 80:8080 -n harbor6
127.0.0.1 harbor.harbor6
crictl pull harbor.harbor6/mall/app-service:latest
- Nodeポータルルのアクセス
- kuboardで
を設定します
10.0.1.139 harbor.harbor6
10.0.1.177 harbor.harbor6
10.0.1.177 harbor.harbor6
get https://github.com/goharbor/harbor/releases/ter/v2.9.1/harbor-offline-installer-v2.9.1.tgz
tar xvf harbor-offline-offline-installer-v2.9.1.tgz
cd harbor
nerdctl -n k8s.io load -i harbor.v2.1..g.