mirror of
https://github.com/vacp2p/linea-besu.git
synced 2026-01-08 20:47:59 -05:00
Update OpenJ9 Docker image (#5335)
* Update OpenJ9 docker image configuration by using ubuntu 22.04 as the base image * Take into account ARM64 plateforms * fix issue with ARM64 plateforms --------- Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net> Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
This commit is contained in:
@@ -1,45 +1,54 @@
|
||||
FROM ibm-semeru-runtimes:open-17-jdk-jammy
|
||||
FROM ubuntu:22.04
|
||||
|
||||
ARG VERSION="dev"
|
||||
RUN apt-get update && \
|
||||
apt-get install --no-install-recommends -q --assume-yes curl=7* wget=1.21* jq=1.6* net-tools=1.60* libjemalloc-dev=5.* && \
|
||||
ARG TARGETPLATFORM
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install --no-install-recommends -q --assume-yes curl=7* libjemalloc-dev=5.* && \
|
||||
apt-get clean && \
|
||||
rm -rf /var/lib/apt/lists/* && \
|
||||
adduser --disabled-password --gecos "" --home /opt/besu besu && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN ARCH=$(uname -m) && \
|
||||
if [ "$ARCH" = "aarch64" ]; then \
|
||||
curl -kL -o jdk-17.tar.gz https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.5%2B8_openj9-0.35.0/ibm-semeru-open-jdk_aarch64_linux_17.0.5_8_openj9-0.35.0.tar.gz ; \
|
||||
elif [ "$(uname -s)" = "Darwin" ] && [ "$(uname -m)" = "arm64" ]; then \
|
||||
curl -kL -o jdk-17.tar.gz https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.5%2B8_openj9-0.35.0/ibm-semeru-open-jdk_aarch64_linux_17.0.5_8_openj9-0.35.0.tar.gz ; \
|
||||
elif [ "$ARCH" = "x86_64" ]; then \
|
||||
curl -kL -o jdk-17.tar.gz https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.5%2B8_openj9-0.35.0/ibm-semeru-open-jdk_x64_linux_17.0.5_8_openj9-0.35.0.tar.gz ; \
|
||||
else \
|
||||
echo "Unsupported platform: $ARCH"; exit 1; \
|
||||
fi
|
||||
|
||||
RUN tar -xzf jdk-17.tar.gz && \
|
||||
rm jdk-17.tar.gz && \
|
||||
mv jdk-17.0.5+8 /usr/bin/ && \
|
||||
update-alternatives --install "/usr/bin/java" "java" "/usr/bin/jdk-17.0.5+8/bin/java" 1 && \
|
||||
adduser --disabled-password --gecos "" --home /opt/besu besu && \
|
||||
chown besu:besu /opt/besu && \
|
||||
chmod 0755 /opt/besu
|
||||
|
||||
ENV JAVA_HOME /usr/bin/jdk-17.0.5+8/
|
||||
RUN export JAVA_HOME
|
||||
|
||||
USER besu
|
||||
WORKDIR /opt/besu
|
||||
|
||||
COPY --chown=besu:besu besu /opt/besu/
|
||||
|
||||
# Expose services ports
|
||||
# 5005 JDWP for attaching remote debuggers
|
||||
# 8545 HTTP JSON-RPC
|
||||
# 8546 WS JSON-RPC
|
||||
# 8547 HTTP GraphQL
|
||||
# 8550 HTTP ENGINE JSON-RPC
|
||||
# 8551 WS ENGINE JSON-RPC
|
||||
# 9545 Metrics
|
||||
# 1098 JMX / JMX-RMI
|
||||
# 30303 P2P
|
||||
EXPOSE 5005 8545 8546 8547 8550 8551 9545 1098 30303
|
||||
EXPOSE 8545 8546 8547 8550 8551 30303
|
||||
|
||||
# defaults for host interfaces
|
||||
ENV BESU_RPC_HTTP_HOST 0.0.0.0
|
||||
ENV BESU_RPC_WS_HOST 0.0.0.0
|
||||
ENV BESU_GRAPHQL_HTTP_HOST 0.0.0.0
|
||||
ENV BESU_METRICS_HOST 0.0.0.0
|
||||
ENV BESU_JMX_HOST 0.0.0.0
|
||||
ENV BESU_PID_PATH "/tmp/pid"
|
||||
ENV BESU_HOST_ALLOWLIST "*"
|
||||
|
||||
#debug options for maximum observability
|
||||
ENV BESU_LOGGING "INFO"
|
||||
ENV BESU_RPC_HTTP_API "ETH,NET,TRACE,DEBUG,ADMIN,TXPOOL"
|
||||
ENV JDWP_OPTS "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005"
|
||||
ENV JAVA_OPTS "${JDWP_OPTS} "
|
||||
|
||||
ENV OTEL_RESOURCE_ATTRIBUTES="service.name=besu,service.version=$VERSION"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user