Skip to content
Snippets Groups Projects
Commit 10dffd3a authored by Gael  MILLOT's avatar Gael MILLOT
Browse files

ubuntu\v20.04\alohomora_merlin\v2.1 at date 20230122 : problem of locales solved

parent 0546ef32
No related branches found
No related tags found
No related merge requests found
......@@ -71,6 +71,11 @@ Hub-CDB Institut Pasteur & DSI Institut Pasteur
Use the gitlab tag of the docker image (e.g., gitlab_v5.0) to get the description of the modifications below
### 9.5
ubuntu\v20.04\alohomora_merlin\v2.1 at date 20230122 : problem of locales solved
### 9.4
Dockerfiles added: <br />
ubuntu\v20.04\alohomora_merlin\v2.0 at date 20221231
......
#########################################################################
## ##
## Dockerfile ##
## Alohomora and Merlin ##
## ##
## Eric Deveaud ##
## HPC Core Facility ##
## Institut Pasteur Paris ##
## ##
## Gael A. Millot ##
## Bioinformatics and Biostatistics Hub ##
## Computational Biology Department ##
## Institut Pasteur Paris ##
## ##
#########################################################################
# to see the log of the building:
# sudo docker run -ti --entrypoint bash <IMAGE_NAME>
# cat building.log
# to export the log file of the image building from the container:
# sudo docker images
# sudo docker run -ti --entrypoint bash <IMAGE_NAME>
# exit
# sudo docker container ls -a # to get all the active containers
# sudo docker cp <containerNAMES>:/building.log </host/path/target>
# base image: ubuntu:20.04
FROM ubuntu:20.04
# Warning: the name must be exactly what is written in the docker images interface, or sudo docker image ls. But here, since the image is not present locally, docker will search it on docker hub. Thus, gmillot/ubuntu:16.04 iw not correct
LABEL Gael.Millot=gael.millot@pasteur.fr
LABEL gitlab.dockerfiles="https://gitlab.pasteur.fr/gmillot/dockerfiles"
# add gensoft deb repo pgp public key to apt trusted ones
# and install modules
WORKDIR /etc/apt/trusted.gpg.d/
# to avoid cd. All the following commands will occurs here. In addition, opening a container will be at this node.
# update apt-get
RUN echo "\n\n\n\n================\n\napt-get update\n\n================\n\n\n\n" > /building.log \
&& apt-get update --fix-missing \
| tee -a /building.log \
# install the ubuntu packages
&& echo "\n\n\n\n================\n\napt-get install\n\n================\n\n\n\n" >> /building.log \
&& DEBIAN_FRONTEND="noninteractive" apt-get install -y \
wget \
build-essential \
| tee -a /building.log
RUN apt-get install -y locales \
| tee -a /building.log
# Set the locale
RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen \
&& locale-gen \
| tee -a /building.log
ENV LC_ALL en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US.UTF-8
ENV LC_NUMERIC en_US.UTF-8
RUN echo "\n\n\n\n================\n\nalohomora preinstall\n\n================\n\n\n\n" >> /building.log \
&& wget http://mirrors.web.pasteur.fr/gensoft/ubuntu/deb/public.pgp \
| tee -a /building.log \
&& echo "deb http://mirrors.web.pasteur.fr/gensoft/ubuntu/deb/ /" >> /etc/apt/sources.list.d/gensoft.list | tee -a /building.log \
&& echo "deb http://mirrors.web.pasteur.fr/gensoft/ubuntu/deb_private/ /" >> /etc/apt/sources.list.d/gensoft.list | tee -a /building.log \
&& apt-key add public.pgp
# define where the debian repo are. The reason why that must be done before any update and install.
# public.pgp: key to allow install of the gensoft packages (debian repo are always signed)
# deb in /etc/apt/sources.list.d/gensoft.list indicates the url where debian packages are
# apt-key add public.pgp : install the key
# COPY gensoft.repo.ubuntu /etc/apt/sources.list.d/gensoft.list
# COPY gpg_key.ubuntu /tmp
# COPY instruction copies the file from the host into the docker image.
RUN echo "\n\n\n\n================\n\nsoft installation\n\n================\n\n\n\n" >> /building.log \
&& apt-get update \
&& DEBIAN_FRONTEND="noninteractive" apt-get install -y \
gensoft-modules-4.4.0 \
gensoft-alohomora-v0.36 \
gensoft-R-3.6.2 \
&& apt-get clean \
# cleaning
&& echo "\n\n\n\n================\n\napt-get autoremove\n\n================\n\n\n\n" >> /building.log \
&& apt-get autoremove -y \
| tee -a /building.log ; echo "\n\n\n\n================\n\napt-get clean\n\n================\n\n\n\n" >> /building.log \
&& apt-get clean \
| tee -a /building.log ; echo "\n\n\n\n================\n\nrm\n\n================\n\n\n\n" >> /building.log \
&& rm -rf /var/lib/apt/lists/* \
| tee -a /building.log \
&& echo "\n\n\n\n================\n\ninstalled packages\n\n================\n\n\n\n" >> /building.log \
&& apt-cache policy \
locales \
locales-all \
>> /building.log
# https://askubuntu.com/questions/179955/var-lib-apt-lists-is-huge
# folder filled after running sudo apt-get update (or use the Refresh button in a package manager), a list of packages will get downloaded from the Ubuntu servers. These files are then stored in /var/lib/apt/lists/. You can safely remove the contents of that directory as it is recreated when you refresh the package lists. If you remove the files, but do not run apt-get update to fetch the lists, commands like apt-cache will fail to provide information (since the cache is empty)
# apt-cache policy print all the indicated package info
# end cleaning
# RUN echo ". /opt/gensoft/adm/etc/profile.d/modules.sh" > /etc/profile.d/pasteur_modules.sh
# to have the modules already active when the container is activated
# . /opt/gensoft/adm/etc/profile.d/modules.sh source the file module.sh
# Then echo of this print that into /etc/profile.d/pasteur_modules.sh
# During container boot, this is read in order to initialize modules env.
ENTRYPOINT ["/usr/bin/bash" , "-l"]
# The -l option (according to the man page) makes "bash act as if it had been invoked as a login shell". Login shells read certain initialization files from your home directory, such as .bash_profile. Variables set in .bash_profile override when bash launches.
\ No newline at end of file
This diff is collapsed.
root@002adb98c5a2:/etc/apt/trusted.gpg.d# module avail
----------------------------------------------------------------------------------------------- /opt/gensoft/adm/Modules/4.4.0/modulefiles ------------------------------------------------------------------------------------------------
use.own
---------------------------------------------------------------------------------------------------------- /opt/gensoft/modules -----------------------------------------------------------------------------------------------------------
alohomora/v0.36(default) genehunter/2.1_r2(default) merlin/1.1.2(default) pedcheck/1.1(default) pedstats/0.6.12(default) plink/1.90b6.16(default) simwalk2/2.91(default)
--------------------------------------------------------------------------------------------------------- /opt/gensoft/devmodules ---------------------------------------------------------------------------------------------------------
atk/2.9.4 curl/7.68.0 fontconfig/2.13.91 gcc/9.2.0(default) glib/2.58.3 gtk+/2.24.32 lapack/3.9.0 libffi/3.3 libpng/1.6.37 pango/1.42.4 pixman/0.38.4 tcl/8.6.10 xorg-libs/1.1
atlas/3.10.2 db/18.1.32 freeglut/3.2.1 gdbm/1.18.1 glu/9.0.1 harfbuzz/2.6.4 libcerf/1.13 libgd-gd/2.2.5 libtiff/4.1.0 pcre/8.43 R/3.6.2 tk/8.6.10 xz/5.2.4
cairo/1.16.0 expat/2.2.9 freetype/2.10.1 gdk-pixbuf/2.36.12 gnuplot/5.2.8 help2man/1.47.12 libdrm/2.4.100 libjpeg-turbo/2.0.4 mesa/19.0.8 pcre2/10.34 SQLite/3.31.0 wxWidgets/3.1.3 zlib/1.2.11
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment