Last active
April 6, 2020 23:55
-
-
Save develforever/cd2b9c3e5d725b242e023f96febbbb7f to your computer and use it in GitHub Desktop.
Docker registry run helper commands
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# create certificate | |
openssl req \ | |
-newkey rsa:4096 -nodes -sha256 -keyout host.key \ | |
-x509 -days 365 -out host.crt | |
# add certificate global | |
mkdir -p /usr/share/ca-certificates/local | |
cp host.crt /usr/share/ca-certificates/local/ | |
nano /etc/ca-certificates.conf | |
# insert line | |
local/host.crt | |
mkdir -p /etc/docker/certs.d/host/ | |
cp host.crt /etc/docker/certs.d/host/ca.crt | |
service docker restart | |
# curl and docker done! | |
# add user htpasswd | |
mkdir auth | |
docker run \ | |
--entrypoint htpasswd \ | |
registry:2 -Bbn user pass > auth/htpasswd | |
# run registry on eg. host:433 | |
docker run -d \ | |
--restart=always \ | |
--name registry \ | |
-v "$(pwd)"/auth:/auth \ | |
-e "REGISTRY_AUTH=htpasswd" \ | |
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \ | |
-e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \ | |
-v /etc/docker/certs:/certs \ | |
-e REGISTRY_HTTP_ADDR=0.0.0.0:443 \ | |
-e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/host.crt \ | |
-e REGISTRY_HTTP_TLS_KEY=/certs/host.key \ | |
-p 443:443 \ | |
registry:2 | |
# login with user:pass | |
docker login host:433 | |
docker tag app:latest host:433/app | |
docker push host:433/app | |
# tadam, done! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment