- Notifications
You must be signed in to change notification settings - Fork3.1k
Automated nginx proxy for Docker containers using docker-gen
License
nginx-proxy/nginx-proxy
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
nginx-proxy sets up a container running nginx anddocker-gen. docker-gen generates reverse proxy configs for nginx and reloads nginx when containers are started and stopped.
SeeAutomated Nginx Reverse Proxy for Docker for why you might want to use this.
To run it:
docker run --detach \ --name nginx-proxy \ --publish 80:80 \ --volume /var/run/docker.sock:/tmp/docker.sock:ro \ nginxproxy/nginx-proxy:1.9
Then start any containers (here an nginx container) you want proxied with an env varVIRTUAL_HOST=subdomain.yourdomain.com
docker run --detach \ --name your-proxied-app \ --env VIRTUAL_HOST=foo.bar.com \ nginx
Provided your DNS is setup to resolvefoo.bar.com to the host running nginx-proxy, a request tohttp://foo.bar.com will then be routed to a container with theVIRTUAL_HOST env var set tofoo.bar.com (in this case, theyour-proxied-app container).
The containers being proxied must :
- expose the port to be proxied, either by using the
EXPOSEdirective in theirDockerfileor by using the--exposeflag todocker runordocker create. - share at least one Docker network with the nginx-proxy container: by default, if you don't pass the
--netflag when your nginx-proxy container is created, it will only be attached to the default bridge network. This means that it will not be able to connect to containers on networks other than bridge.
Note: providing a port number inVIRTUAL_HOST isn't suported, please seevirtual ports orcustom external HTTP/HTTPS ports depending on what you want to achieve.
The nginx-proxy images are available in two flavors.
This image is based on the nginx:mainline image, itself based on the debian slim image.
docker pull nginxproxy/nginx-proxy:1.9
This image is based on the nginx:alpine image.
docker pull nginxproxy/nginx-proxy:1.9-alpine
Important
It is not recommended to use thelatest (nginxproxy/nginx-proxy,nginxproxy/nginx-proxy:latest) oralpine (nginxproxy/nginx-proxy:alpine) tag for production setups.
Those tags point to the latest commit in themain branch. They do not carry any promise of stability, and using them will probably put your nginx-proxy setup at risk of experiencing uncontrolled updates to non backward compatible versions (or versions with breaking changes). You should always specify the version you want to use explicitly to ensure your setup doesn't break when the image is updated.
Please check thedocs section.
About
Automated nginx proxy for Docker containers using docker-gen
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.