Skip to content

Commit

Permalink
Squash images and add packages
Browse files Browse the repository at this point in the history
  • Loading branch information
nicolaasuni committed Jan 26, 2018
1 parent 1993a41 commit b3fc26a
Show file tree
Hide file tree
Showing 6 changed files with 99 additions and 49 deletions.
2 changes: 1 addition & 1 deletion LICENSE
@@ -1,6 +1,6 @@
The MIT License (MIT)

Copyright (c) 2016-2017 Nicola Asuni - Tecnick.com LTD
Copyright (c) 2016-2018 Nicola Asuni - Tecnick.com LTD

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
4 changes: 2 additions & 2 deletions Makefile
Expand Up @@ -3,7 +3,7 @@
# @since 2016-09-23
# @category Docker
# @author Nicola Asuni <info@tecnick.com>
# @copyright 2015-2017 Nicola Asuni - Tecnick.com LTD
# @copyright 2015-2018 Nicola Asuni - Tecnick.com LTD
# @license MIT (see LICENSE)
# @link https://github.com/tecnickcom/alldev
#
Expand Down Expand Up @@ -59,7 +59,7 @@ all: help

# Build the specified Docker image
builditem:
docker build --no-cache -t ${DOCKER_REPOSITORY}/${DIMG}:latest ./src/${DIMG}
docker build --squash --compress --no-cache -t ${DOCKER_REPOSITORY}/${DIMG}:latest ./src/${DIMG}
docker tag ${DOCKER_REPOSITORY}/${DIMG}:latest ${DOCKER_REPOSITORY}/${DIMG}:${VERSION}-${RELEASE}

# Build the Docker image
Expand Down
7 changes: 6 additions & 1 deletion README.md
Expand Up @@ -7,7 +7,7 @@

