Compare commits

...

2 Commits

Author SHA1 Message Date
c7f2aa72e5 added rtmp module to nginx image
Some checks failed
CI / Build nginx docker images (push) Has been cancelled
2025-12-23 22:16:11 +08:00
f724b5f0e3 try to fix ganymede build 2025-12-23 22:16:11 +08:00
7 changed files with 49 additions and 34 deletions

View File

@@ -9,16 +9,6 @@ jobs:
"Build Jupyter Ganymede docker images":
runs-on: woryzen
steps:
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
name: multiplatform-builder
driver: docker-container
cleanup: false
platforms: |
linux/amd64
linux/arm64
-
name: Login to Gitea container registry
uses: docker/login-action@v3

View File

@@ -9,14 +9,6 @@ jobs:
"Build nginx docker images":
runs-on: woryzen
steps:
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3.4.0
with:
driver: docker-container
platforms: |
linux/amd64
linux/arm64
-
name: Login to Gitea container registry
uses: docker/login-action@v3
@@ -28,6 +20,7 @@ jobs:
name: Build and push nginx vanilla images
uses: docker/build-push-action@v6
with:
builder: multiplatform-builder
context: "{{defaultContext}}:nginx"
platforms: |
linux/amd64
@@ -50,10 +43,12 @@ jobs:
name: Build and push nginx custom images
uses: docker/build-push-action@v6
with:
builder: multiplatform-builder
context: "{{defaultContext}}:nginx"
platforms: |
linux/amd64
linux/arm64
linux/arm32
push: true
pull: true
ssh: default=/home/luser/.ssh/id_ed25519

View File

@@ -4,13 +4,12 @@ RUN --mount=type=cache,target=/var/cache/apk/,sharing=locked \
apk add python3 python3-dev pipx gcc g++ musl-dev linux-headers which curl libffi-dev git
RUN adduser jovyan -u 1000 --system -s /bin/sh -h /home/jovyan
FROM --platform=$BUILDPLATFORM alpine:3.23 AS build-base-native
FROM --platform=$BUILDPLATFORM alpine:3.22 AS java-build
RUN --mount=type=cache,target=/var/cache/apk/,sharing=locked \
apk update &&\
apk add python3 python3-dev pipx gcc g++ musl-dev linux-headers which curl libffi-dev git
RUN adduser jovyan -u 1000 --system -s /bin/sh -h /home/jovyan
FROM build-base-native AS java-build
RUN --mount=type=cache,target=/var/cache/apk/,sharing=locked \
apk add openjdk11-jdk maven
USER jovyan
@@ -19,7 +18,7 @@ WORKDIR /home/jovyan
ADD --chown=jovyan:jovyan git@github.com:allen-ball/ganymede.git#trunk ganymede
#RUN git clone https://github.com/allen-ball/ganymede.git ganymede
WORKDIR /home/jovyan/ganymede
RUN --mount=type=cache,target=/home/jovyan/.m2/,uid=1000,gid=1000,sharing=locked mvn -T 16 -Dmaven.test.skip=true -q package
RUN --mount=type=cache,target=/home/jovyan/.m2/,uid=1000,gid=1000,sharing=locked mvn -Dmaven.test.skip=true -q package
FROM build-base AS python-build
RUN --mount=type=cache,target=/var/cache/apk/,sharing=locked \

View File

