1
1
FROM amazonlinux:2
2
2
3
- # Install shared dependencies
4
- RUN yum -y upgrade \
5
- && yum -y install awscli git gzip rsync tar unzip zip \
6
- && yum clean all && rm -rf /var/cache/yum
7
-
8
- # ##
9
- # We'll be trying to install stuff slowest to fastest, as a courtesy to people who'll have to build & re-build this.
10
- # ##
11
-
12
- # Install NVM and Node 8+
13
- ARG NODE_VERSION=8.16.0
14
- ARG NPM_VERSION=6.8.0
15
- ENV NVM_DIR=/usr/local/nvm
16
- RUN curl -sSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh -o /tmp/install-nvm.sh \
17
- && echo "ef7ad1db40c92f348c0461f24983b71ba0ea7d45d4007a36e484270fa7f81fcf /tmp/install-nvm.sh" | sha256sum -c \
18
- && mkdir -p ${NVM_DIR} \
19
- && bash /tmp/install-nvm.sh \
20
- && rm /tmp/install-nvm.sh \
21
- && . ${NVM_DIR}/nvm.sh \
22
- && nvm install ${NODE_VERSION} \
23
- && nvm alias default ${NODE_VERSION} \
24
- && nvm use default \
25
- && npm -g install npm@^${NPM_VERSION} \
26
- && npm set unsafe-perm true
27
- ENV NODE_PATH=${NVM_DIR}/versions/node/v${NODE_VERSION}/lib/node_modules \
28
- PATH=${PATH}:${NVM_DIR}/versions/node/v${NODE_VERSION}/bin
29
- # Install .NET Core & mono
3
+ # Install .NET Core, mono & PowerShell
30
4
ENV DOTNET_CLI_TELEMETRY_OPTOUT=1 \
31
5
DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
32
6
COPY gpg/mono.asc /tmp/mono.asc
33
7
RUN rpm --import "https://packages.microsoft.com/keys/microsoft.asc" \
34
8
&& rpm -Uvh "https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm" \
35
9
&& rpm --import /tmp/mono.asc && rm -f /tmp/mono.asc \
36
10
&& curl "https://download.mono-project.com/repo/centos6-stable.repo" | tee /etc/yum.repos.d/mono-centos6-stable.repo \
37
- && yum -y install dotnet-sdk-2.2 mono-devel \
38
- && yum clean all && rm -rf /var/cache/yum
39
-
40
- # Install Powershell
41
- RUN yum install -y powershell \
11
+ && yum -y install dotnet-sdk-2.2 mono-devel powershell \
42
12
&& yum clean all && rm -rf /var/cache/yum
43
13
44
14
# Install Python 3
45
- RUN yum -y install python3 python3-pip python3-wheel \
46
- && python3 -m pip install --upgrade pip wheel setuptools \
15
+ RUN yum -y install python3 python3-pip \
16
+ && python3 -m pip install --upgrade pip setuptools wheel twine \
47
17
&& yum clean all && rm -rf /var/cache/yum
48
18
49
19
# Install Ruby 2.4+
@@ -64,6 +34,32 @@ RUN amazon-linux-extras install docker
64
34
&& yum clean all && rm -rf /var/cache/yum
65
35
VOLUME /var/lib/docker
66
36
37
+ # Install shared dependencies
38
+ RUN yum -y install awscli git gzip rsync tar unzip zip \
39
+ && yum clean all && rm -rf /var/cache/yum
40
+
41
+ # Install NVM and Node 8+
42
+ ARG NODE_VERSION=8.16.0
43
+ ARG NPM_VERSION=6.8.0
44
+ ENV NVM_DIR=/usr/local/nvm
45
+ RUN curl -sSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh -o /tmp/install-nvm.sh \
46
+ && echo "ef7ad1db40c92f348c0461f24983b71ba0ea7d45d4007a36e484270fa7f81fcf /tmp/install-nvm.sh" | sha256sum -c \
47
+ && mkdir -p ${NVM_DIR} \
48
+ && bash /tmp/install-nvm.sh \
49
+ && rm /tmp/install-nvm.sh \
50
+ && . ${NVM_DIR}/nvm.sh \
51
+ && nvm install ${NODE_VERSION} \
52
+ && nvm alias default ${NODE_VERSION} \
53
+ && nvm use default \
54
+ && npm -g install npm@^${NPM_VERSION} \
55
+ && npm set unsafe-perm true
56
+ ENV NODE_PATH=${NVM_DIR}/versions/node/v${NODE_VERSION}/lib/node_modules \
57
+ PATH=${PATH}:${NVM_DIR}/versions/node/v${NODE_VERSION}/bin
58
+
59
+ # Upgrade all packages that weren't up-to-date just yet
60
+ RUN yum -y upgrade \
61
+ && yum clean all && rm -rf /var/cache/yum
62
+
67
63
# Install some configuration
68
64
COPY ssh_config /root/.ssh/config
69
65
COPY dockerd-entrypoint.sh /usr/local/bin/
0 commit comments