Skip to content

Commit bcf6f2d

Browse files
author
js-jslog
committed
Reorganise the Dockerfile for readability and layer reduction (not fully
optimised yet)
1 parent d17d938 commit bcf6f2d

File tree

1 file changed

+24
-24
lines changed

1 file changed

+24
-24
lines changed

Dockerfile

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,21 @@ ARG http_proxy=$http_proxy
44
ARG https_proxy=$https_proxy
55
ARG HTTP_PROXY=$HTTP_PROXY
66
ARG HTTPS_PROXY=$HTTPS_PROXY
7+
78
ENV TERM=xterm-256color
9+
ENV NVM_DIR=/usr/local/nvm
10+
ENV NODE_VERSION=10.15.1
11+
ENV NODE_PATH=$NVM_DIR/versions/node/v$NODE_VERSION/lib/node_modules
12+
ENV PATH=$NVM_DIR/versions/node/v$NODE_VERSION/bin:$PATH
13+
14+
COPY dotfiles/.vimrc /root/.vimrc
15+
COPY dotfiles/.gitconfig /root/.gitconfig
16+
COPY dotfiles/.bash_aliases /root/.bash_aliases
17+
COPY dotfiles/.eslintrc.json /root/.eslintrc.json
818

9-
LABEL version "1.0"
10-
LABEL maintainer "Joseph Sinfield <[email protected]>"
11-
LABEL runcommand "docker run --rm -ti -e http_proxy -e https_proxy -e HTTP_PROXY -e HTTPS_PROXY -e SSH_AUTH_SOCK=$SSH_AUTH_SOCK -v $(dirname $SSH_AUTH_SOCK):$(dirname $SSH_AUTH_SOCK) -v $(pwd):/home/developer/workspace -w /home/developer/workspace jslog/development-env"
19+
LABEL version="1.0"
20+
LABEL maintainer="Joseph Sinfield <[email protected]>"
21+
LABEL runcommand="docker run --rm -ti -e http_proxy -e https_proxy -e HTTP_PROXY -e HTTPS_PROXY -e SSH_AUTH_SOCK=\$SSH_AUTH_SOCK -v $(dirname \$SSH_AUTH_SOCK):$(dirname \$SSH_AUTH_SOCK) -v $(pwd):/home/developer/workspace -w /home/developer/workspace jslog/development-env"
1222

1323
# Replace shell with bash so we can source files
1424
RUN rm /bin/sh && ln -s /bin/bash /bin/sh
@@ -30,34 +40,24 @@ RUN apt-get update && apt-get install -y -q --no-install-recommends \
3040
ssh \
3141
&& rm -rf /var/lib/apt/lists/*
3242

33-
ENV NVM_DIR /usr/local/nvm
34-
ENV NODE_VERSION 10.15.1
35-
3643
# Install nvm with node and npm
3744
RUN curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash \
38-
&& . $NVM_DIR/nvm.sh \
39-
&& nvm install $NODE_VERSION \
40-
&& nvm alias default $NODE_VERSION \
41-
&& nvm use default
45+
&& . $NVM_DIR/nvm.sh \
46+
&& nvm install $NODE_VERSION \
47+
&& nvm alias default $NODE_VERSION \
48+
&& nvm use default
4249

4350
RUN source /root/.bashrc
4451

45-
ENV NODE_PATH $NVM_DIR/versions/node/v$NODE_VERSION/lib/node_modules
46-
ENV PATH $NVM_DIR/versions/node/v$NODE_VERSION/bin:$PATH
47-
48-
RUN npm install -g eslint
49-
RUN npm install -g eslint-config-airbnb-base
50-
RUN npm install -g eslint-plugin-import
52+
RUN npm install -g eslint \
53+
&& npm install -g eslint-config-airbnb-base \
54+
&& npm install -g eslint-plugin-import
5155

5256
RUN add-apt-repository ppa:jonathonf/vim -y \
53-
&& apt update \
54-
&& apt install vim -y
55-
56-
COPY dotfiles/.vimrc /root/.vimrc
57-
COPY dotfiles/.gitconfig /root/.gitconfig
58-
COPY dotfiles/.bash_aliases /root/.bash_aliases
57+
&& apt update \
58+
&& apt install vim -y
5959

6060
RUN rm -r /root/.vim || true \
61-
&& curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
61+
&& curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
6262
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim \
63-
&& vim +PlugInstall +qall
63+
&& vim +PlugInstall +qall

0 commit comments

Comments
 (0)