2020-01-20 07:03:01 -05:00
|
|
|
FROM debian:buster
|
2018-11-03 03:57:10 -05:00
|
|
|
LABEL maintainer="Andrey Antukh <niwi@niwi.nz>"
|
2016-11-20 14:08:24 -05:00
|
|
|
|
2019-09-20 10:31:03 -05:00
|
|
|
ARG DEBIAN_FRONTEND=noninteractive
|
2019-06-03 09:53:31 -05:00
|
|
|
|
2020-07-01 02:36:40 -05:00
|
|
|
ENV NODE_VERSION=v12.18.2 \
|
|
|
|
CLOJURE_VERSION=1.10.1.536 \
|
2019-06-03 09:53:31 -05:00
|
|
|
LANG=en_US.UTF-8 \
|
2019-06-05 03:41:12 -05:00
|
|
|
LC_ALL=C.UTF-8
|
2019-06-03 09:53:31 -05:00
|
|
|
|
2020-01-20 07:03:01 -05:00
|
|
|
RUN set -ex; \
|
|
|
|
mkdir -p /etc/resolvconf/resolv.conf.d; \
|
|
|
|
echo "nameserver 8.8.8.8" > /etc/resolvconf/resolv.conf.d/tail;
|
|
|
|
|
2019-02-15 16:35:49 -05:00
|
|
|
RUN set -ex; \
|
|
|
|
apt-get update && \
|
|
|
|
apt-get install -yq \
|
|
|
|
locales \
|
2019-09-17 11:14:49 -05:00
|
|
|
gnupg2 \
|
2019-02-15 16:35:49 -05:00
|
|
|
ca-certificates \
|
|
|
|
wget \
|
2019-06-05 05:07:01 -05:00
|
|
|
sudo \
|
|
|
|
tmux \
|
|
|
|
vim \
|
|
|
|
curl \
|
|
|
|
zsh \
|
2019-02-15 16:35:49 -05:00
|
|
|
bash \
|
|
|
|
git \
|
|
|
|
rlwrap \
|
2020-01-20 07:03:01 -05:00
|
|
|
python \
|
2019-02-15 16:35:49 -05:00
|
|
|
build-essential \
|
|
|
|
imagemagick \
|
|
|
|
webp \
|
2020-06-02 09:14:23 -05:00
|
|
|
nginx \
|
2020-02-04 06:35:55 -05:00
|
|
|
jq \
|
2020-04-19 12:36:48 -05:00
|
|
|
redis-tools \
|
2019-02-15 16:35:49 -05:00
|
|
|
; \
|
2019-06-05 05:07:01 -05:00
|
|
|
rm -rf /var/lib/apt/lists/*;
|
2016-11-20 14:08:24 -05:00
|
|
|
|
2020-07-01 03:38:18 -05:00
|
|
|
RUN set -ex; \
|
|
|
|
apt-get update && \
|
|
|
|
apt-get install -yq \
|
|
|
|
gconf-service \
|
|
|
|
libasound2 \
|
|
|
|
libatk1.0-0 \
|
|
|
|
libatk-bridge2.0-0 \
|
|
|
|
libcairo2 \
|
|
|
|
libcups2 \
|
|
|
|
libdbus-1-3 \
|
|
|
|
libexpat1 \
|
|
|
|
libfontconfig1 \
|
|
|
|
libgcc1 \
|
|
|
|
libgconf-2-4 \
|
|
|
|
libgdk-pixbuf2.0-0 \
|
|
|
|
libglib2.0-0 \
|
|
|
|
libgtk-3-0 \
|
|
|
|
libnspr4 \
|
|
|
|
libpango-1.0-0 \
|
|
|
|
libpangocairo-1.0-0 \
|
|
|
|
libx11-6 \
|
|
|
|
libx11-xcb1 \
|
|
|
|
libxcb1 \
|
|
|
|
libxcomposite1 \
|
|
|
|
libxcursor1 \
|
|
|
|
libxdamage1 \
|
|
|
|
libxext6 \
|
|
|
|
libxfixes3 \
|
|
|
|
libxi6 \
|
|
|
|
libxrandr2 \
|
|
|
|
libxrender1 \
|
|
|
|
libxss1 \
|
|
|
|
libxtst6 \
|
|
|
|
fonts-liberation \
|
|
|
|
libappindicator1 \
|
|
|
|
libnss3 \
|
|
|
|
libgbm1 \
|
|
|
|
; \
|
|
|
|
rm -rf /var/lib/apt/lists/*;
|
|
|
|
|
2020-02-04 06:35:55 -05:00
|
|
|
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0xB1998361219BD9C9 && \
|
|
|
|
echo "deb http://repos.azulsystems.com/debian stable main" >> /etc/apt/sources.list.d/zulu.list && \
|
|
|
|
apt-get -qq update && \
|
2020-05-18 08:03:13 -05:00
|
|
|
apt-get -qqy install zulu-14 && \
|
2020-02-04 06:35:55 -05:00
|
|
|
rm -rf /var/lib/apt/lists/*;
|
|
|
|
|
2020-05-18 08:03:13 -05:00
|
|
|
ENV JAVA_HOME=/usr/lib/jvm/zulu-14-amd64
|
2020-02-04 06:35:55 -05:00
|
|
|
|
|
|
|
RUN curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - && \
|
|
|
|
echo "deb http://apt.postgresql.org/pub/repos/apt buster-pgdg main" >> /etc/apt/sources.list.d/postgresql.list && \
|
|
|
|
apt-get -qq update && \
|
|
|
|
apt-get -qqy install postgresql-client-12 && \
|
|
|
|
rm -rf /var/lib/apt/lists/*;
|
|
|
|
|
2016-11-20 14:08:24 -05:00
|
|
|
COPY files/bashrc /root/.bashrc
|
|
|
|
COPY files/vimrc /root/.vimrc
|
2020-02-25 10:18:55 -05:00
|
|
|
COPY files/phantomjs-mock /usr/bin/phantomjs
|
2016-11-20 14:08:24 -05:00
|
|
|
|
2020-02-25 08:02:12 -05:00
|
|
|
ARG EXTERNAL_UID=1000
|
|
|
|
|
2019-02-15 17:38:14 -05:00
|
|
|
RUN set -ex; \
|
2019-06-05 05:07:01 -05:00
|
|
|
useradd -m -g users -s /bin/zsh -u $EXTERNAL_UID uxbox; \
|
2019-02-15 17:09:04 -05:00
|
|
|
passwd uxbox -d; \
|
2019-02-15 17:38:14 -05:00
|
|
|
echo "uxbox ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
|
|
|
|
|
2019-06-03 09:53:31 -05:00
|
|
|
RUN set -ex; \
|
2019-06-10 18:01:55 -05:00
|
|
|
wget "https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh"; \
|
|
|
|
chmod +x "linux-install-$CLOJURE_VERSION.sh"; \
|
|
|
|
"./linux-install-$CLOJURE_VERSION.sh"; \
|
|
|
|
rm -rf "linux-install-$CLOJURE_VERSION.sh"
|
2019-06-03 09:53:31 -05:00
|
|
|
|
2016-11-20 14:08:24 -05:00
|
|
|
USER uxbox
|
2019-02-15 17:38:14 -05:00
|
|
|
WORKDIR /home/uxbox
|
2016-11-20 14:08:24 -05:00
|
|
|
|
|
|
|
COPY files/bashrc /home/uxbox/.bashrc
|
2019-06-05 03:41:12 -05:00
|
|
|
COPY files/zshrc /home/uxbox/.zshrc
|
2016-11-20 14:08:24 -05:00
|
|
|
COPY files/vimrc /home/uxbox/.vimrc
|
2019-12-18 04:54:28 -05:00
|
|
|
COPY files/start-tmux.sh /home/uxbox/start-tmux.sh
|
2016-11-20 14:08:24 -05:00
|
|
|
COPY files/tmux.conf /home/uxbox/.tmux.conf
|
2019-06-03 09:53:31 -05:00
|
|
|
COPY files/entrypoint.sh /home/uxbox/
|
2019-09-20 10:31:03 -05:00
|
|
|
COPY files/init.sh /home/uxbox/
|
2016-11-20 14:08:24 -05:00
|
|
|
|
2020-01-20 07:03:01 -05:00
|
|
|
RUN set -ex; \
|
|
|
|
git clone https://github.com/creationix/nvm.git .nvm; \
|
|
|
|
bash -c "source .nvm/nvm.sh && nvm install $NODE_VERSION"; \
|
|
|
|
bash -c "source .nvm/nvm.sh && nvm alias default $NODE_VERSION"; \
|
2020-07-03 08:41:00 -05:00
|
|
|
bash -c "source .nvm/nvm.sh && nvm use default"; \
|
|
|
|
bash -c "source .nvm/nvm.sh && npm install -g yarn";
|
2020-03-29 07:33:54 -05:00
|
|
|
|
|
|
|
EXPOSE 3447
|
|
|
|
EXPOSE 3448
|
2020-01-20 07:03:01 -05:00
|
|
|
EXPOSE 3449
|
|
|
|
EXPOSE 6060
|
|
|
|
EXPOSE 9090
|
|
|
|
|
2019-06-05 03:41:12 -05:00
|
|
|
ENTRYPOINT ["zsh", "/home/uxbox/entrypoint.sh"]
|
2019-12-18 04:54:28 -05:00
|
|
|
CMD ["/home/uxbox/init.sh"]
|