Improve Dockerfile: update base image and optimize image size (#2649)
Also, drop ineffectual flags from configure.
This commit is contained in:
1 parent
12ce4e3b54
commit
2270e208d2
2 files changed
+31
-53
No files matched your search
@@ -43,8 +43,7 @@ jobs:
|
||||
- name: Build
|
||||
run: |
|
||||
autoreconf -i
|
||||
./configure --disable-dependency-tracking \
|
||||
--disable-silent-rules \
|
||||
./configure \
|
||||
--disable-docs \
|
||||
--disable-maintainer-mode \
|
||||
--disable-valgrind \
|
||||
@@ -96,8 +95,7 @@ jobs:
|
||||
- name: Build
|
||||
run: |
|
||||
autoreconf -i
|
||||
./configure --disable-dependency-tracking \
|
||||
--disable-silent-rules \
|
||||
./configure \
|
||||
--disable-docs \
|
||||
--disable-maintainer-mode \
|
||||
--disable-valgrind \
|
||||
@@ -156,8 +154,7 @@ jobs:
|
||||
shell: msys2 {0}
|
||||
run: |
|
||||
autoreconf -i
|
||||
./configure --disable-dependency-tracking \
|
||||
--disable-silent-rules \
|
||||
./configure \
|
||||
--disable-docs \
|
||||
--disable-maintainer-mode \
|
||||
--disable-valgrind \
|
||||
@@ -203,8 +200,7 @@ jobs:
|
||||
- name: Create dist
|
||||
run: |
|
||||
autoreconf -i
|
||||
./configure --disable-dependency-tracking \
|
||||
--disable-silent-rules \
|
||||
./configure \
|
||||
--disable-docs \
|
||||
--disable-maintainer-mode \
|
||||
--disable-valgrind \
|
||||
|
||||
+27
-45
@@ -1,54 +1,36 @@
|
||||
FROM debian:9
|
||||
FROM debian:12-slim AS builder
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive \
|
||||
DEBCONF_NONINTERACTIVE_SEEN=true \
|
||||
LC_ALL=C.UTF-8 \
|
||||
LANG=C.UTF-8
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y \
|
||||
build-essential \
|
||||
autoconf \
|
||||
libtool \
|
||||
git \
|
||||
&& apt-get clean \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
WORKDIR /app
|
||||
COPY . /app
|
||||
RUN autoreconf -i \
|
||||
&& ./configure \
|
||||
--disable-docs \
|
||||
--disable-maintainer-mode \
|
||||
--disable-valgrind \
|
||||
--with-oniguruma=builtin \
|
||||
--enable-static \
|
||||
--enable-all-static \
|
||||
--prefix=/usr/local \
|
||||
&& make -j$(nproc) \
|
||||
&& make check \
|
||||
&& make install-strip
|
||||
|
||||
# get dependencies, build, and remove anything we don't need for running jq.
|
||||
# valgrind seems to have trouble with pthreads TLS so it's off.
|
||||
FROM scratch
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install -y \
|
||||
build-essential \
|
||||
autoconf \
|
||||
libtool \
|
||||
git \
|
||||
bison \
|
||||
flex \
|
||||
python3 \
|
||||
python3-pip \
|
||||
wget && \
|
||||
pip3 install pipenv && \
|
||||
(cd /app/docs && pipenv sync) && \
|
||||
(cd /app && \
|
||||
git submodule init && \
|
||||
git submodule update && \
|
||||
autoreconf -i && \
|
||||
./configure --disable-valgrind --enable-all-static --prefix=/usr/local && \
|
||||
make -j8 && \
|
||||
make check && \
|
||||
make install ) && \
|
||||
(cd /app/modules/oniguruma && \
|
||||
make uninstall ) && \
|
||||
(cd /app && \
|
||||
make distclean ) && \
|
||||
apt-get purge -y \
|
||||
build-essential \
|
||||
autoconf \
|
||||
libtool \
|
||||
bison \
|
||||
git \
|
||||
flex \
|
||||
python3 \
|
||||
python3-pip && \
|
||||
apt-get autoremove -y && \
|
||||
rm -rf /app/modules/oniguruma/* && \
|
||||
rm -rf /app/modules/oniguruma/.git && \
|
||||
rm -rf /app/modules/oniguruma/.gitignore && \
|
||||
rm -rf /var/lib/apt/lists/* /var/lib/gems
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/jq"]
|
||||
CMD []
|
||||
COPY --from=builder /app/AUTHORS /app/COPYING /usr/local/bin/jq /
|
||||
RUN ["/jq", "--version"]
|
||||
ENTRYPOINT ["/jq"]
|
||||
Reference in new issue
Block a user