This repository contains resource to run CapiTainS web services and frontend using docker, which means you'll only need to perform few commands to install these resources. Good bye Python issues, Gunicorn and Apache headache, welcome Docker !
- Image : A docker image is a skeletton for running software without having to install anything except docker. It's a specific state of a container.
- Container : A container is an instance, a running application, of a docker image.
- Local Build of the image (advanced users only)
- User
docker build .
in this directory
- User
Before starting
- Replace /path/to/ by your own absolute path to given directory.
- If you used a local build, save the hash given at the end of the build (such as
475d347abade
). If you do not understand this sentence, do not worry, docker will download the latest version of the source image.
Guide
- If you do not have any resources, we advice to run locally the following commands :
sh download-perseus-csel.sh
will download zipped repositories of Perseus Greek and Latin litterature and the CSEL repository of the Open Greek and Latin projectsh unzip-corpora-local-volume
will unzip downloaded repositories in the repository folder.
docker run -i -p 8080:80 --name capitains -v /path/to/volumes/repositories:/opt/data -v /path/to/volumes/cache:/opt/cache capitains/nemo-nautilus:latest
will run and pull the docker instance- Replacing
-i
by-d
will run docker as a daemon. Instead of seeing the log as an interactive application, the docker instance will be run locally -p 8080:80
tunnels the host machine8080
port to80
port on the docker container.-v /first/path:/second/path
creates a data volumes and forwards/first/path
(on your machine) to/second/path
(on the docker container). We used it for cache and repositories so that maintenance and evolution is easily done outside containers. It also enables data volume sharing for multiple containers.--name capitains
names your container capitains. If you want to have multiple containers, change the name.
- Replacing