summaryrefslogtreecommitdiff
path: root/Dockerfile
blob: 3ceb3a1cf7496f870c585b48a363721cb1be83ad (plain)
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
# syntax = docker/dockerfile:experimental
FROM debian:stable-slim AS deb-downloader
RUN apt-get update -q
RUN apt-get install --no-install-recommends -y apt-transport-https dirmngr gnupg ca-certificates
RUN apt-get update -q
RUN rm /etc/apt/apt.conf.d/docker-clean
RUN apt-get install --download-only -y --no-install-recommends \
  bison \
  build-essential \
  default-libmysqlclient-dev \
  libbz2-dev \
  libcurl4 \
  libcurl4-openssl-dev \
  libedit-dev \
  libffi-dev \
  libicu-dev \
  libjpeg-dev \
  libkrb5-dev \
  liblttng-ctl-dev \
  liblttng-ctl0 \
  liblzma-dev \
  libncurses-dev \
  libncurses5-dev \
  libncursesw5-dev \
  libonig-dev \
  libpng-dev \
  libpq-dev \
  libre2-dev \
  libreadline-dev \
  libsqlite3-dev \
  libssl-dev \
  libtool \
  libxml2-dev \
  libxmlsec1-dev \
  libxslt-dev \
  libxslt1-dev \
  libyaml-dev \
  libzip-dev \
  zlib1g \
  zlib1g-dev

FROM debian:stable-slim
ENV ASDF_DATA_DIR="/opt/asdf"
ENV PATH="${ASDF_DATA_DIR}/shims:${ASDF_DATA_DIR}/bin:/opt/gitlab/.local/bin:${PATH}"
ENV TERM="xterm"
WORKDIR /opt/gitlab
COPY config/01_nodoc /etc/dpkg/dpkg.cfg.d/01_nodoc
RUN mkdir -p /opt/toolcache/common
COPY --from=deb-downloader /var/cache/apt/archives/*.deb /opt/toolcache/common/
ADD https://rubygems.org/downloads/bundler-1.17.3.gem /opt/toolcache/
ADD https://rubygems.org/downloads/bundler-2.1.4.gem /opt/toolcache/
COPY pkg/asdf*.deb /opt/toolcache/
COPY pkg/dotnet*.deb /opt/toolcache/
COPY pkg/golang*.deb /opt/toolcache/
COPY pkg/java-8*.deb /opt/toolcache/
COPY pkg/java-11*.deb /opt/toolcache/
COPY pkg/license*.deb /opt/toolcache/
COPY pkg/mono*.deb /opt/toolcache/
COPY pkg/node*.deb /opt/toolcache/
COPY pkg/php*.deb /opt/toolcache/
COPY pkg/python*.deb /opt/toolcache/
COPY pkg/ruby*.deb /opt/toolcache/
COPY pkg/rust*.deb /opt/toolcache/
COPY config/install.sh /opt/install.sh
RUN bash /opt/install.sh
COPY run.sh /
ENTRYPOINT ["/run.sh"]