This Pull Request adds support for Docker in HTTPS Watch. The way this is achieved is by creating a new docker image with all the files and then installing the dependencies included in requirements.txt. The image uses python3.5. As soon as the image is executed (in a container), two processes start. The first is a bash script, namely /bin/periodic-check.sh, which currently runs check_https.py every 24 hours in the background. The second is the nginx web server, properly configured to serve /out and /static in port 80.
By default, if you don't pass any extra arguments to docker, it will run with the /config included in this repository. However, to allow for easy editing of the configuration file, a docker volume is exposed, namely /httpswatch/config/, so by using docker run with -v /path/to/config:/httpswatch/config/ the configuration file can be overrided with a new one. If you decide to do this, every time you make a change to the configuration file in the host, the docker container will use the new configuration file, just like a cron job.
How to build the Docker Image:
Just run:
docker build -t benjaminp/httpswatch .
How to run a built image:
To run HTTPSWatch with the default configuration file on port tcp/8000, use the following:
docker run -p 8000:80 --rm --name httpswatch benjaminp/httpswatch
To run HTTPSWatch with a custom configuration file, use:
docker run -p 8000:80 --rm --name httpswatch -v /path/to/config:/httpswatch/config/ benjamin/httpswatch
In any case, if you want to run HTTPSWatch in the background, you can also add -d. If you also want to restart automatically the container across host reboots / docker upgrades, remove the --rm and add the --restart=always.
This Pull Request adds support for Docker in HTTPS Watch. The way this is achieved is by creating a new
docker
image with all the files and then installing the dependencies included inrequirements.txt
. The image usespython3.5
. As soon as the image is executed (in a container), two processes start. The first is a bash script, namely/bin/periodic-check.sh
, which currently runscheck_https.py
every 24 hours in the background. The second is thenginx
web server, properly configured to serve/out
and/static
in port 80. By default, if you don't pass any extra arguments todocker
, it will run with the/config
included in this repository. However, to allow for easy editing of the configuration file, adocker
volume is exposed, namely/httpswatch/config/
, so by usingdocker run
with-v /path/to/config:/httpswatch/config/
the configuration file can be overrided with a new one. If you decide to do this, every time you make a change to the configuration file in the host, thedocker
container will use the new configuration file, just like acron
job.How to build the Docker Image:
Just run:
How to run a built image:
To run HTTPSWatch with the default configuration file on port
tcp/8000
, use the following:To run HTTPSWatch with a custom configuration file, use:
In any case, if you want to run HTTPSWatch in the background, you can also add
-d
. If you also want to restart automatically the container across host reboots /docker
upgrades, remove the--rm
and add the--restart=always
.