@@ -65,6 +65,7 @@ ADD --chown=luser:luser git@github.com:woggioni/nginx.git#release-${NGINX_VERSIO
FROM build_stage_2_${NGINX_BRANCH} AS build
ADD --chown=luser:luser https://github.com/openresty/headers-more-nginx-module.git /ngx_headers_more
ADD --chown=luser:luser https://github.com/google/ngx_brotli.git /ngx_brotli
USER root
WORKDIR /
RUN hg clone http://hg.nginx.org/njs /njs
@@ -74,6 +75,12 @@ WORKDIR /home/luser
ADD --chown=luser:luser --chmod=755 ./build.sh ./build.sh
RUN ./build.sh
FROM build_stage_2_${NGINX_BRANCH} AS build-rtmp
ADD --chown=luser:luser https://github.com/arut/nginx-rtmp-module.git /ngx-rtmp-module
USER luser
WORKDIR /home/luser
ADD --chown=luser:luser --chmod=755 ./build-rtmp.sh ./build-rtmp.sh
RUN ./build-rtmp.sh
FROM base AS release
ARG VERSION
@@ -91,7 +98,7 @@ RUN --mount=type=cache,target=/var/cache/apk \
--mount=type=bind,source=install.sh,target=/install.sh \
(cd nginx && sh /install.sh)
RUN --mount=type=cache,target=/var/cache/apk apk del .install_deps
COPY --from=build-rtmp --chown=root:root /nginx/objs/ngx_rtmp_module.so /usr/lib/nginx/modules/
COPY --from=build /home/luser/libressl/openssl.cnf /etc/ssl/openssl.cnf
COPY conf/nginx.conf /etc/nginx/nginx.conf
COPY conf/dhparam /etc/nginx/dhparam

30
nginx/build-rtmp.sh Normal file
View File

@@ -0,0 +1,30 @@
#!/usr/bin/env sh
set -e
CONFIG='
--prefix=/etc/nginx
--sbin-path=/usr/sbin/nginx
--modules-path=/usr/lib/nginx/modules
--conf-path=/etc/nginx/nginx.conf
--error-log-path=/var/log/nginx/error.log
--http-log-path=/var/log/nginx/access.log
--pid-path=/var/run/nginx.pid
--lock-path=/var/run/nginx.lock
--http-client-body-temp-path=/var/cache/nginx/client_temp
--http-proxy-temp-path=/var/cache/nginx/proxy_temp
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp
--http-scgi-temp-path=/var/cache/nginx/scgi_temp
--user=nginx
--group=nginx
--with-http_ssl_module
--add-dynamic-module=/ngx-rtmp-module
'
cd /nginx
auto/configure $CONFIG \
--with-cc-opt="-I/home/luser/libressl/build/include" \
--with-ld-opt="-lstdc++ -L/home/luser/libressl/build/ssl -L/home/luser/libressl/build/crypto"
make -j$(nproc)

View File

@@ -18,6 +18,7 @@ CONFIG='
--http-scgi-temp-path=/var/cache/nginx/scgi_temp
--user=nginx
--group=nginx
--with-pcre
--with-http_ssl_module
--with-http_realip_module
--with-http_addition_module
@@ -25,6 +26,8 @@ CONFIG='
--with-http_dav_module
--with-http_flv_module
--with-http_mp4_module
--with-http_degradation_module
--with-http_slice_module
--with-http_gunzip_module
--with-http_gzip_static_module
--with-http_random_index_module
@@ -40,14 +43,14 @@ CONFIG='
--with-stream_realip_module
--with-stream_geoip_module=dynamic
--with-http_slice_module
--with-mail
--with-mail=dynamic
--with-mail_ssl_module
--with-compat
--with-file-aio
--with-http_v2_module
--with-http_v3_module
--add-dynamic-module=/ngx_headers_more
--add-dynamic-module=/ngx_brotli
--add-module=/ngx_brotli
--add-dynamic-module=/njs/nginx
'

View File

@@ -1,13 +1,4 @@
load_module modules/ngx_http_xslt_filter_module.so;
#load_module modules/ngx_http_image_filter_module.so;
load_module modules/ngx_http_geoip_module.so;
#load_module modules/ngx_http_perl_module.so;
load_module modules/ngx_stream_geoip_module.so;
load_module modules/ngx_http_headers_more_filter_module.so;
load_module modules/ngx_http_brotli_static_module.so;
load_module modules/ngx_http_brotli_filter_module.so;
#load_module modules/ngx_http_js_module.so;
include /etc/nginx/conf.d/modules/*.conf;
user nginx;
worker_processes 1;