fix: Implement architecture-specific OTEL installation logic (#3061)
This commit is contained in:
19
Dockerfile
19
Dockerfile
@@ -44,14 +44,27 @@ FROM ankane/pgvector:v0.5.1 AS runtime
|
|||||||
# Overridable Node.js version with --build-arg NODE_VERSION
|
# Overridable Node.js version with --build-arg NODE_VERSION
|
||||||
ARG NODE_VERSION=22
|
ARG NODE_VERSION=22
|
||||||
|
|
||||||
RUN apt-get update && \
|
# Allow overriding the OpenTelemetry Collector version and let Docker inject TARGETARCH during build
|
||||||
|
ARG OTEL_VERSION=0.96.0
|
||||||
|
ARG TARGETARCH
|
||||||
|
|
||||||
|
RUN set -eux; \
|
||||||
|
# Map TARGETARCH to the naming used by otel release assets
|
||||||
|
case "${TARGETARCH:-amd64}" in \
|
||||||
|
arm64|aarch64) OTEL_ARCH=arm64 ;; \
|
||||||
|
amd64|x86_64|x64) OTEL_ARCH=amd64 ;; \
|
||||||
|
*) OTEL_ARCH=amd64 ;; \
|
||||||
|
esac; \
|
||||||
|
apt-get update && \
|
||||||
# Install curl, Python, and PostgreSQL client libraries
|
# Install curl, Python, and PostgreSQL client libraries
|
||||||
apt-get install -y curl python3 python3-venv libpq-dev && \
|
apt-get install -y curl python3 python3-venv libpq-dev && \
|
||||||
# Install Node.js
|
# Install Node.js
|
||||||
curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION}.x | bash - && \
|
curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION}.x | bash - && \
|
||||||
apt-get install -y nodejs && \
|
apt-get install -y nodejs && \
|
||||||
# Install OpenTelemetry Collector
|
# Download and install OpenTelemetry Collector for the target architecture
|
||||||
curl -L https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v0.96.0/otelcol-contrib_0.96.0_linux_amd64.tar.gz -o /tmp/otel-collector.tar.gz && \
|
OTEL_FILENAME="otelcol-contrib_${OTEL_VERSION}_linux_${OTEL_ARCH}.tar.gz"; \
|
||||||
|
echo "Downloading https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v${OTEL_VERSION}/${OTEL_FILENAME}"; \
|
||||||
|
curl -L "https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v${OTEL_VERSION}/${OTEL_FILENAME}" -o /tmp/otel-collector.tar.gz && \
|
||||||
tar xzf /tmp/otel-collector.tar.gz -C /usr/local/bin && \
|
tar xzf /tmp/otel-collector.tar.gz -C /usr/local/bin && \
|
||||||
rm /tmp/otel-collector.tar.gz && \
|
rm /tmp/otel-collector.tar.gz && \
|
||||||
mkdir -p /etc/otel && \
|
mkdir -p /etc/otel && \
|
||||||
|
|||||||
Reference in New Issue
Block a user