From 1009be26a2417bcaf909793cd5d2cabe16e6fad0 Mon Sep 17 00:00:00 2001 From: Tim Stickland Date: Tue, 12 May 2020 16:21:05 +0100 Subject: [PATCH] Docker build fixes & perl locale fix (#89) * updated Docker build to fix perl locale problem * found dependency issues that had broken the Docker build so fixed them too * changed the build so example FASTA files are copied from the repo where the docker build is done (so that if these files are changed in a branch/tag, that's reflected in the image that is built rather than always referring back to the master branch on github) * remove path-help email from Dockerfile, in line with PR #88 Co-authored-by: Tim Stickland --- Dockerfile | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/Dockerfile b/Dockerfile index 47094cc..98cf3a8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,12 +1,18 @@ # # This container will allow you to run MSLT by blast against assemblies using the schemes from PubMLST # -FROM debian:testing +FROM ubuntu:20.04 -# -# Authorship -# -MAINTAINER ap13@sanger.ac.uk +ARG DEBIAN_FRONTEND=noninteractive + +RUN apt-get update -qq && \ + apt-get install -y locales && \ + sed -i -e 's/# \(en_GB\.UTF-8 .*\)/\1/' /etc/locale.gen && \ + touch /usr/share/locale/locale.alias && \ + locale-gen +ENV LANG en_GB.UTF-8 +ENV LANGUAGE en_GB:en +ENV LC_ALL en_GB.UTF-8 # # Set environment variables @@ -16,12 +22,17 @@ ENV MLST_DATABASES /MLST_databases # # Update and Install dependencies # -RUN apt-get update -qq && apt-get install -y wget ncbi-blast+ cpanminus gcc autoconf make libxml2-dev zlib1g zlib1g-dev libmodule-install-perl && cpanm -f Bio::MLST::Check +RUN apt-get update -qq && \ + apt-get install -y wget ncbi-blast+ cpanminus gcc autoconf make libxml2-dev zlib1g zlib1g-dev libmodule-install-perl && \ + # expat required for current versions of various XML packages in CPAN + apt-get install -y libexpat1-dev && \ + # there's a known issue with one of the tests in XML::DOM::XPath + cpanm -notest XML::DOM::XPath && \ + # install CPAN modules without --force so errors aren't hidden + cpanm Bio::MLST::Check -RUN mkdir -p /example && cd /example && \ - wget -O sample1.fa https://github.com/sanger-pathogens/mlst_check/raw/master/example/input_data/Salmonella_enterica_subsp_enterica_serovar_Typhi_str_CT18_v1.fa && \ - wget -O sample2.fa https://github.com/sanger-pathogens/mlst_check/raw/master/example/input_data/Salmonella_enterica_subsp_enterica_serovar_Typhimurium_DT104_v1.fa && \ - wget -O sample3.fa https://github.com/sanger-pathogens/mlst_check/raw/master/example/input_data/Salmonella_enterica_subsp_enterica_serovar_Weltevreden_str_10259_v0.2.fa +# copy whatever example files are provided in the branch/tag that we're building from +COPY ./example/input_data/*.fa /example/ # # Download the databases from PubMLST