Fully Automated Docker Deployments.
MIT License
F.A.D.D is a bunch of shell scripts that provide a easy way to deploy application stacks (based on Docker-Compose) secured over a multi-domain TLS reverse-proxy (Nginx) with Let's Encrypt auto-generation and virtual hosts auto-deployment.
Easily install Docker and all requirements :
cd /opt
git clone https://github.com/valentin2105/FADD.git
cd /opt/FADD ; vim config.json # Configure FADD
./install_fadd.sh
There are some shell scripts to manage your Docker Host :
add_stack.sh
- Deploy an app stack and his Nginx TLS vhost.add_domain.sh
- Deploy a Nginx TLS vhost to proxify a specified port.delete_stack.sh
- Delete datas, certs & config of the app stack.renew_certs.sh
- Renew all TLS certs presents on the host.Simple JSON configuration file :
{
"faddPath": "/opt/FADD", # Where FADD was cloned
"installPath": "/srv", # Where you want to manage your stacks
"logsPath": "/var/log/fadd", # Where we put the logs
"pubIP": "10.1.1.1", # Your server public IP
"distrib": "jessie", # Your distribution (jessie,trusty,xenial)
"acmeDomain": "tls.example.com", # A dedicated domain name pointed on your server
"acmePath": "/srv/certs/challenges", # Where you want to put .well_knows challenge (TLS)
"adminMail": "[email protected]" # Your E-mail (for certs generation)
}
add_stack.sh --image=wordpress --domain=site01.example.com --expose=8101
docker run --name nginx -d -p 8080:80 nginx:latest
add_domain.sh --proto=http --ip=10.0.0.5 --port=8080