* **category** Docker
* **author** Nicola Asuni <info@tecnick.com>
* **copyright** 2016-2017 Nicola Asuni - Tecnick.com LTD
* **copyright** 2016-2018 Nicola Asuni - Tecnick.com LTD
* **license** MIT (see LICENSE)
* **link** https://github.com/tecnickcom/alldev
* **docker** https://hub.docker.com/r/tecnickcom/alldev/
Expand All @@ -34,6 +34,11 @@ sudo gpasswd -a <YOURUSER> docker
sudo service docker restart
```

The default docker build command in the Makefile requires Docker experimental features:
```
sudo sh -c 'echo '\''{"experimental":true}'\'' > /etc/docker/daemon.json'
sudo service docker restart
```

## Getting started

Expand Down
2 changes: 1 addition & 1 deletion VERSION
@@ -1 +1 @@
2.2.0
3.0.0
65 changes: 44 additions & 21 deletions src/alldev/Dockerfile
Expand Up @@ -10,20 +10,16 @@

FROM phusion/baseimage
MAINTAINER info@tecnick.com

ENV DEBIAN_FRONTEND noninteractive
ENV TERM linux
ENV HOME /root
ENV DISPLAY :0
ENV GOPATH=/root
ENV PATH=/usr/local/go/bin:$GOPATH/bin:$PATH

# Add SSH keys
ADD id_rsa /home/go/.ssh/id_rsa
ADD id_rsa.pub /home/go/.ssh/id_rsa.pub

RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections \

# Configure SSH
&& mkdir -p /root/.ssh \
&& echo "Host *" >> /root/.ssh/config \
Expand All @@ -32,15 +28,12 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
&& echo " UserKnownHostsFile /dev/null" >> /root/.ssh/config \
&& chmod 600 /home/go/.ssh/id_rsa \
&& chmod 644 /home/go/.ssh/id_rsa.pub \

# Configure default git user
&& echo "[user]" >> /home/go/.gitconfig \
&& echo " email = gocd@example.com" >> /home/go/.gitconfig \
&& echo " name = gocd" >> /home/go/.gitconfig \

# Add i386 architecture
&& dpkg --add-architecture i386 \

# Add repositories and update
&& apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF \
&& echo "deb http://download.mono-project.com/repo/debian wheezy main" | tee /etc/apt/sources.list.d/mono-xamarin.list \
Expand All @@ -49,15 +42,12 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
&& apt-add-repository universe \
&& apt-add-repository multiverse \
&& apt-get update \

# Repository for node
&& curl -sL https://deb.nodesource.com/setup_6.x | bash - \

# Set Locale
&& apt-get install -y language-pack-en-base \
&& locale-gen en_US en_US.UTF-8 \
&& dpkg-reconfigure locales \

# install development packages and debugging tools
&& apt-get install -y \
alien \
Expand All @@ -72,15 +62,22 @@ build-essential \
bzip2 \
checkinstall \
clang \
clang-3.6 \
clang-3.9 \
clang-format \
clang-format-3.6 \
clang-format-3.9 \
clang-tidy \
clang-tidy-3.6 \
clang-tidy-3.9 \
cmake \
cppcheck \
curl \
debhelper \
devscripts \
dh-golang \
dh-make \
dnsutils \
dos2unix \
doxygen \
doxygen-latex \
Expand All @@ -99,6 +96,7 @@ git \
g++-multilib \
golang \
golang-golang-x-tools \
gridengine-drmaa-dev \
gsfonts \
gtk-sharp2 \
htop \
Expand Down Expand Up @@ -189,10 +187,22 @@ php-sqlite3 \
php-xdebug \
php-xml \
pkg-config \
postgresql \
postgresql-contrib \
postgresql-contrib-9.5 \
pyflakes \
pylint \
python \
python3 \
python3-all \
python3-all-dev \
python3-coverage \
python3-dev \
python3-lxml \
python3-nose \
python3-pip \
python3-setuptools \
python3-yaml \
python-all \
python-all-dev \
python-coverage \
Expand Down Expand Up @@ -232,9 +242,7 @@ zbar-tools \
zip \
zlib1g \
zlib1g-dev \

&& nuget update -self \

# Mono tools
&& git clone https://github.com/mono/mono-tools.git \
&& cd mono-tools \
Expand All @@ -244,32 +252,50 @@ zlib1g-dev \
&& ./autogen.sh \
&& make \
&& make install \

# Install extra python dependencies
# Install extra python2 dependencies
&& pip install --upgrade pip \
&& pip install --upgrade setuptools \
&& pip install --upgrade cffi \
&& pip install --upgrade autopep8 \
&& pip install --upgrade fabric \
&& pip install --upgrade json-spec \
&& pip install --upgrade pypandoc \

&& pip install --upgrade coverage \
&& pip install --upgrade pytest \
&& pip install --upgrade pytest-cov \
&& pip install --upgrade pytest-benchmark \
&& pip install --upgrade ansible \
&& pip install --upgrade shade \
&& pip install --upgrade dnspython \
# Install extra python3 dependencies
&& pip3 install --upgrade pip \
&& pip3 install --upgrade setuptools \
&& pip3 install --upgrade cffi \
&& pip3 install --upgrade autopep8 \
&& pip3 install --upgrade fabric \
&& pip3 install --upgrade json-spec \
&& pip3 install --upgrade pypandoc \
&& pip3 install --upgrade coverage \
&& pip3 install --upgrade pytest \
&& pip3 install --upgrade pytest-cov \
&& pip3 install --upgrade pytest-benchmark \
&& pip3 install --upgrade ansible \
&& pip3 install --upgrade shade \
&& pip3 install --upgrade dnspython \
# Install extra npm dependencies
&& npm install --global grunt-cli \
&& npm install --global gulp-cli \
&& npm install --global jquery \
&& npm install --global uglify-js \
&& npm install --global csso \
&& npm install --global csso-cli \

# HTML Tidy
&& cd /tmp \
&& wget https://github.com/htacg/tidy-html5/releases/download/5.4.0/tidy-5.4.0-64bit.deb \
&& dpkg -i tidy-5.4.0-64bit.deb \

# Composer
&& cd /tmp \
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \

# Install and configure GO
&& wget https://storage.googleapis.com/golang/go1.9.3.linux-amd64.tar.gz \
&& tar xvf go1.9.3.linux-amd64.tar.gz \
Expand All @@ -281,16 +307,13 @@ zlib1g-dev \
&& echo 'export GOPATH=/root' >> /root/.profile \
&& echo 'export PATH=/usr/local/go/bin:$GOPATH/bin:$PATH' >> /root/.profile \
&& go version \

# Haskell
&& cd /tmp \
&& curl -sSL https://get.haskellstack.org/ | sh \

# hugo
&& cd /tmp \
&& wget https://github.com/gohugoio/hugo/releases/download/v0.34/hugo_0.34_Linux-64bit.deb \
&& dpkg -i hugo_0.34_Linux-64bit.deb \

# Cleanup temporary data and cache
&& apt-get clean \
&& apt-get autoclean \
Expand Down

0 comments on commit b3fc26a

Please sign in to comment.