Configure the *.env.example
files and rename to *.env
files
Note: Not all docker-compose.yml
files read from *.env
files (TODO)
Create proxy
network to containers to be exposed via port 80
/443
docker network create proxy
Run docker-compose up -d
from the nginx-proxy
folder and ensure that ports 80
and 443
are bindable.
cd nginx-proxy
docker-compose up -d
docker-compose -f # To see added services and HTTP requests log
Point domains to your instances and generate SSL certificates with LetsEncrypt by
- Setting env
VIRTUAL_HOST
andLETSENCRYPT_HOST
to "subdomain.example.com" or "example.com" - Setting env
VIRTUAL_PORT
to the exposed port for your app service in thedocker-compose.yml
files - Setting env
DEFAULT_EMAIL
in thenginx-proxy/nginx-proxy-letsencrypt
service for your support account
Credit
- https://github.com/nginx-proxy/nginx-proxy (MIT)
- https://github.com/nginx-proxy/docker-letsencrypt-nginx-proxy-companion (MIT)
Browser-based monitoring for single or multiple Docker installations
Credit
Studio-style chatbot design and configuration
Credit
Headless CMS that maps to raw MySQL structure
Remember to initialize the DB and admin user
docker-compose run --rm directus install --email [email protected] --password d1r3ctu5
Credit
Create a pull request after checking that your setup is ready to go with Docker Compose and nginx-proxy
- Server services should contain the environment variables
VIRTUAL_HOST
,VIRTUAL_PORT
andLETSENCRYPT_HOST
- Server services in
docker-compose.yml
should belong todefault
andproxy
if they have other services - Other services like databases in
docker-compose.yml
shouldn't be on the networkproxy
- Avoid sharing .env files between services; use
postgres.env
orservice.env
where possible
MIT License