This protocol explains how to create an RSAT Docker image.
It is primarily inteded for RSAT development team, but can also be of use for advanced users who might desire to create a customized Docker image.
We will define some environment variables to indicate the RSAT release and the location where the RSAT docker will be installed on your hard drive. These must of course be adapted depending on the current state of RSAT distribution and on your local configuration.
export RSAT_RELEASE=2016-07-13
export RSAT_DOCKER_DIR=~/rsat_docker
The way to start a Docker daemon depends on the host operating system. See the documentation on Docker Web site for more details.
| Resource | URL |
|---|---|
| Docker | https://www.docker.com/ |
| Mac OSX Docker | https://docs.docker.com/docker-for-mac/docker-toolbox/ |
| Docker toolbox | https://www.docker.com/products/docker-toolbox |
| Mac OSX Docker toolbox | https://docs.docker.com/docker-for-mac/ |
All the next steps are assumed to run under a Unix terminal with an active docker daemon.
docker pull debian:jessie
docker tag debian:jessie rsat_debian:${RSAT_RELEASE}.prepa
docker images
We define the root of the RSAT-docker space in an environment variable named RSAT_DOCKER_DIR. This can be adapted depending on your local configuration, but it should be on a hard drive with sufficient available disk space (~20Gb).
mkdir -p ${RSAT_DOCKER_DIR}/install
cd ${RSAT_DOCKER_DIR}/install
wget --no-clobber http://teaching.rsat.eu/tutorials/DockerRSAT/scripts/RSAT_debian_install.sh
The sequence-purge tool requires a user-specific license for vmatch, a software tool developed by Stefan Kurtz. After having received this license, install the vmatch.lic in the folder ${RSAT_DOCKER_DIR}/install. This should be done manually.
docker run -t -i -p 32810:80 --volume ${RSAT_DOCKER_DIR}/install:/RsatInstall rsat_debian:${RSAT_RELEASE}.prepa
Note: this script install all the Debian packages + Perl modules + other dependencies of RSAT, and then installs and configures the whole RSAT package. It takes ~1 hour as a whole, so be sure that you can have a steady connection to internet for a while before starting it.
cd /RsatInstall
(time sh RSAT_debian_install.sh 1> RsatInstall.log) 2>RsatInstall.err
The installation process starts, and stores all the terminal messages in two files:
RsatInstall.log standard outputRsatInstall.log standard errorThese files will be stored in the install directory, which is shared between your docker container (path /RsatInstall) and the host machine (path ${RSAT_DOCKER_DIR}/install)
You can open a separate terminal to periodically check the tail of these files with the command tail, or follow the progress with tail -f.
export RSAT_DOCKER_DIR=~/rsat_docker
tail -f ${RSAT_DOCKER_DIR}/install/RsatInstall.log
docker ps
docker commit [container_name] rsat_debian:${RSAT_RELEASE}
## List the docker images available on your computer
docker images
## List running docker containers
docker ps
## Docker version
docker version
## Detailed info about docker configuration
docker info