# Garage Web UI — khairul169/garage-webui # Talks to garage-admin (3903) + garage (3900) via in-cluster DNS. # NodePort 32391 — log in with admin / # # Deploy: # # Generate bcrypt-hashed AUTH_USER_PASS from homelab/GARAGE_WEBUI_PASSWORD: # PASSWORD=$(pass show homelab/GARAGE_WEBUI_PASSWORD) # HASH=$(python3 -c "import bcrypt,sys; print(bcrypt.hashpw(sys.argv[1].encode(),bcrypt.gensalt(10)).decode())" "$PASSWORD") # kubectl create secret generic garage-webui-secret \ # --from-literal=auth-user-pass="admin:$HASH" # kubectl apply -f garage-webui.yaml --- apiVersion: apps/v1 kind: Deployment metadata: name: garage-webui spec: replicas: 1 selector: matchLabels: app: garage-webui template: metadata: labels: app: garage-webui spec: containers: - name: garage-webui image: khairul169/garage-webui:latest env: - name: API_BASE_URL value: "http://garage-admin:3903" - name: API_ADMIN_KEY valueFrom: secretKeyRef: name: garage-secret key: admin-token - name: S3_ENDPOINT_URL value: "https://s3.sjasoft.com" - name: S3_REGION value: "garage" - name: AUTH_USER_PASS valueFrom: secretKeyRef: name: garage-webui-secret key: auth-user-pass ports: - containerPort: 3909 --- apiVersion: v1 kind: Service metadata: name: garage-webui spec: selector: app: garage-webui ports: - port: 3909 targetPort: 3909 nodePort: 32391 type: NodePort