| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- borrarActual () {
- echo ">>>> Borrando registro actual..."
- kubectl delete -f registry-deployment.yaml
- kubectl delete -f registry-pv.yaml
- echo ">>>> Borrando secrets actuales..."
- kubectl delete secret auth-secret
- kubectl delete secret certs-secret
- kubectl delete secret reg-cred-secret
- kubectl delete pod/nginx-pod
- }
- step1 () {
- echo "Step 1: Creating files for authentication\n\n"
- echo ">>>> Creando directorios..."
- mkdir -p /registry && cd "$_"
- rm -rf auth/
- rm -rf certs/
- echo "Creando certificados..."
- mkdir certs
- openssl req -x509 -newkey rsa:4096 -days 365 -nodes -sha256 -keyout certs/tls.key -out certs/tls.crt -subj "/CN=docker-registry" -addext "subjectAltName = DNS:docker-registry"
- echo "Creando autorizaciones..."
- mkdir auth
- docker run --rm --entrypoint htpasswd registry:2.7.0 -Bbn creylopez Rey-1176 > auth/htpasswd
- }
- step2 () {
- echo "Step 2: Using secrets to mount the certificates\n\n"
- echo "Creando secret certs-secret..."
- kubectl create secret tls certs-secret --cert=/registry/certs/tls.crt --key=/registry/certs/tls.key
- echo "Creando secret auth-secret..."
- kubectl create secret generic auth-secret --from-file=/registry/auth/htpasswd
- }
- step3() {
- echo "Step 3: Creating Persistent Volume and Claim for repository storage\n\n"
- kubectl create -f /home/creylopez/k8s-cluster-projects/MiRegistry/registry-pv.yaml
- }
- step4() {
- echo "Step 4: Creating the Registry Pod\n\n"
- kubectl create -f /home/creylopez/k8s-cluster-projects/MiRegistry/registry-deployment.yaml
- }
- step5() {
- echo "Step 5: Allowing access to the registry\n\n"
- echo "Copio tls.cert a /etc..."
- sudo cp certs/tls.crt /etc/docker/certs.d/docker-registry\:32000/ca.crt
- }
- step6() {
- echo "Step 6: Testing our Private Docker Registry"
- docker login docker-registry:32000 -u creylopez -p Rey-1176
- echo "Creando secret reg-cred-secret..."
- kubectl create secret docker-registry reg-cred-secret --docker-server=docker-registry:32000 --docker-username=creylopez --docker-password=Rey-1176
- echo "Descargo imagen nginx..."
- docker pull nginx
- echo "... la etiqueto..."
- docker tag nginx:latest docker-registry:32000/minginx:1
- echo "... y la subo al registry... "
- docker push docker-registry:32000/minginx:1
- #kubectl exec docker-registry-pod -it -- sh
- }
- prueba() {
- echo "Creo un pod con la nueva imagen..."
- kubectl run nginx-pod --image=docker-registry:32000/minginx:v1 --overrides='{ "apiVersion": "v1", "spec": { "imagePullSecrets": [{"name": "reg-cred-secret"}] } }'
- }
- borrarActual
- #step1
- #step2
- #step3
- #step4
- #step5
- #step6
- #final
|