GithubHelp home page GithubHelp logo

nginx-modules / docker-nginx-boringssl Goto Github PK

View Code? Open in Web Editor NEW
45.0 5.0 10.0 63 KB

NGINX Docker built top of rolling release BoringSSL (SIMD x86_64-v4/aarch64/armv7)

Home Page: https://hub.docker.com/r/denji/nginx-boringssl/

Dockerfile 100.00%
nginx boringssl tls alpine rolling http2 alpine-nginx dockerfile simd brotli

docker-nginx-boringssl's Introduction

NGINX built with BoringSSL & TLSv1.3

Docker image

Docker Image CI

Supported tags and respective Dockerfile links

  • Stable Release

    • docker.io/denji/nginx-boringssl:stable-alpine - (Linux x86_64-v4)
    • docker.io/denji/nginx-boringssl:stable-aarch64-alpine - (Linux AArch64 - ARMv8)
    • docker.io/denji/nginx-boringssl:stable-armv7-alpine - (Linux ARMv7 - 32-bit)
  • Mainline Release

    • docker.io/denji/nginx-boringssl:mainline-alpine - (Linux x86_64-v4)
    • docker.io/denji/nginx-boringssl:mainline-aarch64-alpine - (Linux AArch64 - ARMv8)
    • docker.io/denji/nginx-boringssl:mainline-armv7-alpine - (Linux ARMv7 - 32-bit)

Before you can use

This project is unstable state because of the rolling release BoringSSL, and modules.

Features

  • Images are used Alpine Linux.
  • NGINX built BoringSSL.
  • PCRE with JIT enabled.
  • HTTP/2.0 (+NPN) support.
  • Async I/O using threads support.
  • Dynamic TLS records patch CloudFlare support (and configured).
  • Gzip static .gz files support enabled
  • Brotli static .br files support (and configured).
    • Brotli on-the-fly disabled (dynamic compression unstable)

Notes

  • Linux 3.17+, and the latest Docker stable are recommended.
  • BoringSSL is naming ECDH curves differently, some modifications will be required if you want to use your own SSL/TLS config file. For example, secp384r1 (OpenSSL, LibreSSL) is P-384 (BoringSSL). BoringSSL does support multiple curves with its implementation of SSL_CTX_set1_curves_list(), an example is provided in the default /etc/nginx/confssl_params. X25519 is actually the safest curve you can use so it should be the first curve in your list.
  • BoringSSL can use cipher groups: a group is defined by brackets and ciphers are separated by | like this : [cipher1|cipher2|cipher3]. Ciphers in a group are considered equivalent on the server-side and let the client decide which cipher is the best. This can be useful when using ChaCha20, because AES remains faster than ChaCha20 on AES-NI devices.

Based on the Official NGINX Dockerfile & Wonderfall/boring-nginx

docker-nginx-boringssl's People

Contributors

benedict1337 avatar denji avatar imba-tjd avatar nename0 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

docker-nginx-boringssl's Issues

OpenSSL library not found error

checking for OpenSSL library ...not found
checking for OpenSSL library in /usr/local/ ...not found
checking for OpenSSL library in /usr/pkg/ ...not found
checking for OpenSSL library in /opt/local/ ...not found

./configure: error: SSL modules require the OpenSSL library.
You can either do not enable the modules, or install the OpenSSL library
into the system, or build the OpenSSL library statically from the source
with nginx by using --with-openssl= option.

BoringSSL have changed the ".c" file extension to the ".cc" file extension

Hi.
BoringSSL have changed the ".c" file extension to the ".cc" file extension.
The Dockerfile files (this "https://github.com/nginx-modules/docker-nginx-boringssl/blob/master/stable/alpine/Dockerfile" and this "https://github.com/nginx-modules/docker-nginx-boringssl/blob/master/mainline/alpine/Dockerfile") should be updated in the "sed" command part because they still refer to the ".c" files and not to the new ".cc" files.
Thanks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.