File tree 9 files changed +201
-1
lines changed
9 files changed +201
-1
lines changed Original file line number Diff line number Diff line change 1
1
# ngx_http_push_stream_module
2
- ngx_http_push_stream_module
2
+
3
+ A pure stream http push technology for your Nginx setup. Comet made easy and really scalable.
4
+
5
+ - Official: https://github.com/wandenberg/nginx-push-stream-module
6
+ - Build: https://github.com/nginx-with-docker/nginx-push-stream-module-src
7
+
8
+ ## Nginx Images
9
+
10
+ <table >
11
+ <thead>
12
+ <tr>
13
+ <th>Nginx Version</th>
14
+ <th>Module Version</th>
15
+ <th>Docker Images</th>
16
+ </tr>
17
+ </thead>
18
+ <tbody>
19
+ <tr>
20
+ <td>1.21.0</td>
21
+ <td>master (2020.05)</td>
22
+ <td><ul>
23
+ <li>docker pull soulteary/prebuilt-nginx-modules:ngx-1.21.0-push-stream-master</li>
24
+ <li>docker pull soulteary/prebuilt-nginx-modules:ngx-1.21.0-push-stream-master-alpine</li>
25
+ </ul></td>
26
+ </tr>
27
+ <tr>
28
+ <td>1.21.0</td>
29
+ <td>0.5.4 (2017.09)</td>
30
+ <td><ul>
31
+ <li>docker pull soulteary/prebuilt-nginx-modules:ngx-1.21.0-push-stream-0.5.4</li>
32
+ <li>docker pull soulteary/prebuilt-nginx-modules:ngx-1.21.0-push-stream-0.5.4-alpine</li>
33
+ </ul></td>
34
+ </tr>
35
+ </tbody>
36
+ </table >
37
+
38
+ ## TODO
39
+
40
+ - try merge changes: https://github.com/wandenberg/nginx-push-stream-module/pulls
Original file line number Diff line number Diff line change
1
+ NGINX_VERSION = 1.21.0
2
+ MODULE_CHECKSUM = 1bca260b7d2ca79eb2c8a3c21427cc70b9b41673
3
+ MODULE_VERSION = 0.5.4
4
+ MODULE_NAME = nginx-push-stream-module-src
5
+ MODULE_SOURCE = https://github.com/nginx-with-docker/nginx-push-stream-module-src
Original file line number Diff line number Diff line change
1
+ ARG NGINX_VERSION=1.21.0
2
+ FROM soulteary/prebuilt-nginx-modules:base-${NGINX_VERSION}-alpine AS Builder
3
+
4
+ ARG MODULE_CHECKSUM=1bca260b7d2ca79eb2c8a3c21427cc70b9b41673
5
+ ARG MODULE_VERSION=0.5.4
6
+ ARG MODULE_NAME=nginx-push-stream-module-src
7
+ ARG MODULE_SOURCE=https://github.com/nginx-with-docker/nginx-push-stream-module-src
8
+
9
+ RUN cd /usr/src && \
10
+ curl -L "${MODULE_SOURCE}/archive/refs/tags/v${MODULE_VERSION}.tar.gz" -o "${MODULE_VERSION}.tar.gz" && \
11
+ echo "${MODULE_CHECKSUM} ${MODULE_VERSION}.tar.gz" | shasum -c && \
12
+ tar -zxC /usr/src -f ${MODULE_VERSION}.tar.gz && \
13
+ mv ${MODULE_NAME}-${MODULE_VERSION}/ ${MODULE_NAME} && \
14
+ cd /usr/src/nginx && \
15
+ CONFARGS=$(nginx -V 2>&1 | sed -n -e 's/^.*arguments: //p') \
16
+ CONFARGS=${CONFARGS/-Os -fomit-frame-pointer -g/-Os} && \
17
+ echo $CONFARGS && \
18
+ ./configure --with-compat $CONFARGS --add-dynamic-module=../${MODULE_NAME}/ && \
19
+ make modules
20
+
21
+ FROM scratch
22
+
23
+ COPY --from=Builder /usr/src/nginx/objs/ngx_http_push_stream_module.so /
Original file line number Diff line number Diff line change
1
+ ARG NGINX_VERSION=1.21.0
2
+ FROM soulteary/prebuilt-nginx-modules:base-${NGINX_VERSION} AS Builder
3
+
4
+ ARG MODULE_CHECKSUM=1bca260b7d2ca79eb2c8a3c21427cc70b9b41673
5
+ ARG MODULE_VERSION=0.5.4
6
+ ARG MODULE_NAME=nginx-push-stream-module-src
7
+ ARG MODULE_SOURCE=https://github.com/nginx-with-docker/nginx-push-stream-module-src
8
+
9
+ RUN cd /usr/src && \
10
+ curl -L "${MODULE_SOURCE}/archive/refs/tags/v${MODULE_VERSION}.tar.gz" -o "${MODULE_VERSION}.tar.gz" && \
11
+ echo "${MODULE_CHECKSUM} ${MODULE_VERSION}.tar.gz" | shasum -c && \
12
+ tar -zxC /usr/src -f ${MODULE_VERSION}.tar.gz && \
13
+ mv ${MODULE_NAME}-${MODULE_VERSION}/ ${MODULE_NAME} && \
14
+ cd /usr/src/nginx && \
15
+ echo $CONFARGS && \
16
+ ./configure --with-compat $CONFARGS --add-dynamic-module=../${MODULE_NAME}/ && \
17
+ make modules
18
+
19
+ FROM scratch
20
+
21
+ COPY --from=Builder /usr/src/nginx/objs/ngx_http_push_stream_module.so /
Original file line number Diff line number Diff line change
1
+ NGINX_VERSION = 1.21.0
2
+ MODULE_CHECKSUM = 067aab5e26e835e862c438a475dee2e4ff677d2a
3
+ MODULE_VERSION = master
4
+ MODULE_NAME = nginx-push-stream-module-src
5
+ MODULE_SOURCE = https://github.com/nginx-with-docker/nginx-push-stream-module-src
Original file line number Diff line number Diff line change
1
+ ARG NGINX_VERSION=1.21.0
2
+ FROM soulteary/prebuilt-nginx-modules:base-${NGINX_VERSION}-alpine AS Builder
3
+
4
+ ARG MODULE_CHECKSUM=067aab5e26e835e862c438a475dee2e4ff677d2a
5
+ ARG MODULE_VERSION=master
6
+ ARG MODULE_NAME=nginx-push-stream-module-src
7
+ ARG MODULE_SOURCE=https://github.com/nginx-with-docker/nginx-push-stream-module-src
8
+
9
+ RUN apk add unzip
10
+ RUN cd /usr/src && \
11
+ curl -L "${MODULE_SOURCE}/archive/refs/heads/${MODULE_VERSION}.zip" -o "v${MODULE_VERSION}.zip" && \
12
+ echo "${MODULE_CHECKSUM} v${MODULE_VERSION}.zip" | shasum -c && \
13
+ unzip "v${MODULE_VERSION}.zip" && \
14
+ mv "$MODULE_NAME-$MODULE_VERSION" "$MODULE_NAME" && \
15
+ cd /usr/src/nginx && \
16
+ CONFARGS=$(nginx -V 2>&1 | sed -n -e 's/^.*arguments: //p') \
17
+ CONFARGS=${CONFARGS/-Os -fomit-frame-pointer -g/-Os} && \
18
+ echo $CONFARGS && \
19
+ ./configure --with-compat $CONFARGS --add-dynamic-module=../${MODULE_NAME}/ && \
20
+ make modules
21
+
22
+ FROM scratch
23
+
24
+ COPY --from=Builder /usr/src/nginx/objs/ngx_http_push_stream_module.so /
Original file line number Diff line number Diff line change
1
+ ARG NGINX_VERSION=1.21.0
2
+ FROM soulteary/prebuilt-nginx-modules:base-${NGINX_VERSION} AS Builder
3
+
4
+ ARG MODULE_CHECKSUM=067aab5e26e835e862c438a475dee2e4ff677d2a
5
+ ARG MODULE_VERSION=master
6
+ ARG MODULE_NAME=nginx-push-stream-module-src
7
+ ARG MODULE_SOURCE=https://github.com/nginx-with-docker/nginx-push-stream-module-src
8
+
9
+ RUN apt install unzip -y
10
+ RUN cd /usr/src && \
11
+ curl -L "${MODULE_SOURCE}/archive/refs/heads/${MODULE_VERSION}.zip" -o "v${MODULE_VERSION}.zip" && \
12
+ echo "${MODULE_CHECKSUM} v${MODULE_VERSION}.zip" | shasum -c && \
13
+ unzip "v${MODULE_VERSION}.zip" && \
14
+ mv "$MODULE_NAME-$MODULE_VERSION" "$MODULE_NAME" && \
15
+ cd /usr/src/nginx && \
16
+ echo $CONFARGS && \
17
+ ./configure --with-compat $CONFARGS --add-dynamic-module=../${MODULE_NAME}/ && \
18
+ make modules
19
+
20
+ FROM scratch
21
+
22
+ COPY --from=Builder /usr/src/nginx/objs/ngx_http_push_stream_module.so /
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ PROJECT_NAME=" push-stream"
4
+ REPO_NAME=" soulteary/prebuilt-nginx-modules"
5
+ RELEASE_DIR=" ./docker" ;
6
+
7
+ for subVer in $RELEASE_DIR /* ; do
8
+
9
+ set -a
10
+ . " $subVer /.env"
11
+ set +a
12
+
13
+ REPO_TAG=" ngx-$NGINX_VERSION -$PROJECT_NAME -$MODULE_VERSION " ;
14
+ BUILD_ARGS=$( tr ' \n' ' ;' < " $subVer /.env" | sed ' s/;$/\n/' | sed ' s/^/ --build-arg /' | sed ' s/;/ --build-arg /g' )
15
+
16
+ if [ -f " $subVer /Dockerfile.alpine" ]; then
17
+ BUILD_NAME=" $REPO_NAME :$REPO_TAG -alpine"
18
+ if [[ " $( docker images -q $BUILD_NAME 2> /dev/null) " == " " ]]; then
19
+ echo " Build: $BUILD_NAME " ;
20
+ docker build $BUILD_ARGS --tag $BUILD_NAME -f $subVer /Dockerfile.alpine .
21
+ fi
22
+ fi
23
+
24
+ if [ -f " $subVer /Dockerfile.debian" ]; then
25
+ BUILD_NAME=" $REPO_NAME :$REPO_TAG "
26
+ if [[ " $( docker images -q $BUILD_NAME 2> /dev/null) " == " " ]]; then
27
+ echo " Build: $BUILD_NAME " ;
28
+ docker build $BUILD_ARGS --tag $BUILD_NAME -f $subVer /Dockerfile.debian .
29
+ fi
30
+ fi
31
+
32
+ done
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ PROJECT_NAME=" push-stream"
4
+ REPO_NAME=" soulteary/prebuilt-nginx-modules"
5
+ RELEASE_DIR=" ./docker" ;
6
+
7
+ for subVer in $RELEASE_DIR /* ; do
8
+ set -a
9
+ . " $subVer /.env"
10
+ set +a
11
+
12
+ REPO_TAG=" ngx-$NGINX_VERSION -$PROJECT_NAME -$MODULE_VERSION " ;
13
+
14
+ if [ -f " $subVer /Dockerfile.alpine" ]; then
15
+ BUILD_NAME=" $REPO_NAME :$REPO_TAG -alpine"
16
+ if [[ " $( docker images -q $BUILD_NAME 2> /dev/null) " != " " ]]; then
17
+ echo " Push: $BUILD_NAME " ;
18
+ docker push $BUILD_NAME ;
19
+ fi
20
+ fi
21
+
22
+ if [ -f " $subVer /Dockerfile.debian" ]; then
23
+ BUILD_NAME=" $REPO_NAME :$REPO_TAG "
24
+ if [[ " $( docker images -q $BUILD_NAME 2> /dev/null) " != " " ]]; then
25
+ echo " Push: $BUILD_NAME " ;
26
+ docker push $BUILD_NAME ;
27
+ fi
28
+ fi
29
+
30
+ done
You can’t perform that action at this time.
0 commit comments