2018-02-09 14:11:30 -05:00
|
|
|
set -e
|
|
|
|
|
|
|
|
|
|
# Create private registry
|
|
|
|
|
## Create self signed certs
|
|
|
|
|
mkdir -p scripts/testing/certs
|
|
|
|
|
openssl req \
|
|
|
|
|
-newkey rsa:2048 \
|
|
|
|
|
-nodes \
|
|
|
|
|
-x509 \
|
|
|
|
|
-days 365 \
|
|
|
|
|
-subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=127.0.0.1" \
|
2018-04-09 09:30:15 -04:00
|
|
|
-keyout "$(pwd)"/scripts/testing/certs/registry_auth.key \
|
|
|
|
|
-out "$(pwd)"/scripts/testing/certs/registry_auth.crt
|
2018-02-09 14:11:30 -05:00
|
|
|
## Create auth
|
|
|
|
|
mkdir -p scripts/testing/auth
|
|
|
|
|
# Start registry
|
2018-04-09 09:30:15 -04:00
|
|
|
docker run --entrypoint htpasswd registry:2 -Bbn testuser testpwd > "$(pwd)"/scripts/testing/auth/htpasswd
|
2018-04-09 09:17:06 -04:00
|
|
|
docker run -d -p 15000:5000 --rm --name private_registry \
|
2018-02-09 14:11:30 -05:00
|
|
|
-v "$(pwd)"/scripts/testing/auth:/auth \
|
|
|
|
|
-e "REGISTRY_AUTH=htpasswd" \
|
|
|
|
|
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
|
|
|
|
|
-e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" \
|
|
|
|
|
-v "$(pwd)"/scripts/testing/certs:/certs \
|
|
|
|
|
-e "REGISTRY_HTTP_TLS_CERTIFICATE=/certs/registry_auth.crt" \
|
|
|
|
|
-e "REGISTRY_HTTP_TLS_KEY=/certs/registry_auth.key" \
|
|
|
|
|
registry:2
|
|
|
|
|
# wait a bit for travis...
|
|
|
|
|
sleep 5
|
|
|
|
|
# Login to private registry
|
2018-04-09 09:17:06 -04:00
|
|
|
docker login -u testuser -p testpwd 127.0.0.1:15000
|
2018-02-09 14:11:30 -05:00
|
|
|
# Build private images
|
2018-04-09 09:30:15 -04:00
|
|
|
docker build -t my-private-service "$(pwd)"/scripts/testing -f "$(pwd)"/scripts/testing/Dockerfile_v1
|
2018-04-09 09:17:06 -04:00
|
|
|
docker tag my-private-service 127.0.0.1:15000/my-private-service:v1
|
2018-04-09 09:30:15 -04:00
|
|
|
docker build -t my-private-service "$(pwd)"/scripts/testing -f "$(pwd)"/scripts/testing/Dockerfile_v2
|
2018-04-09 09:17:06 -04:00
|
|
|
docker tag my-private-service 127.0.0.1:15000/my-private-service:v2
|
2018-02-09 14:11:30 -05:00
|
|
|
# Push private images into private registry
|
2018-04-09 09:17:06 -04:00
|
|
|
docker push 127.0.0.1:15000/my-private-service:v1
|
|
|
|
|
docker push 127.0.0.1:15000/my-private-service:v2
|