Commit 8474eaa6 authored by Matthieu Muffato's avatar Matthieu Muffato
Browse files

Added some installation scripts for Ubuntu. Will ease the definition of Dockerfiles

parent 22165755
...@@ -17,40 +17,17 @@ ...@@ -17,40 +17,17 @@
FROM ubuntu:16.04 FROM ubuntu:16.04
RUN apt-get update -y \ # Install git
# Needed to clone the checkout, to use cpanm and forbasic help ARG DEBIAN_FRONTEND=noninteractive
&& apt-get install -y curl git perl-doc \ RUN apt-get update -y && apt-get install -y git && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
# Database-related dependencies
sqlite3 libdbd-sqlite3-perl postgresql-client libdbd-pg-perl mysql-client libdbd-mysql-perl libdbi-perl \
# Required Perl modules
libcapture-tiny-perl libdatetime-perl libhtml-parser-perl libjson-perl \
# Perl modules needed for the test-suite
libtest-exception-perl libtest-simple-perl libtest-warn-perl libtest-warnings-perl libtest-file-contents-perl libtest-perl-critic-perl libgraphviz-perl \
# Recommendations
libgetopt-argvfile-perl libchart-gnuplot-perl libbsd-resource-perl \
&& apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
## Useful for debugging
# RUN apt-get install netcat.openbsd vim perl-doc iputils-ping net-tools apt-file -y
RUN ln -s /usr/bin/mariadb_config /usr/bin/mysql_config
# Clone the repo
RUN mkdir /repo && git clone -b master https://github.com/Ensembl/ensembl-hive.git /repo/ensembl-hive RUN mkdir /repo && git clone -b master https://github.com/Ensembl/ensembl-hive.git /repo/ensembl-hive
# Install all the dependencies
RUN /repo/ensembl-hive/docker/setup_os.Ubuntu-16.04.sh
# Install the missing dependencies (if any) # Install the missing dependencies (if any)
# NOTE: buildDeps may have to be extended to include some lib*-dev packages RUN /repo/ensembl-hive/docker/setup_cpan.Ubuntu-16.04.sh /repo/ensembl-hive
# such as libmariadb-client-lgpl-dev libpq-dev libsqlite3-dev libexpat1-dev
# The cpanm command is wrapped with apt-get install / purge to keep the
# image small
RUN buildDeps=' \
cpanminus \
build-essential \
' \
&& apt-get update -y \
&& apt-get install -y $buildDeps \
&& rm -rf /var/lib/apt/lists/* \
&& cpanm --installdeps --with-recommends /repo/ensembl-hive \
&& apt-get purge -y --auto-remove $buildDeps
ENV PATH "/repo/ensembl-hive/scripts:$PATH" ENV PATH "/repo/ensembl-hive/scripts:$PATH"
ENV PERL5LIB "/repo/ensembl-hive/modules:$PERL5LIB" ENV PERL5LIB "/repo/ensembl-hive/modules:$PERL5LIB"
......
setup_cpan.Ubuntu-16.04.sh
\ No newline at end of file
#!/bin/bash
set -e
# NOTE: buildDeps may have to be extended to include some lib*-dev packages
# such as libmariadb-client-lgpl-dev libpq-dev libsqlite3-dev libexpat1-dev
buildDeps='
cpanminus
build-essential
'
apt-get update -y
apt-get install -y $buildDeps
for arg
do
cpanm --installdeps --with-recommends "$arg"
done
# Cleanup the cache and remove the build dependencies to reduce the disk footprint
rm -rf /var/lib/apt/lists/*
apt-get purge -y --auto-remove $buildDeps
#!/bin/bash
set -e
apt-get update
apt-get install -y curl perl-doc \
sqlite3 libdbd-sqlite3-perl postgresql-client libdbd-pg-perl mysql-client libdbd-mysql-perl libdbi-perl \
libcapture-tiny-perl libdatetime-perl libhtml-parser-perl libjson-perl \
libtest-exception-perl libtest-simple-perl libtest-warn-perl libtest-warnings-perl libtest-file-contents-perl libtest-perl-critic-perl libgraphviz-perl \
libgetopt-argvfile-perl libchart-gnuplot-perl libbsd-resource-perl
## Useful for debugging
#apt-get install -y netcat.openbsd vim perl-doc iputils-ping net-tools apt-file
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
#!/bin/bash
set -e
apt-get update
apt-get install -y curl perl-doc \
sqlite3 libdbd-sqlite3-perl postgresql-client libdbd-pg-perl mysql-client libdbd-mysql-perl libdbi-perl \
libcapture-tiny-perl libdatetime-perl libhtml-parser-perl libjson-perl libproc-daemon-perl \
libtest-exception-perl libtest-simple-perl libtest-warn-perl libtest-warnings-perl libtest-file-contents-perl libtest-perl-critic-perl libgraphviz-perl \
libgetopt-argvfile-perl libchart-gnuplot-perl libbsd-resource-perl
## Useful for debugging
#apt-get install -y netcat.openbsd vim perl-doc iputils-ping net-tools apt-file
# Cleanup the cache to reduce the disk footprint
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
# Needed for Perl DBI
ln -s /usr/bin/mariadb_config /usr/bin/mysql_config
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment