{"id":13580332,"url":"https://github.com/essentialkaos/webkaos","last_synced_at":"2025-10-13T05:15:32.571Z","repository":{"id":5029498,"uuid":"46989659","full_name":"essentialkaos/webkaos","owner":"essentialkaos","description":"WEBKAOS is a web-server based on latest version of Nginx with many improvements","archived":false,"fork":false,"pushed_at":"2024-09-19T11:30:25.000Z","size":595,"stargazers_count":14,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-11-05T19:42:44.658Z","etag":null,"topics":["nginx","rhel","rhel8","rhel9","webserver"],"latest_commit_sha":null,"homepage":"https://kaos.sh/webkaos","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/essentialkaos.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-11-27T16:23:57.000Z","updated_at":"2024-08-23T12:30:44.000Z","dependencies_parsed_at":"2024-05-21T10:03:20.589Z","dependency_job_id":"313f39c2-9781-4012-83c4-3bd1fd21e500","html_url":"https://github.com/essentialkaos/webkaos","commit_stats":null,"previous_names":[],"tags_count":91,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/essentialkaos%2Fwebkaos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/essentialkaos%2Fwebkaos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/essentialkaos%2Fwebkaos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/essentialkaos%2Fwebkaos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/essentialkaos","download_url":"https://codeload.github.com/essentialkaos/webkaos/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226038933,"owners_count":17564067,"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":["nginx","rhel","rhel8","rhel9","webserver"],"created_at":"2024-08-01T15:01:49.923Z","updated_at":"2025-10-13T05:15:27.513Z","avatar_url":"https://github.com/essentialkaos.png","language":"Shell","funding_links":[],"categories":["Shell"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\u003ca href=\"#readme\"\u003e\u003cimg src=\".github/images/card.svg\"/\u003e\u003c/a\u003e\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\u003ca href=\"#feature-list\"\u003eFeature list\u003c/a\u003e • \u003ca href=\"#installation\"\u003eInstallation\u003c/a\u003e • \u003ca href=\"#faq\"\u003eFAQ\u003c/a\u003e • \u003ca href=\"#contributing\"\u003eContributing\u003c/a\u003e • \u003ca href=\"#license\"\u003eLicense\u003c/a\u003e\u003c/p\u003e\n\n\u003cbr/\u003e\n\n`webkaos` is a web-server based on the latest version of [Nginx](http://nginx.org).\n\n### Feature list\n\n* Improved default SSL/TLS preferencies\n* [Dynamic TLS Records](DYNAMIC-TLS-RECORDS.md) support\n* The latest version of [BoringSSL](https://boringssl.googlesource.com/boringssl/) with some state-of-the-art crypto features\n* TLS 1.3 support (_RFC 8446_)\n* [TCP Fast Open](https://en.wikipedia.org/wiki/TCP_Fast_Open) support\n* [Lua](https://github.com/openresty/lua-nginx-module) and [Headers More](https://github.com/openresty/headers-more-nginx-module) modules from the box\n* Improved SysV script\n* Well-looking error pages\n* Improved design of index pages\n* Performance tuning for highload\n\n### Installation\n\n#### From ESSENTIAL KAOS Public repository (EL 8/9)\n\n```bash\nsudo dnf install -y https://pkgs.kaos.st/kaos-repo-latest.el$(grep 'CPE_NAME' /etc/os-release | tr -d '\"' | cut -d':' -f5).noarch.rpm\nsudo dnf install webkaos\n```\n\n#### Using Docker\n\nOfficial webkaos images available on [GitHub Container Registry](https://kaos.sh/p/webkaos) and [Docker Hub](http://kaos.sh/d/webkaos). All Docker images support templating using environment variables.\n\nOfficial images:\n\n- `ghcr.io/essentialkaos/webkaos:ol8`\n- `ghcr.io/essentialkaos/webkaos:ol8-unprivileged`\n- `ghcr.io/essentialkaos/webkaos:ol9`\n- `ghcr.io/essentialkaos/webkaos:ol9-unprivileged`\n- `essentialkaos/webkaos:ol8`\n- `essentialkaos/webkaos:ol8-unprivileged`\n- `essentialkaos/webkaos:ol9`\n- `essentialkaos/webkaos:ol9-unprivileged`\n\nUsage examples:\n\n```bash\n# Image on OracleLinux 8\ndocker run --name my-webkaos -v /some/content:/usr/share/webkaos/html:ro -p 8080:80 -d essentialkaos/webkaos:ol8\n```\n\n```bash\n# Unprivileged image on OracleLinux 8\ndocker run --name my-webkaos -v /some/content:/usr/share/webkaos/html:ro -p 8080:8080 -d essentialkaos/webkaos:ol8-unprivileged\n```\n\nUseful environment variables:\n\n* `WEBKAOS_ENABLE_ENTRYPOINT_LOGS` - Enable logging for actions made by entrypoint script;\n* `WEBKAOS_DISABLE_PROC_TUNE` - Disable automatic `worker_processes` tuning;\n* `WEBKAOS_DISABLE_BUCKET_TUNE` - Disable automatic `server_names_hash_bucket_size` tuning;\n* `WEBKAOS_DISABLE_TEMPLATES` - Disable automatic templates rendering.\n\n#### Using [rpmbuilder](https://kaos.sh/rpmbuilder)\n\n```bash\n# install and configure rpmbuilder\ngit clone https://kaos.sh/webkaos\ncd webkaos/\nrpmbuilder webkaos.spec -dl SOURCES\nrpmbuilder webkaos.spec -3 -V -I\n```\n\n### FAQ\n\n**Q:** **_Why is it named webkaos?_**\u003cbr/\u003e\n**A:** The very first version of this webserver was named `nginx-kaos`. But it uses a lot of different, awesome projects and libraries, not only nginx. So, we decided to choose something neutral.\n\n**Q:** **_Is it safe to use webkaos in production?_**\u003cbr/\u003e\n**A:** Yes. But we can't guarantee that there are no bugs in nginx, its modules, or used dependencies.\n\n**Q:** **_Can I use Docker images with Kubernetes/Nomad/Rancher?_**\u003cbr/\u003e\n**A:** Yes.\n\n**Q:** **_Can you provide packages for Ubuntu/Debian/FreeBSD?_**\u003cbr/\u003e\n**A:** Theoretically, yes. Practically, no. We use only RHEL-based distros in our infrastructure, and we can't provide the same quality of packages for other distros.\n\n**Q:** **_Can you provide Alpine-based Docker images?_**\u003cbr/\u003e\n**A:** No. Using RPM packages simplify their support for us. There is a complex process of building and testing packages with different tools (_[rpmbuilder](https://kaos.sh/rpmbuilder), rpmlint, [perfecto](https://kaos.sh/perfecto), [bibop](https://kaos.sh/bibop), [shellcheck](https://github.com/koalaman/shellcheck)_) and we can't provide the same level of quality without them. Also, it is tough to write and maintain Dockerfiles with a large number of build actions and stages.\n\n### Contributing\n\nBefore contributing to this project please read our [Contributing Guidelines](https://github.com/essentialkaos/.github/blob/master/CONTRIBUTING.md).\n\n### License\n\n[BSD 2-clause](LICENSE)\n\n\u003cp align=\"center\"\u003e\u003ca href=\"https://essentialkaos.com\"\u003e\u003cimg src=\"https://gh.kaos.st/ekgh.svg\"/\u003e\u003c/a\u003e\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fessentialkaos%2Fwebkaos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fessentialkaos%2Fwebkaos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fessentialkaos%2Fwebkaos/lists"}