Skip to content

Instantly share code, notes, and snippets.

@maitrungduc1410
Created October 22, 2023 03:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save maitrungduc1410/bf7ef11d31422a8bf5ffab20bacc333b to your computer and use it in GitHub Desktop.
Save maitrungduc1410/bf7ef11d31422a8bf5ffab20bacc333b to your computer and use it in GitHub Desktop.
Docker Centos Nginx JWT
FROM quay.io/sclorg/nginx-120-c8s as base
FROM base as builder
USER root
ARG JWT_MODULE_PATH=/usr/local/lib/ngx-http-auth-jwt-module
ARG LIBJWT_VERSION=1.13.1
ARG NGINX_VERSION=1.20.0
RUN mkdir -p $JWT_MODULE_PATH/src
RUN yum install -y \
# nginx
# devtoolset-10 \
glibc.i686 \
glibc-devel.i686 \
gcc \
glibc-devel \
make \
openssl-devel \
pcre-devel \
zlib-devel \
# linux-headers \
# libjwt
jansson-devel \
autoconf \
automake \
libtool \
cmake \
check-devel
# BEGIN libjwt install
RUN mkdir libjwt \
&& curl -sL https://github.com/benmcollins/libjwt/archive/v${LIBJWT_VERSION}.tar.gz \
| tar -zx -C libjwt/ --strip-components=1 \
&& cd libjwt \
&& autoreconf -i \
&& ./configure \
&& make all \
&& make check \
&& make install
RUN curl -fSL http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz -o nginx.tar.gz \
&& mkdir -p /usr/src \
&& tar -zxC /usr/src -f nginx.tar.gz \
&& rm nginx.tar.gz
ADD config $JWT_MODULE_PATH/config
ADD src $JWT_MODULE_PATH/src
RUN cd /usr/src/nginx-${NGINX_VERSION} \
&& ./configure --with-compat --add-dynamic-module=$JWT_MODULE_PATH --build=centos8 \
&& make modules
FROM base as jwt-nginx
USER root
ARG LIBJWT=libjwt.so.1.8.1
ARG NGINX_VERSION=1.20.0
COPY --from=builder /usr/src/nginx-${NGINX_VERSION}/objs/ngx_http_auth_jwt_module.so /usr/lib/nginx/modules/ngx_http_auth_jwt_module.so
COPY --from=builder /usr/local/lib/${LIBJWT} /lib
RUN yum install -y jansson
RUN sed -i '1iload_module modules/ngx_http_auth_jwt_module.so;' /etc/nginx/nginx.conf
# RUN ln -s /lib/${LIBJWT} /lib/libjwt.so.1
RUN ln -s /lib/${LIBJWT} /lib/libjwt.so
@maitrungduc1410
Copy link
Author

eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNjk4MDM0NDgyLCJleHAiOjE2OTgwNzc2ODJ9.Wl6W7Fls7hlOPd3DcWhbajj1Dgg5-_SoFHcMJgGni9LPBzJ8WrHCB65wUFaZMr6V4W9Ad9lbhauo2eGDLzM06JYHbiEOocawz5KmJsjyOL_68_s3vhu0jrDQSzgF6KAndiTuDOmrf6k6Yfv1LTUYMMay2gf9yEVxIA2voIo0gAU9ykKSjdsYbgj20ZoDGK07VSKgQE2CiWBS3RGvyduYt9nOPb6TyWjNuOeCOFmnRn0Mz887K2V3BEuk0ECxN7AEBAW_h-x0y0uFWCINKow3pyUbHYqwgBNP_Z6kCQxfJIKE0JUheJia82itwWs8KHnj2_Uu2eJXNL04QZCMk60Ktjmr9oXDrp_6gFRN-GYXZzyqTDM4nOVFapiG4X9nIEh6pTJ1-6eJuTE69STnJmVophoUEjUC9t8iEiHOXF6q2N_haLDIIgrfURZyuqq7RYqKw4Mk0HuY_7SDpWwSWeGciC3H7pYnH7v1RF9li7lDy58xKjdWlZ7_a2V4sZcjW5RrLlkRtZX5-3O_qMggfTppVMdZRlrid0jFrCndABha9UWUcikn4cMj0ncfBjhFNy3kmLH1ZWCMZWSho_lC0BSGcCo7-yWTcEZ8lsYCcshYmHFjqdbJ9g9S9fMpE4TbrS4eUDkpqT4b_0aP0ros7O_Kj-rZ3bofI4tBoybxTkQoqhI

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment