Commit 1ff35b6
2021-01-22 21:36:04
Changed files (4)
.env
@@ -0,0 +1,19 @@
+RUN_DIR=/home/ubuntu
+
+ACME_PROD_CASERVER=https://acme-v02.api.letsencrypt.org/directory
+
+TRAEFIK_LOG_LEVEL=DEBUG
+TRAEFIK_PROVIDERS_FILE_DIRECTORY=/etc/traefik.d/
+TRAEFIK_PROVIDERS_FILE_WATCH=True
+TRAEFIK_ENTRYPOINTS_WEB=True
+TRAEFIK_ENTRYPOINTS_WEB_ADDRESS=:80
+TRAEFIK_ENTRYPOINTS_WEB_HTTP_REDIRECTIONS_ENTRYPOINT_TO=websecure
+TRAEFIK_ENTRYPOINTS_WEBSECURE=True
+TRAEFIK_ENTRYPOINTS_WEBSECURE_ADDRESS=:443
+TRAEFIK_CERTIFICATESRESOLVERS_NAME=weble
+TRAEFIK_CERTIFICATESRESOLVERS_WEBLE=True
+TRAEFIK_CERTIFICATESRESOLVERS_WEBLE_ACME_EMAIL=support@alta3.com
+TRAEFIK_CERTIFICATESRESOLVERS_WEBLE_ACME_STORAGE=/etc/traefik/certs/lets_encrypt.json
+TRAEFIK_CERTIFICATESRESOLVERS_WEBLE_ACME_CASERVER=${ACME_PROD_CASERVER}
+TRAEFIK_CERTIFICATESRESOLVERS_WEBLE_ACME_HTTPCHALLENGE=True
+TRAEFIK_CERTIFICATESRESOLVERS_WEBLE_ACME_HTTPCHALLENGE_ENTRYPOINT=web
docker-compose.yml
@@ -0,0 +1,21 @@
+version: '3'
+services:
+ registry:
+ ports:
+ - 5000:5000
+ image: registry:2
+ restart: always
+ environment:
+ REGISTRY_PROXY_REMOTEURL: "https://registry-1.docker.io"
+ traefik:
+ image: traefik:2.3.3
+ restart: always
+ volumes:
+ # TODO env vars
+ - ${RUN_DIR}/traefik/traefik.d:/etc/traefik.d/
+ - ${RUN_DIR}/traefik/certs:/etc/traefik/certs/
+ env_file: .env
+ ports:
+ - 80:80
+ - 443:443
+
registry.install.txt
@@ -0,0 +1,14 @@
+sudo apt update;
+sudo apt install -y docker docker-compose
+sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
+sudo chmod +x /usr/local/bin/docker-compose
+mkdir traefik
+mkdir traefik/traefik.d
+mkdir traefik/certs
+# create docker-compose.yml
+# create .env
+# create traefik/traefik.d/registry.yaml
+set -a
+source .env
+sudo --preserve-env docker-compose up -d
+sudo docker-compose logs -f --tail 100
registry.simple.yaml
@@ -0,0 +1,16 @@
+---
+http:
+ routers:
+ registry:
+ rule: 'Host(`registry-1.alta3.com`)'
+ service: "registry"
+ entryPoints:
+ - "websecure"
+ tls:
+ certResolver: "weble"
+ services:
+ registry:
+ loadBalancer:
+ servers:
+ - url: "http://registry:5000"
+