{"id":19494074,"url":"https://github.com/khs1994-docker/nginx","last_synced_at":"2025-04-25T20:31:32.504Z","repository":{"id":109732205,"uuid":"116753759","full_name":"khs1994-docker/nginx","owner":"khs1994-docker","description":"NGINX With HTTP3/QUIC Docker Image","archived":false,"fork":false,"pushed_at":"2024-11-23T01:45:47.000Z","size":84,"stargazers_count":19,"open_issues_count":1,"forks_count":9,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-04T03:11:49.833Z","etag":null,"topics":["http3","nginx","nginx-docker","quic"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/khs1994-docker.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2018-01-09T02:16:27.000Z","updated_at":"2024-11-23T01:45:51.000Z","dependencies_parsed_at":"2023-04-04T16:31:51.118Z","dependency_job_id":null,"html_url":"https://github.com/khs1994-docker/nginx","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khs1994-docker%2Fnginx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khs1994-docker%2Fnginx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khs1994-docker%2Fnginx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khs1994-docker%2Fnginx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/khs1994-docker","download_url":"https://codeload.github.com/khs1994-docker/nginx/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250890459,"owners_count":21503499,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["http3","nginx","nginx-docker","quic"],"created_at":"2024-11-10T21:28:23.991Z","updated_at":"2025-04-25T20:31:32.498Z","avatar_url":"https://github.com/khs1994-docker.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Nginx With HTTP3\n\n[![GitHub stars](https://img.shields.io/github/stars/khs1994-docker/nginx.svg?style=social\u0026label=Stars)](https://github.com/khs1994-docker/nginx)  [![GitHub release](https://img.shields.io/github/release/khs1994-docker/nginx.svg)](https://github.com/khs1994-docker/nginx/releases) [![Docker Stars](https://img.shields.io/docker/stars/khs1994/nginx.svg)](https://hub.docker.com/r/khs1994/nginx/) [![Docker Pulls](https://img.shields.io/docker/pulls/khs1994/nginx.svg)](https://hub.docker.com/r/khs1994/nginx/)\n\n* https://blog.khs1994.com/linux/ssl/https/README.html\n\n* https://github.com/khs1994-docker/lnmp/issues/137\n* https://github.com/khs1994-docker/lnmp/issues/895\n\n## 注意\n\n* 只有一个 `server {}` 能启用 HTTP3，多个 `server {}` 启用 HTTP3 会提示冲突。\n\n## 测试浏览器是否支持 HTTP3\n\n* https://quic.tech:8443\n\n**chrome 85+**\n\n```bash\n--enable-quic --quic-version=h3-29 --origin-to-force-quic-on=example.com:443\n```\n\n**firefox 80+**\n\n`about:config` -\u003e `network.http.http3.enabled = true`\n\n## 草案\n\n* https://datatracker.ietf.org/doc/draft-ietf-quic-transport/history/\n\n## `Docker Compose`\n\n```yaml\nversion: \"3\"\n\nservices:\n  nginx:\n    image: \"khs1994/nginx:1.27.0-alpine\"\n    ports:\n      - \"80:80\"\n      - \"443:443/tcp\"\n      - \"443:443/udp\"\n    environment:\n      - TZ=Asia/Shanghai\n    volumes:\n      - ./conf.d:/etc/nginx/conf.d:ro\n```\n\n## `$ docker run`\n\n```bash\n$ docker run -dit \\\n         -e TZ=Asia/Shanghai \\\n         -p 80:80/tcp \\\n         -p 443:443/tcp \\\n         -p 443:443/udp \\\n         -v $PWD/app:/app \\\n         -v $PWD/conf.d:/etc/nginx/conf.d \\\n         khs1994/nginx:1.27.0-alpine\n```\n\n# Who use it?\n\n[khs1994-docker/lnmp](https://github.com/khs1994-docker/lnmp) use this Docker Image.\n\n# Compare\n\n```bash\n$ docker compose up alpine | buster | official\n\n$ h2load -n 100 -c 10 https://quic.t.khs1994.com\n```\n\n## alpine\n\n```bash\nfinished in 772.28ms, 129.49 req/s, 22.08KB/s\nrequests: 100 total, 100 started, 100 done, 100 succeeded, 0 failed, 0 errored, 0 timeout\nstatus codes: 100 2xx, 0 3xx, 0 4xx, 0 5xx\ntraffic: 17.05KB (17463) total, 1.63KB (1673) headers (space savings 90.49%), 13.18KB (13500) data\n                     min         max         mean         sd        +/- sd\ntime for request:     5.84ms     89.32ms     48.74ms     18.40ms    75.00%\ntime for connect:    53.88ms    399.50ms    201.96ms    122.59ms    70.00%\ntime to 1st byte:    92.99ms    460.74ms    233.89ms    120.97ms    70.00%\nreq/s           :      12.99       17.08       14.62        1.41    70.00%\n```\n\n## buster\n\n```bash\nfinished in 954.81ms, 104.73 req/s, 17.93KB/s\nrequests: 100 total, 100 started, 100 done, 100 succeeded, 0 failed, 0 errored, 0 timeout\nstatus codes: 100 2xx, 0 3xx, 0 4xx, 0 5xx\ntraffic: 17.12KB (17532) total, 1.70KB (1742) headers (space savings 90.10%), 13.18KB (13500) data\n                     min         max         mean         sd        +/- sd\ntime for request:    10.71ms    103.80ms     71.21ms     17.92ms    74.00%\ntime for connect:   118.40ms    307.03ms    178.26ms     61.53ms    80.00%\ntime to 1st byte:   163.51ms    396.44ms    232.83ms     73.78ms    80.00%\nreq/s           :      10.59       12.09       11.35        0.57    60.00%\n```\n\n## official\n\n```bash\nfinished in 701.79ms, 142.49 req/s, 36.88KB/s\nrequests: 100 total, 100 started, 100 done, 100 succeeded, 0 failed, 0 errored, 0 timeout\nstatus codes: 100 2xx, 0 3xx, 0 4xx, 0 5xx\ntraffic: 25.88KB (26500) total, 10.56KB (10710) headers (space savings 39.15%), 13.18KB (13500) data\n                     min         max         mean         sd        +/- sd\ntime for request:     9.32ms     62.95ms     49.54ms      9.66ms    83.00%\ntime for connect:    82.70ms    285.17ms    150.81ms     70.20ms    80.00%\ntime to 1st byte:   123.90ms    318.23ms    194.80ms     70.23ms    70.00%\nreq/s           :      14.26       16.78       15.52        0.96    50.00%\n```\n\n# More Infortion\n\n* [khs1994-docker/lnmp](https://github.com/khs1994-docker/lnmp)\n* [Official NGINX Dockerfiles](https://github.com/nginxinc/docker-nginx)\n* https://github.com/hakasenyang/openssl-patch\n* https://www.nginx.com/blog/introducing-technology-preview-nginx-support-for-quic-http-3/\n* https://quic.nginx.org/README\n* https://hg.nginx.org/nginx-quic\n* https://asnokaze.hatenablog.com/entry/2020/06/11/133357\n* https://www.grottedubarbu.fr/nginx-quic-http3/\n* https://jiyiren.github.io/2020/06/17/quic-explain-build/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhs1994-docker%2Fnginx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkhs1994-docker%2Fnginx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhs1994-docker%2Fnginx/lists"}