lbry-docker/www.spee.ch
2018-06-05 14:45:12 -04:00
..
advanced-docker-compose.yml Adjusted container name 2018-06-02 12:01:01 -04:00
docker-compose.yml Adjusted speech container name 2018-06-02 12:00:53 -04:00
docker-entrypoint.sh Permissions setting is being janky disabled for now 2018-06-05 14:23:49 -04:00
Dockerfile Adding node-gyp package 2018-06-05 13:55:52 -04:00
healthcheck.sh Changed shebang 2018-06-05 12:34:32 -04:00
README.md Expansion on goals section of spee.ch README 2018-06-05 14:45:12 -04:00

Container Base

Based on this documentation I will be creating a container which should aim to work on top of any customizations you add yourself.

Goals

Fresh install on creation

The end goal will be to iterate through all of the directories you have in any volumes you include and then copy anything else into the service directory omitting any files which you've changed.

Configuration should be absolutely bare minimal and doable via the docker environment variables. This makes it so that you can launch this project in any environment you like Kubernetes, Amazon Elastic Container Service, RancherOS, Docker Swarm, Docker-Compose.

An advanced container example using docker-compose which contains the full stack including https handling via a reverse proxy. This should automagically by default include automagic LetsEncrypt provisioning and renewal so long as you've set your own DNS records correctly to point where this container will be hosted.

Your changes take priority

This means any content that you've included in the /app/ path should be ignored when the container is instantiated. So generally only include files that you plan to have changed. Eventually I may add something a bit smarter and do a hash check & compare to be a bit smarter but for now simpler is better.

Configuration

The configuration will take place on container instantiation based on any environment variables which you include in your docker invocation be it a docker-compose.yml or a simple docker run.

You should prefer to include your configuration variables through means of the environment variables. However, if you find something in the configuration which you feel needs changed which we haven't included an environment variable for you should be free to include your own custom configuration file you're welcomed to.

Try it out immediately

What's better than something that works right out of the box? I really have no idea because if you have a goal that is small and iterative why would you want to do things the hard way unless you know for a fact that you're really into this.

Docker & Docker-compose

Docker compose is the most recommended way to get started and even run in deployment as it saves you a lot of pain of sifting through old commands to re-execute your docker container. So pre-requisites will be to have the following installed and most of these support packages are as easy as copy paste commands.

git
docker
docker-compose