Skip to content

Commit 94cbc58

Browse files
committed
Refactored docker stack to use the same Dockerfile used on all NodeJS Quickstarts.
Signed-off-by: Exadra37 <[email protected]>
1 parent a0028b6 commit 94cbc58

10 files changed

+30
-649
lines changed

servers/shapes-api/docker/Dockerfile

+30-65
Original file line numberDiff line numberDiff line change
@@ -1,82 +1,47 @@
1-
FROM ubuntu:18.04
1+
ARG TAG=17.7.1-slim
22

3-
# Inspired on:
4-
# → https://github.com/Purik/android-studio-docker
5-
# → https://github.com/Deadolus/android-studio-docker
3+
FROM node:${TAG}
64

75
ARG CONTAINER_USER="node"
8-
ARG CONTAINER_UID="1000"
9-
ARG DISPLAY=":0.0"
10-
ARG ZSH_THEME="robbyrussell"
6+
ARG LANGUAGE_CODE="en"
7+
ARG COUNTRY_CODE="GB"
8+
ARG ENCODING="UTF-8"
119

12-
# Will not prompt for questions
13-
ENV DEBIAN_FRONTEND=noninteractive \
14-
CONTAINER_USER=node \
15-
CONTAINER_UID=1000 \
16-
ROOT_CA_DIR=/root-ca/ \
17-
PROXY_CA_FILENAME="FirewallProxyCA.crt" \
18-
PROXY_CA_PEM="certificates/FirewallProxyCA.crt" \
19-
PROXY_CA_NAME="FirewallProxyCA" \
20-
DISPLAY=${DISPLAY} \
21-
NO_AT_BRIDGE=1
10+
ARG LOCALE_STRING="${LANGUAGE_CODE}_${COUNTRY_CODE}"
11+
ARG LOCALIZATION="${LOCALE_STRING}.${ENCODING}"
2212

23-
# NO_AT_BRIDGE=1
24-
# Removes DBUS warning that should be only seen by Developer
25-
# https://bugs.launchpad.net/ubuntu/+source/at-spi2-core/+bug/1193236
13+
ARG OH_MY_ZSH_THEME="bira"
2614

27-
COPY ./setup ${ROOT_CA_DIR}
28-
29-
RUN apt update && \
30-
apt -y upgrade && \
15+
RUN apt update && apt -y upgrade && \
3116
apt -y install \
32-
locales \
33-
tzdata \
34-
ca-certificates \
35-
inotify-tools \
36-
libnss3-tools \
37-
curl \
38-
git \
39-
zsh \
40-
unzip \
41-
nodejs \
42-
npm \
43-
libxss1 && \
44-
45-
locale-gen en_GB.UTF-8 && \
46-
dpkg-reconfigure locales && \
47-
48-
# https://github.com/guard/listen/wiki/Increasing-the-amount-of-inotify-watchers
49-
printf "fs.inotify.max_user_watches=524288\n" >> /etc/sysctl.conf && \
17+
locales \
18+
git \
19+
curl \
20+
inotify-tools \
21+
zsh && \
5022

51-
# add unprivileged user
52-
useradd -m -u ${CONTAINER_UID} -s /bin/bash ${CONTAINER_USER} && \
23+
echo "${LOCALIZATION} ${ENCODING}" > /etc/locale.gen && \
24+
locale-gen "${LOCALIZATION}" && \
5325

54-
# Useful when running behind a corporate firewall or a proxy
55-
cd ${ROOT_CA_DIR} && \
56-
./add-proxy-certificate.sh "${PROXY_CA_PEM}" && \
57-
./add-certificate-to-node-server.sh "/etc/ssl/certs/${PROXY_CA_NAME}.pem" && \
26+
# useradd -m -u 1000 -s /usr/bin/zsh "${CONTAINER_USER}" && \
5827

59-
# Install Oh My Zsh for Root and Node user
60-
bash -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" && \
61-
chsh -s /usr/bin/zsh && \
62-
cp -R /root/.oh-my-zsh /home/"${CONTAINER_USER}" && \
63-
cp /root/.zsh* /home/"${CONTAINER_USER}" && \
64-
sed -i "s/\/root/\/home\/${CONTAINER_USER}/g" /home/"${CONTAINER_USER}"/.zshrc && \
65-
chown -R "${CONTAINER_USER}":"${CONTAINER_USER}" /home/"${CONTAINER_USER}" && \
66-
echo PATH=/opt/android-studio/bin:$PATH >> /home/${CONTAINER_USER}/.bashrc && \
67-
echo PATH=/opt/android-studio/bin:$PATH >> /home/${CONTAINER_USER}/.zshrc && \
68-
sed -i s/ZSH_THEME=\"robbyrussell\"/ZSH_THEME=\"${ZSH_THEME}\"/g /home/${CONTAINER_USER}/.zshrc && \
28+
bash -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" && \
6929

70-
# Install node in a more current version
71-
curl -sL https://deb.nodesource.com/setup_10.x | bash - && \
72-
apt install -y nodejs
73-
74-
ENV LANG=en_GB.UTF-8 \
75-
LANGUAGE=en_GB:en \
76-
LC_ALL=en_GB.UTF-8
30+
cp -v /root/.zshrc /home/"${CONTAINER_USER}"/.zshrc && \
31+
cp -rv /root/.oh-my-zsh /home/"${CONTAINER_USER}"/.oh-my-zsh && \
32+
sed -i "s/\/root/\/home\/${CONTAINER_USER}/g" /home/"${CONTAINER_USER}"/.zshrc && \
33+
sed -i s/ZSH_THEME=\"robbyrussell\"/ZSH_THEME=\"${OH_MY_ZSH_THEME}\"/g /home/${CONTAINER_USER}/.zshrc && \
34+
mkdir /home/"${CONTAINER_USER}"/workspace && \
35+
chown -R "${CONTAINER_USER}":"${CONTAINER_USER}" /home/"${CONTAINER_USER}"
7736

7837
USER ${CONTAINER_USER}
7938

39+
ENV USER ${CONTAINER_USER}
40+
ENV LANG "${LOCALIZATION}"
41+
ENV LANGUAGE "${LOCALE_STRING}:${LANGUAGE_CODE}"
42+
ENV PATH=/home/${CONTAINER_USER}/.local/bin:${PATH}
43+
ENV LC_ALL "${LOCALIZATION}"
44+
8045
WORKDIR /home/${CONTAINER_USER}/workspace
8146

8247
CMD ["zsh"]

servers/shapes-api/docker/setup/adb-setup-certificate.sh

-15
This file was deleted.

servers/shapes-api/docker/setup/add-certificate-to-browser.sh

-49
This file was deleted.

servers/shapes-api/docker/setup/add-certificate-to-node-server.sh

-27
This file was deleted.

servers/shapes-api/docker/setup/add-proxy-certificate.sh

-20
This file was deleted.

servers/shapes-api/docker/setup/certificates/.gitignore

-2
This file was deleted.

servers/shapes-api/docker/setup/create-domain-certificate.sh

-59
This file was deleted.

servers/shapes-api/docker/setup/localhost.txt

-15
This file was deleted.

0 commit comments

Comments
 (0)