@@ -41,8 +41,10 @@ RUN cp `ls -t distribution/target/*.tar.gz | head -1` /opengrok.tar.gz
41
41
# Store the version in a file so that the tools can report it.
42
42
RUN /mvn/mvnw help:evaluate -Dexpression=project.version -q -DforceStdout > /mvn/VERSION
43
43
44
- FROM tomcat:10.1.19 -jdk17
44
+ FROM tomcat:10.1.30 -jdk17
45
45
LABEL maintainer="https://github.com/oracle/opengrok"
46
+ LABEL org.opencontainers.image.source="https://github.com/oracle/opengrok"
47
+ LABEL org.opencontainers.image.description="OpenGrok code search"
46
48
47
49
# Add Perforce apt source.
48
50
# hadolint ignore=DL3008,DL3009
@@ -64,11 +66,11 @@ RUN apt-get update && \
64
66
# hadolint ignore=DL3008,DL3059
65
67
RUN architecture=$(uname -m) && if [[ "$architecture" == "aarch64" ]]; then \
66
68
echo "aarch64: do not install helix-p4d." ; else \
67
- apt-get install --no-install-recommends -y helix-p4d; fi
69
+ apt-get install --no-install-recommends -y helix-p4d || echo "Failed to install Perforce" ; fi
68
70
69
71
# compile and install universal-ctags
70
72
# hadolint ignore=DL3003,DL3008
71
- RUN apt-get install --no-install-recommends -y pkg-config automake build-essential && \
73
+ RUN apt-get install --no-install-recommends -y pkg-config automake build-essential libxml2-dev && \
72
74
git clone https://github.com/universal-ctags/ctags /root/ctags && \
73
75
cd /root/ctags && ./autogen.sh && ./configure && make && make install && \
74
76
apt-get remove -y automake build-essential && \
@@ -77,19 +79,17 @@ RUN apt-get install --no-install-recommends -y pkg-config automake build-essenti
77
79
apt-get clean && \
78
80
rm -rf /var/lib/apt/lists/*
79
81
80
- # Update the Python tooling in order to successfully install the opengrok-tools package.
81
- # hadolint ignore=DL3013
82
- RUN python3 -m pip install --no-cache-dir --upgrade pip setuptools
83
-
84
82
# prepare OpenGrok binaries and directories
85
83
# hadolint ignore=DL3010
86
84
COPY --from=build opengrok.tar.gz /opengrok.tar.gz
87
85
# hadolint ignore=DL3013
88
86
RUN mkdir -p /opengrok /opengrok/etc /opengrok/data /opengrok/src && \
89
87
tar -zxvf /opengrok.tar.gz -C /opengrok --strip-components 1 && \
90
88
rm -f /opengrok.tar.gz && \
91
- python3 -m pip install --no-cache-dir /opengrok/tools/opengrok-tools.tar.gz && \
92
- python3 -m pip install --no-cache-dir Flask Flask-HTTPAuth waitress # for /reindex REST endpoint handled by start.py
89
+ python3 -m venv /venv
90
+ ENV PATH=/venv/bin:$PATH
91
+ RUN /venv/bin/python3 -m pip install --no-cache-dir /opengrok/tools/opengrok-tools.tar.gz && \
92
+ /venv/bin/python3 -m pip install --no-cache-dir Flask Flask-HTTPAuth waitress # for /reindex REST endpoint handled by start.py
93
93
94
94
COPY --from=build /mvn/VERSION /opengrok/VERSION
95
95
0 commit comments