Foundation is the base website project template I use for creating new projects with clients.

Johnathan Tiong 423ff775f3 added www. handling for http https requests 4 months ago
data 84225992df updated foundation changes with new structure 5 months ago
docker 423ff775f3 added www. handling for http https requests 4 months ago
www fa02b72e67 updated .docker files and readme for example 9 months ago
README.md 84225992df updated foundation changes with new structure 5 months ago
start.dev.sh 84225992df updated foundation changes with new structure 5 months ago
start.sh 84225992df updated foundation changes with new structure 5 months ago
stop.sh 84225992df updated foundation changes with new structure 5 months ago

README.md

Foundation

Foundation is the base website project template I use for creating new projects with clients. Rapidly reploy a new website using Docker, onto any system running Docker with an NGINX Reverse Proxy + Let's Encrypt SSL certification.

Requirements

  • Docker with Compose (docker compose)
  • An NGINX Reverse-Proxy system (I have such a project called Gateway)

Usage

You should be able to use this right away by simply running

start.sh

Configuration

Make a copy of .env.sample as .env and edit to suit your tastes! For a full description of all the Configuration elements, see the end of this document, the Configuration Glossary

In your docker-compose.yml file, you'll notice all the services called PROJECTNAME_etc -- please substitute PROJECTNAME with your own project's name - preferrably as a lower case alphanumeric string!

Local Development Deployment

Override your docker-compose settings with the following

start.dev.sh

Configuration Glossary

HOSTNAME - domain name (no www) (e.g. domainname.com)

SSL_HOST - domain name to be registered to SSL (usually the same as HOSTNAME)

SSL_MAIL - email address for the SSL certificate

PMA_HOST - subdomain for PhpMyAdmin to run (e.g. db.domainname.com)

SQL_PASS - MySQL root password