forked from Virviil/asdf-elixir-docker
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile
More file actions
88 lines (69 loc) · 3.09 KB
/
Dockerfile
File metadata and controls
88 lines (69 loc) · 3.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
FROM vborja/asdf-alpine:latest
# Adding additional packages
ENV TZ "Europe/Brussels"
USER root
RUN apk add --update --no-cache autoconf automake bash curl alpine-sdk perl imagemagick openssl openssl-dev ncurses ncurses-dev unixodbc unixodbc-dev git ca-certificates nodejs postgresql-client tzdata openssh-client gawk grep yaml-dev expat-dev libxml2-dev curl make gcc g++ python linux-headers binutils-gold gnupg perl-utils libstdc++
RUN cp /usr/share/zoneinfo/$TZ /etc/localtime && \
echo $TZ > /etc/timezone
USER asdf
RUN asdf update --head
# Adding Erlang, Elixir and NodeJS plugins
RUN asdf plugin-add erlang && \
asdf plugin-add nodejs && \
asdf plugin-add elixir
# Adding Erlang/OTP 18.3.4
RUN asdf install erlang 18.3.4
# Adding Elixir 1.2 with corresponding Erlang
RUN asdf install elixir 1.2.6 && \
asdf global erlang 18.3.4 && \
asdf global elixir 1.2.6 && \
yes | mix local.hex --force && \
yes | mix local.rebar --force
# Adding Erlang/OTP 19.3.6
RUN asdf install erlang 19.3.6
# Adding Elixir 1.3 with corresponding Erlang
RUN asdf install elixir 1.3.4 && \
asdf global erlang 19.3.6 && \
asdf global elixir 1.3.4 && \
yes | mix local.hex --force && \
yes | mix local.rebar --force
# Adding Elixir 1.4 with corresponding Erlang
RUN asdf install elixir 1.4.5 && \
asdf global erlang 19.3.6 && \
asdf global elixir 1.4.5 && \
yes | mix local.hex --force && \
yes | mix local.rebar --force
# Adding Elixir 1.5 with corresponding Erlang
RUN asdf install elixir 1.5.3 && \
asdf global erlang 19.3.6 && \
asdf global elixir 1.5.3 && \
yes | mix local.hex --force && \
yes | mix local.rebar --force
# Adding Erlang/OTP 20.2.4
RUN asdf install erlang 20.2.4
# Adding Elixir 1.6 with corresponding Erlang
RUN asdf install elixir 1.6.3 && \
asdf global erlang 20.2.4 && \
asdf global elixir 1.6.3 && \
yes | mix local.hex --force && \
yes | mix local.rebar --force
# NodeJS requirements
RUN gpg --keyserver ipv4.pool.sks-keyservers.net --recv-keys 94AE36675C464D64BAFA68DD7434390BDBE9B9C5 && \
gpg --keyserver ipv4.pool.sks-keyservers.net --recv-keys FD3A5288F042B6850C66B31F09FE44734EB7990E && \
gpg --keyserver ipv4.pool.sks-keyservers.net --recv-keys 71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 && \
gpg --keyserver ipv4.pool.sks-keyservers.net --recv-keys DD8F2338BAE7501E3DD5AC78C273792F7D83545D && \
gpg --keyserver ipv4.pool.sks-keyservers.net --recv-keys C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 && \
gpg --keyserver ipv4.pool.sks-keyservers.net --recv-keys B9AE9905FFD7803F25714661B63B535A4C206CA9 && \
gpg --keyserver ipv4.pool.sks-keyservers.net --recv-keys 56730D5401028683275BD23C23EFEFE93C4CFFFE && \
gpg --keyserver ipv4.pool.sks-keyservers.net --recv-keys 77984A986EBC2AA786BC0F66B01FBB92821C587A
# Adding NodeJS 4.8.7 LTS
RUN asdf install nodejs 4.8.7
# Adding NodeJS 6.13.1 LTS
RUN asdf install nodejs 6.13.1
# Adding NodeJS 8.10.0 LTS
RUN asdf install nodejs 8.10.0
# Setting global versions
RUN asdf global erlang 20.2.4 && \
asdf global elixir 1.6.3 && \
asdf global nodejs 8.10.0
CMD ["/bin/bash"]