1- [ ![ Image Size] ( https://badges.cssnr.com/ghcr/size/cssnr/docker-nginx-proxy )] ( https://github.com/cssnr/docker-nginx-proxy/pkgs/container/node-badges )
2- [ ![ Image Latest] ( https://badges.cssnr.com/ghcr/tags/cssnr/docker-nginx-proxy/latest )] ( https://github.com/cssnr/docker-nginx-proxy/pkgs/container/node-badges )
1+ [ ![ Image Size] ( https://badges.cssnr.com/ghcr/size/cssnr/docker-nginx-proxy )] ( https://github.com/cssnr/docker-nginx-proxy/pkgs/container/docker-nginx-proxy )
2+ [ ![ Image Latest] ( https://badges.cssnr.com/ghcr/tags/cssnr/docker-nginx-proxy/latest )] ( https://github.com/cssnr/docker-nginx-proxy/pkgs/container/docker-nginx-proxy )
33[ ![ Image Tags] ( https://badges.cssnr.com/ghcr/tags/cssnr/docker-nginx-proxy )] ( https://github.com/cssnr/docker-nginx-proxy/pkgs/container/node-badges )
4+ [ ![ GitHub Tag Major] ( https://img.shields.io/github/v/tag/cssnr/docker-nginx-proxy?sort=semver&filter=!*.*&logo=git&logoColor=white&labelColor=585858&label=%20 )] ( https://github.com/cssnr/docker-nginx-proxy/tags )
5+ [ ![ GitHub Tag Minor] ( https://img.shields.io/github/v/tag/cssnr/docker-nginx-proxy?sort=semver&filter=!*.*.*&logo=git&logoColor=white&labelColor=585858&label=%20 )] ( https://github.com/cssnr/docker-nginx-proxy/releases )
46[ ![ GitHub Release Version] ( https://img.shields.io/github/v/release/cssnr/docker-nginx-proxy?logo=github )] ( https://github.com/cssnr/docker-nginx-proxy/releases/latest )
57[ ![ Workflow Build] ( https://img.shields.io/github/actions/workflow/status/cssnr/docker-nginx-proxy/build.yaml?logo=cachet&label=build )] ( https://github.com/cssnr/docker-nginx-proxy/actions/workflows/build.yaml )
68[ ![ Workflow Lint] ( https://img.shields.io/github/actions/workflow/status/cssnr/docker-nginx-proxy/lint.yaml?logo=cachet&label=lint )] ( https://github.com/cssnr/docker-nginx-proxy/actions/workflows/lint.yaml )
@@ -21,6 +23,20 @@ Docker Nginx Proxy Container.
2123
2224This works quite well as is...
2325
26+ ``` yaml
27+ services :
28+ nginx :
29+ image : ghcr.io/cssnr/docker-nginx-proxy:latest
30+ environment :
31+ - SERVICE_NAME=app # name of app container
32+ - SERVICE_PORT=8000 # port exposed on app
33+ ports :
34+ - ' ${PORT:-80}:80' # Host PORT : Container (must be :80)
35+
36+ app :
37+ image : your-app-image # listens on port 8000
38+ ` ` `
39+
2440## Examples
2541
2642If your app container is called ` app` and listens on `3000` this will reverse proxy it to the `PORT` exposed on nginx.
@@ -81,16 +97,17 @@ services:
8197 cpus: '1.0'
8298 memory: 64M
8399 labels:
84- - traefik.enable=true
85- - traefik.docker.network=traefik-public
86- - traefik.constraint-label=traefik-public
87- - traefik.http.routers.node-badges-http.rule=Host(`badges.cssnr.com`)
88- - traefik.http.routers.node-badges-http.entrypoints=http
89- - traefik.http.routers.node-badges-http.middlewares=https-redirect
90- - traefik.http.routers.node-badges-https.rule=Host(`badges.cssnr.com`)
91- - traefik.http.routers.node-badges-https.entrypoints=https
92- - traefik.http.routers.node-badges-https.tls=true
93- - traefik.http.services.node-badges-https.loadbalancer.server.port=80
100+ - 'traefik.enable=true'
101+ - 'traefik.docker.network=traefik-public'
102+ - 'traefik.constraint-label=traefik-public'
103+ - 'traefik.http.routers.${STACK_NAME?err}-http.rule=Host(` ${TRAEFIK_HOST?err}`)'
104+ - ' traefik.http.routers.${STACK_NAME}-http.entrypoints=http'
105+ - ' traefik.http.routers.${STACK_NAME}-http.middlewares=https-redirect'
106+ - ' traefik.http.routers.${STACK_NAME}-https.rule=Host(`${TRAEFIK_HOST}`)'
107+ - ' traefik.http.routers.${STACK_NAME}-https.entrypoints=https'
108+ - ' traefik.http.routers.${STACK_NAME}-https.tls=true'
109+ - ' traefik.http.services.${STACK_NAME}.loadbalancer.server.port=80'
110+ - ' traefik.http.services.${STACK_NAME}.loadbalancer.server.scheme=http'
94111 healthcheck :
95112 test : ['CMD-SHELL', 'curl -sf localhost:80/health-check || exit 1']
96113 interval : 30s
@@ -104,7 +121,7 @@ services:
104121 - traefik-public
105122
106123 app :
107- image : ghcr.io/smashedr/node-badges:latest
124+ image : ghcr.io/smashedr/node-badges:${VERSION:- latest}
108125 command : ' npm start'
109126 deploy :
110127 mode : global
0 commit comments