-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Updated Unit to 1.34.0 #18140
base: master
Are you sure you want to change the base?
Updated Unit to 1.34.0 #18140
Conversation
This also bumps language variants to: - php 8.4 - python 3.13 Note that this new release also incorporates Rust-based code into the main binary, which means build times are now longer and the resulting images have a bigger size.
Diff for 2357c85:diff --git a/_bashbrew-cat b/_bashbrew-cat
index dc39f1a..5bd3620 100644
--- a/_bashbrew-cat
+++ b/_bashbrew-cat
@@ -1,121 +1,121 @@
Maintainers: Unit Docker Maintainers <[email protected]> (@nginx)
GitRepo: https://github.com/nginx/unit.git
-Tags: 1.33.0-go1.22, go1.22
+Tags: 1.34.0-go1.22, go1.22
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
File: Dockerfile.go1.22
-Tags: 1.33.0-go1.23, go1.23, go1, go
+Tags: 1.34.0-go1.23, go1.23, go1, go
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
File: Dockerfile.go1.23
-Tags: 1.33.0-jsc11, jsc11, jsc
+Tags: 1.34.0-jsc11, jsc11, jsc
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
File: Dockerfile.jsc11
-Tags: 1.33.0-minimal, minimal, latest
+Tags: 1.34.0-minimal, minimal, latest
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
File: Dockerfile.minimal
-Tags: 1.33.0-node20, node20
+Tags: 1.34.0-node20, node20
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
File: Dockerfile.node20
-Tags: 1.33.0-node22, node22, node
+Tags: 1.34.0-node22, node22, node
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
File: Dockerfile.node22
-Tags: 1.33.0-perl5.38, perl5.38
+Tags: 1.34.0-perl5.38, perl5.38
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
File: Dockerfile.perl5.38
-Tags: 1.33.0-perl5.40, perl5.40, perl5, perl
+Tags: 1.34.0-perl5.40, perl5.40, perl5, perl
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
File: Dockerfile.perl5.40
-Tags: 1.33.0-php8.2, php8.2
+Tags: 1.34.0-php8.3, php8.3
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
-File: Dockerfile.php8.2
+File: Dockerfile.php8.3
-Tags: 1.33.0-php8.3, php8.3, php8, php
+Tags: 1.34.0-php8.4, php8.4, php8, php
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
-File: Dockerfile.php8.3
+File: Dockerfile.php8.4
-Tags: 1.33.0-python3.11, python3.11
+Tags: 1.34.0-python3.12, python3.12
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
-File: Dockerfile.python3.11
+File: Dockerfile.python3.12
-Tags: 1.33.0-python3.11-slim, python3.11-slim
+Tags: 1.34.0-python3.12-slim, python3.12-slim
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
-File: Dockerfile.python3.11-slim
+File: Dockerfile.python3.12-slim
-Tags: 1.33.0-python3.12, python3.12, python3, python
+Tags: 1.34.0-python3.13, python3.13, python3, python
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
-File: Dockerfile.python3.12
+File: Dockerfile.python3.13
-Tags: 1.33.0-python3.12-slim, python3.12-slim, python3-slim, python-slim
+Tags: 1.34.0-python3.13-slim, python3.13-slim, python3-slim, python-slim
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
-File: Dockerfile.python3.12-slim
+File: Dockerfile.python3.13-slim
-Tags: 1.33.0-ruby3.2, ruby3.2
+Tags: 1.34.0-ruby3.2, ruby3.2
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
File: Dockerfile.ruby3.2
-Tags: 1.33.0-ruby3.3, ruby3.3, ruby3, ruby
+Tags: 1.34.0-ruby3.3, ruby3.3, ruby3, ruby
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
File: Dockerfile.ruby3.3
-Tags: 1.33.0-wasm, wasm
+Tags: 1.34.0-wasm, wasm
Architectures: amd64, arm64v8
GitFetch: refs/heads/packaging
-GitCommit: 624debcf17ea7faab01fa841bd4dcd9f308cf306
+GitCommit: d8acad350a52a20918c46c09cb0a0f5479400923
Directory: pkg/docker
File: Dockerfile.wasm
diff --git a/_bashbrew-list b/_bashbrew-list
index faa2892..3054837 100644
--- a/_bashbrew-list
+++ b/_bashbrew-list
@@ -1,20 +1,20 @@
-unit:1.33.0-go1.22
-unit:1.33.0-go1.23
-unit:1.33.0-jsc11
-unit:1.33.0-minimal
-unit:1.33.0-node20
-unit:1.33.0-node22
-unit:1.33.0-perl5.38
-unit:1.33.0-perl5.40
-unit:1.33.0-php8.2
-unit:1.33.0-php8.3
-unit:1.33.0-python3.11
-unit:1.33.0-python3.11-slim
-unit:1.33.0-python3.12
-unit:1.33.0-python3.12-slim
-unit:1.33.0-ruby3.2
-unit:1.33.0-ruby3.3
-unit:1.33.0-wasm
+unit:1.34.0-go1.22
+unit:1.34.0-go1.23
+unit:1.34.0-jsc11
+unit:1.34.0-minimal
+unit:1.34.0-node20
+unit:1.34.0-node22
+unit:1.34.0-perl5.38
+unit:1.34.0-perl5.40
+unit:1.34.0-php8.3
+unit:1.34.0-php8.4
+unit:1.34.0-python3.12
+unit:1.34.0-python3.12-slim
+unit:1.34.0-python3.13
+unit:1.34.0-python3.13-slim
+unit:1.34.0-ruby3.2
+unit:1.34.0-ruby3.3
+unit:1.34.0-wasm
unit:go
unit:go1
unit:go1.22
@@ -32,15 +32,15 @@ unit:perl5.38
unit:perl5.40
unit:php
unit:php8
-unit:php8.2
unit:php8.3
+unit:php8.4
unit:python
unit:python3
unit:python3-slim
-unit:python3.11
-unit:python3.11-slim
unit:python3.12
unit:python3.12-slim
+unit:python3.13
+unit:python3.13-slim
unit:python-slim
unit:ruby
unit:ruby3
diff --git a/_bashbrew-list-build-order b/_bashbrew-list-build-order
index e2d46c8..ea155fe 100644
--- a/_bashbrew-list-build-order
+++ b/_bashbrew-list-build-order
@@ -7,10 +7,10 @@ unit:node20
unit:perl
unit:perl5.38
unit:php
-unit:php8.2
+unit:php8.3
unit:python
-unit:python3.11
-unit:python3.11-slim
+unit:python3.12
+unit:python3.12-slim
unit:python-slim
unit:ruby
unit:ruby3.2
diff --git a/unit_go/Dockerfile.go1.23 b/unit_go/Dockerfile.go1.23
index a62be79..a1a6460 100644
--- a/unit_go/Dockerfile.go1.23
+++ b/unit_go/Dockerfile.go1.23
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_go1.22/Dockerfile.go1.22 b/unit_go1.22/Dockerfile.go1.22
index 796a671..6059fc4 100644
--- a/unit_go1.22/Dockerfile.go1.22
+++ b/unit_go1.22/Dockerfile.go1.22
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_jsc/Dockerfile.jsc11 b/unit_jsc/Dockerfile.jsc11
index d133d5b..f97e0e7 100644
--- a/unit_jsc/Dockerfile.jsc11
+++ b/unit_jsc/Dockerfile.jsc11
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_latest/Dockerfile.minimal b/unit_latest/Dockerfile.minimal
index 3880de7..9bff9d4 100644
--- a/unit_latest/Dockerfile.minimal
+++ b/unit_latest/Dockerfile.minimal
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_node/Dockerfile.node22 b/unit_node/Dockerfile.node22
index 85f8aaa..208e59f 100644
--- a/unit_node/Dockerfile.node22
+++ b/unit_node/Dockerfile.node22
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_node20/Dockerfile.node20 b/unit_node20/Dockerfile.node20
index 5ae0979..86c3a83 100644
--- a/unit_node20/Dockerfile.node20
+++ b/unit_node20/Dockerfile.node20
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_perl/Dockerfile.perl5.40 b/unit_perl/Dockerfile.perl5.40
index aa67d7c..6b88a29 100644
--- a/unit_perl/Dockerfile.perl5.40
+++ b/unit_perl/Dockerfile.perl5.40
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_perl5.38/Dockerfile.perl5.38 b/unit_perl5.38/Dockerfile.perl5.38
index 88ac496..d5f3403 100644
--- a/unit_perl5.38/Dockerfile.perl5.38
+++ b/unit_perl5.38/Dockerfile.perl5.38
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_php8.2/Dockerfile.php8.2 b/unit_php/Dockerfile.php8.4
similarity index 73%
rename from unit_php8.2/Dockerfile.php8.2
rename to unit_php/Dockerfile.php8.4
index 354acf9..c6a36da 100644
--- a/unit_php8.2/Dockerfile.php8.2
+++ b/unit_php/Dockerfile.php8.4
@@ -1,21 +1,41 @@
-FROM php:8.2-cli-bookworm
+FROM php:8.4-cli-bookworm
-LABEL org.opencontainers.image.title="Unit (php8.2)"
+LABEL org.opencontainers.image.title="Unit (php8.4)"
LABEL org.opencontainers.image.description="Official build of Unit for Docker."
LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_php/Dockerfile.php8.3 b/unit_php8.3/Dockerfile.php8.3
similarity index 74%
rename from unit_php/Dockerfile.php8.3
rename to unit_php8.3/Dockerfile.php8.3
index 98bd384..3174c02 100644
--- a/unit_php/Dockerfile.php8.3
+++ b/unit_php8.3/Dockerfile.php8.3
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_php8.2/docker-entrypoint.sh b/unit_php8.3/docker-entrypoint.sh
similarity index 100%
rename from unit_php8.2/docker-entrypoint.sh
rename to unit_php8.3/docker-entrypoint.sh
diff --git a/unit_php8.2/welcome.html b/unit_php8.3/welcome.html
similarity index 100%
rename from unit_php8.2/welcome.html
rename to unit_php8.3/welcome.html
diff --git a/unit_php8.2/welcome.json b/unit_php8.3/welcome.json
similarity index 100%
rename from unit_php8.2/welcome.json
rename to unit_php8.3/welcome.json
diff --git a/unit_php8.2/welcome.md b/unit_php8.3/welcome.md
similarity index 100%
rename from unit_php8.2/welcome.md
rename to unit_php8.3/welcome.md
diff --git a/unit_wasm/Dockerfile.wasm b/unit_python-slim/Dockerfile.python3.13-slim
similarity index 75%
copy from unit_wasm/Dockerfile.wasm
copy to unit_python-slim/Dockerfile.python3.13-slim
index 567f98a..6ca7761 100644
--- a/unit_wasm/Dockerfile.wasm
+++ b/unit_python-slim/Dockerfile.python3.13-slim
@@ -1,21 +1,41 @@
-FROM debian:bookworm-slim
+FROM python:3.13-slim-bookworm
-LABEL org.opencontainers.image.title="Unit (wasm)"
+LABEL org.opencontainers.image.title="Unit (python3.13-slim)"
LABEL org.opencontainers.image.description="Official build of Unit for Docker."
LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
@@ -45,35 +66,14 @@ RUN set -ex \
&& make -j $NCPU unitd \
&& install -pm755 build/sbin/unitd /usr/sbin/unitd \
&& make clean \
- && apt-get install --no-install-recommends --no-install-suggests -y libclang-dev cmake \
- && export RUST_VERSION=1.80.1 \
- && export RUSTUP_HOME=/usr/src/unit/rustup \
- && export CARGO_HOME=/usr/src/unit/cargo \
- && export PATH=/usr/src/unit/cargo/bin:$PATH \
- && dpkgArch="$(dpkg --print-architecture)" \
- && case "${dpkgArch##*-}" in \
- amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
- arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
- *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
- esac \
- && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
- && curl -L -O "$url" \
- && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
- && chmod +x rustup-init \
- && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
- && rm rustup-init \
- && rustup --version \
- && cargo --version \
- && rustc --version \
- && make -C pkg/contrib .wasmtime \
- && install -pm 755 pkg/contrib/wasmtime/artifacts/lib/libwasmtime.so /usr/lib/$(dpkg-architecture -q DEB_HOST_MULTIARCH)/ \
+ && /bin/true \
&& ./configure $CONFIGURE_ARGS_MODULES --cc-opt="$CC_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
- && ./configure wasm --include-path=`pwd`/pkg/contrib/wasmtime/artifacts/include --lib-path=/usr/lib/$(dpkg-architecture -q DEB_HOST_MULTIARCH)/ && ./configure wasm-wasi-component \
- && make -j $NCPU wasm-install wasm-wasi-component-install \
+ && ./configure python --config=/usr/local/bin/python3-config \
+ && make -j $NCPU python3-install \
&& make clean \
&& ./configure $CONFIGURE_ARGS_MODULES --cc-opt="$CC_OPT" --modulesdir=/usr/lib/unit/modules \
- && ./configure wasm --include-path=`pwd`/pkg/contrib/wasmtime/artifacts/include --lib-path=/usr/lib/$(dpkg-architecture -q DEB_HOST_MULTIARCH)/ && ./configure wasm-wasi-component \
- && make -j $NCPU wasm-install wasm-wasi-component-install \
+ && ./configure python --config=/usr/local/bin/python3-config \
+ && make -j $NCPU python3-install \
&& cd \
&& rm -rf /usr/src/unit \
&& for f in /usr/sbin/unitd /usr/lib/unit/modules/*.unit.so; do \
diff --git a/unit_python3.11-slim/Dockerfile.python3.11-slim b/unit_python/Dockerfile.python3.13
similarity index 73%
rename from unit_python3.11-slim/Dockerfile.python3.11-slim
rename to unit_python/Dockerfile.python3.13
index bb9b32a..dd6a91d 100644
--- a/unit_python3.11-slim/Dockerfile.python3.11-slim
+++ b/unit_python/Dockerfile.python3.13
@@ -1,21 +1,41 @@
-FROM python:3.11-slim-bookworm
+FROM python:3.13-bookworm
-LABEL org.opencontainers.image.title="Unit (python3.11-slim)"
+LABEL org.opencontainers.image.title="Unit (python3.13)"
LABEL org.opencontainers.image.description="Official build of Unit for Docker."
LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_python3.11/Dockerfile.python3.11 b/unit_python3.11/Dockerfile.python3.11
deleted file mode 100644
index a0a06a4..0000000
diff --git a/unit_python-slim/Dockerfile.python3.12-slim b/unit_python3.12-slim/Dockerfile.python3.12-slim
similarity index 75%
rename from unit_python-slim/Dockerfile.python3.12-slim
rename to unit_python3.12-slim/Dockerfile.python3.12-slim
index 65ada57..f4f957c 100644
--- a/unit_python-slim/Dockerfile.python3.12-slim
+++ b/unit_python3.12-slim/Dockerfile.python3.12-slim
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_python3.11-slim/docker-entrypoint.sh b/unit_python3.12-slim/docker-entrypoint.sh
similarity index 100%
rename from unit_python3.11-slim/docker-entrypoint.sh
rename to unit_python3.12-slim/docker-entrypoint.sh
diff --git a/unit_python3.11-slim/welcome.html b/unit_python3.12-slim/welcome.html
similarity index 100%
rename from unit_python3.11-slim/welcome.html
rename to unit_python3.12-slim/welcome.html
diff --git a/unit_python3.11-slim/welcome.json b/unit_python3.12-slim/welcome.json
similarity index 100%
rename from unit_python3.11-slim/welcome.json
rename to unit_python3.12-slim/welcome.json
diff --git a/unit_python3.11-slim/welcome.md b/unit_python3.12-slim/welcome.md
similarity index 100%
rename from unit_python3.11-slim/welcome.md
rename to unit_python3.12-slim/welcome.md
diff --git a/unit_python/Dockerfile.python3.12 b/unit_python3.12/Dockerfile.python3.12
similarity index 75%
rename from unit_python/Dockerfile.python3.12
rename to unit_python3.12/Dockerfile.python3.12
index f32fd45..8402dae 100644
--- a/unit_python/Dockerfile.python3.12
+++ b/unit_python3.12/Dockerfile.python3.12
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_python3.11/docker-entrypoint.sh b/unit_python3.12/docker-entrypoint.sh
similarity index 100%
rename from unit_python3.11/docker-entrypoint.sh
rename to unit_python3.12/docker-entrypoint.sh
diff --git a/unit_python3.11/welcome.html b/unit_python3.12/welcome.html
similarity index 100%
rename from unit_python3.11/welcome.html
rename to unit_python3.12/welcome.html
diff --git a/unit_python3.11/welcome.json b/unit_python3.12/welcome.json
similarity index 100%
rename from unit_python3.11/welcome.json
rename to unit_python3.12/welcome.json
diff --git a/unit_python3.11/welcome.md b/unit_python3.12/welcome.md
similarity index 100%
rename from unit_python3.11/welcome.md
rename to unit_python3.12/welcome.md
diff --git a/unit_ruby/Dockerfile.ruby3.3 b/unit_ruby/Dockerfile.ruby3.3
index b83c754..45fdc96 100644
--- a/unit_ruby/Dockerfile.ruby3.3
+++ b/unit_ruby/Dockerfile.ruby3.3
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_ruby3.2/Dockerfile.ruby3.2 b/unit_ruby3.2/Dockerfile.ruby3.2
index d3ab399..9330227 100644
--- a/unit_ruby3.2/Dockerfile.ruby3.2
+++ b/unit_ruby3.2/Dockerfile.ruby3.2
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
diff --git a/unit_wasm/Dockerfile.wasm b/unit_wasm/Dockerfile.wasm
index 567f98a..cb6c51a 100644
--- a/unit_wasm/Dockerfile.wasm
+++ b/unit_wasm/Dockerfile.wasm
@@ -6,16 +6,36 @@ LABEL org.opencontainers.image.url="https://unit.nginx.org"
LABEL org.opencontainers.image.source="https://github.com/nginx/unit"
LABEL org.opencontainers.image.documentation="https://unit.nginx.org/installation/#docker-images"
LABEL org.opencontainers.image.vendor="NGINX Docker Maintainers <[email protected]>"
-LABEL org.opencontainers.image.version="1.33.0"
+LABEL org.opencontainers.image.version="1.34.0"
RUN set -ex \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update \
- && apt-get install --no-install-recommends --no-install-suggests -y ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config \
+ && apt-get install --no-install-recommends --no-install-suggests -y \
+ ca-certificates git build-essential libssl-dev libpcre2-dev curl pkg-config libclang-dev cmake \
+ && export RUST_VERSION=1.83.0 \
+ && export RUSTUP_HOME=/usr/src/unit/rustup \
+ && export CARGO_HOME=/usr/src/unit/cargo \
+ && export PATH=/usr/src/unit/cargo/bin:$PATH \
+ && dpkgArch="$(dpkg --print-architecture)" \
+ && case "${dpkgArch##*-}" in \
+ amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
+ arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
+ *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
+ esac \
+ && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
+ && curl -L -O "$url" \
+ && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
+ && chmod +x rustup-init \
+ && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
+ && rm rustup-init \
+ && rustup --version \
+ && cargo --version \
+ && rustc --version \
&& mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \
&& mkdir -p /usr/src/unit \
&& cd /usr/src/unit \
- && git clone --depth 1 -b 1.33.0-1 https://github.com/nginx/unit \
+ && git clone --depth 1 -b 1.34.0-1 https://github.com/nginx/unit \
&& cd unit \
&& NCPU="$(getconf _NPROCESSORS_ONLN)" \
&& DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \
@@ -34,7 +54,8 @@ RUN set -ex \
--openssl \
--libdir=/usr/lib/$DEB_HOST_MULTIARCH" \
&& CONFIGURE_ARGS="$CONFIGURE_ARGS_MODULES \
- --njs" \
+ --njs \
+ --otel" \
&& make -j $NCPU -C pkg/contrib .njs \
&& export PKG_CONFIG_PATH=$(pwd)/pkg/contrib/njs/build \
&& ./configure $CONFIGURE_ARGS --cc-opt="$CC_OPT" --ld-opt="$LD_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \
@@ -45,26 +66,6 @@ RUN set -ex \
&& make -j $NCPU unitd \
&& install -pm755 build/sbin/unitd /usr/sbin/unitd \
&& make clean \
- && apt-get install --no-install-recommends --no-install-suggests -y libclang-dev cmake \
- && export RUST_VERSION=1.80.1 \
- && export RUSTUP_HOME=/usr/src/unit/rustup \
- && export CARGO_HOME=/usr/src/unit/cargo \
- && export PATH=/usr/src/unit/cargo/bin:$PATH \
- && dpkgArch="$(dpkg --print-architecture)" \
- && case "${dpkgArch##*-}" in \
- amd64) rustArch="x86_64-unknown-linux-gnu"; rustupSha256="6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d" ;; \
- arm64) rustArch="aarch64-unknown-linux-gnu"; rustupSha256="1cffbf51e63e634c746f741de50649bbbcbd9dbe1de363c9ecef64e278dba2b2" ;; \
- *) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
- esac \
- && url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" \
- && curl -L -O "$url" \
- && echo "${rustupSha256} *rustup-init" | sha256sum -c - \
- && chmod +x rustup-init \
- && ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch} \
- && rm rustup-init \
- && rustup --version \
- && cargo --version \
- && rustc --version \
&& make -C pkg/contrib .wasmtime \
&& install -pm 755 pkg/contrib/wasmtime/artifacts/lib/libwasmtime.so /usr/lib/$(dpkg-architecture -q DEB_HOST_MULTIARCH)/ \
&& ./configure $CONFIGURE_ARGS_MODULES --cc-opt="$CC_OPT" --modulesdir=/usr/lib/unit/debug-modules --debug \ Relevant Maintainers:
|
I opened a PR to optimize this and ensure rust is not left behind in the image: nginx/unit#1522 |
I don't love the duplication (between variants or between this and Rust), but I think it's probably OK. I do wonder how many of these are the same compilation arguments, and thus could possibly do something like |
(Not leaving behind Rust in the final images is probably important though 👀) |
@tianon I tried the copy approach but each variant seems to be compiled with different libraries depending on the variant. |
First of all, thanks for the suggested improvements! I did not expect you to go as far as submitting a PR upstream :-) I'm pretty sure unitd can be copied between the variants, since they are all supposed to be the same binaries. The modules for different languages are supposed to be the only difference between the images. |
Ah! O will amend my PR |
This also bumps language variants to:
Note that this new release also incorporates Rust-based code into the main binary, which means build times are now longer and the resulting images have a bigger size.