{"id":19196970,"url":"https://github.com/jitesoft/docker-lighttpd","last_synced_at":"2025-05-09T00:37:43.088Z","repository":{"id":25827893,"uuid":"106656581","full_name":"jitesoft/docker-lighttpd","owner":"jitesoft","description":"Lighttpd alpine linux.","archived":false,"fork":false,"pushed_at":"2025-04-03T20:14:45.000Z","size":149,"stargazers_count":10,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-09T00:37:25.132Z","etag":null,"topics":["alpine","containers","docker","docker-image","dockerfile","hacktoberfest","lighttpd","lighty"],"latest_commit_sha":null,"homepage":null,"language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jitesoft.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":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2017-10-12T06:59:52.000Z","updated_at":"2025-04-03T20:14:50.000Z","dependencies_parsed_at":"2024-05-29T00:03:56.246Z","dependency_job_id":"8fdb1fda-ac5c-431f-a4d2-40cd4afa9e4a","html_url":"https://github.com/jitesoft/docker-lighttpd","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jitesoft%2Fdocker-lighttpd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jitesoft%2Fdocker-lighttpd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jitesoft%2Fdocker-lighttpd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jitesoft%2Fdocker-lighttpd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jitesoft","download_url":"https://codeload.github.com/jitesoft/docker-lighttpd/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253171210,"owners_count":21865280,"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":["alpine","containers","docker","docker-image","dockerfile","hacktoberfest","lighttpd","lighty"],"created_at":"2024-11-09T12:15:01.958Z","updated_at":"2025-05-09T00:37:43.045Z","avatar_url":"https://github.com/jitesoft.png","language":"Dockerfile","funding_links":["https://opencollective.com/jitesoft-open-source","https://github.com/sponsors/jitesoft","https://www.patreon.com/jitesoft"],"categories":[],"sub_categories":[],"readme":"# Lighttpd\r\n\r\n\r\n[![Docker Pulls](https://img.shields.io/docker/pulls/jitesoft/lighttpd.svg)](https://hub.docker.com/r/jitesoft/lighttpd)\r\n[![Back project](https://img.shields.io/badge/Open%20Collective-Tip%20the%20devs!-blue.svg)](https://opencollective.com/jitesoft-open-source)\r\n\r\nAlpine linux with Lighttpd built from source.\r\n\r\n[Lighttpd](https://lighttpd.net) (lighty) is a lightweight web-server which is designed and optimized for high performance environments.\r\nLighttpd is open source under the revised BSD license.\r\n\r\nTo add a new configurations (more than the default configuration), add a new `*.conf` file to the `/usr/local/lighttpd.d` directory.\r\nEach file in that directory will be included into the configuration.  \r\nIf you wish to replace the base configuration fully, replace the `/etc/lighttpd/conf.d/lighttpd.conf` file or add a new file\r\nand change the `CONFIG_FILE` env variable to your preferred path.\r\n\r\n### Deprecation  of FPM / introduction of CGI\r\n\r\nThe -fpm tagged images are deprecated as of 2021-11-28 and will stop receiving updates.  \r\nFor a replacement, see the -cgi tagged images, which will be similar but with some differences.\r\n\r\n## Tags\r\n\r\nTags are based on lighttpd version where latest is the latest version at build time.  \r\nOlder versions are not re-built, only latest version.  \r\n\r\nImages can be found at:\r\n\r\n* [Docker hub](https://hub.docker.com/r/jitesoft/lighttpd): `jitesoft/lighttpd`  \r\n* [GitLab](https://gitlab.com/jitesoft/dockerfiles/lighttpd): `registry.gitlab.com/jitesoft/dockerfiles/lighttpd`\r\n* [GitHub](https://github.com/orgs/jitesoft/packages/container/package/lighttpd): `ghcr.io/jitesoft/lighttpd`\r\n* [Quay](https://quay.io/repository/jitesoft/lighttpd) `quay.io/jitesoft/httpd`\r\n\r\nDockerfiles can be found at [GitLab](https://gitlab.com/jitesoft/dockerfiles/lighttpd/blob/master/cgi/Dockerfile) and\r\n[GitHub](https://github.com/jitesoft/docker-lighttpd).\r\n\r\n## The image\r\n\r\nThis image contains lighttpd built from source, it runs on the alpine linux distro, making it a small image keeping the disk, cpu and ram at a minimum!\r\n\r\n### www-data user\r\n\r\nPrior to 2021 07 23, the image used the user lighttpd (1000/1000) to run the image.  \r\nThis have been changed to use the default www-data group and a www-data user with id 82\r\nto comply with standard www-data user in alpine images.\r\n\r\nContainers created runs as root (easily changed in production with the appropriate flags),\r\nwhile the lighttpd process runs as the www-data user (82) by default.\r\n\r\n## Environment variables\r\n\r\nThe following environment variables are used and exposed in the dockerfile:\r\n\r\n```txt\r\nPORT=80\r\nSERVER_NAME=localhost\r\nSERVER_ROOT=/var/www/html\r\nCONFIG_FILE=/etc/lighttpd/lighttpd.conf\r\nSKIP_HEALTHCHECK=false\r\nMAX_FDS=1024\r\n```\r\n\r\nThe default configuration file is located at `/etc/lighttpd/lighttpd.conf` but your own can be included in whatever way you wish. \r\nIf you are not replacing the default file you can use the  `CONFIG_FILE` variable to point to your own file and ignore the default. \r\n`PORT` 80 is exposed and used by default, if changed, the default configuration will use the port defined in the env variable but \r\nyou will have to expose it by yourself. `SERVER_NAME` defaults to localhost. `SERVER_ROOT` defaults to `/var/www/html`.\r\n\r\nThe `SKIP_HEALTHCHECK` flag will, if set to `\"true\"` mark the container as healthy as long as it is running, while if left default or set to \r\n`\"false\"` will run a query on the `127.0.0.1:${PORT}` endpoint every minute.  \r\nIt's exposed as an environment variable due to the fact that a 404 will be reported as an error and exit the health check with a none-`0` exit code.\r\n\r\nThe `MAX_FDS` variable sets the maximum file descriptors used by lighttpd and could be tweaked if needed.\r\n\r\n## CGI tag\r\n\r\nThe `cgi` tagged image have `mod_fastcgi` enabled with env variables set to enable connection to a separate cgi host. \r\nThe lighttpd container will await the cgi host before starting by checking the host with nc (netcat, busybox version).  \r\n\r\n```txt\r\nCGI_HOST=\"fpm\"\r\nCGI_PORT=\"9000\"\r\nCHECK_LOCAL=\"enable\"\r\nCGI_FILE_EXT=\".php\"\r\n```\r\n\r\nIf you do not want to share data between your containers, set the `CHECK_LOCAL` to \"disable\" to ignore \r\nlocal files in the lighttpd container.\r\n\r\nThe default configuration (which resides in `/etc/lighttpd/conf.d`) contains the following configuration:\r\n\r\n```txt\r\nserver.modules += (\"mod_fastcgi\")\r\nfastcgi.server += ( env.CGI_FILE_EXT =\u003e\r\n        ((\r\n                \"host\" =\u003e env.CGI_HOST,\r\n                \"port\" =\u003e env.CGI_PORT,\r\n                \"broken-scriptfilename\" =\u003e \"enable\",\r\n                \"docroot\" =\u003e env.SERVER_ROOT,\r\n                \"check-local\" =\u003e env.CHECK_LOCAL\r\n\r\n        ))\r\n)\r\n```\r\n\r\nOnce the cgi container have connected, it will create an empty file in `/tmp/ready` which can be used\r\nas a startup indicator if needed.\r\n\r\n### Image labels\r\n\r\nThis image follows the [Jitesoft image label specification 1.0.0](https://gitlab.com/snippets/1866155).\r\n\r\n## Licenses\r\n\r\nThis repository is released under the [MIT license](https://gitlab.com/jitesoft/dockerfiles/lighttpd/blob/master/LICENSE).  \r\nYou can find the Lighttpd license [here](https://git.lighttpd.net/lighttpd/lighttpd1.4.git/tree/COPYING).\r\n\r\n### Sponsors\r\n\r\nJitesoft images are built via GitLab CI on runners hosted by the following wonderful organisations:\r\n\r\n\u003ca href=\"https://osuosl.org/\" target=\"_blank\" title=\"Oregon State University - Open Source Lab\"\u003e\r\n    \u003cimg src=\"https://jitesoft.com/images/oslx128.webp\" alt=\"Oregon State University - Open Source Lab\"\u003e\r\n\u003c/a\u003e\r\n\r\n_The companies above are not affiliated with Jitesoft or any Jitesoft Projects directly._\r\n\r\n---\r\n\r\nSponsoring is vital for the further development and maintaining of open source.  \r\nQuestions and sponsoring queries can be made by \u003ca href=\"mailto:sponsor@jitesoft.com\"\u003eemail\u003c/a\u003e.  \r\nIf you wish to sponsor our projects, reach out to the email above or visit any of the following sites:  \r\n\r\n[Open Collective](https://opencollective.com/jitesoft-open-source)  \r\n[GitHub Sponsors](https://github.com/sponsors/jitesoft)  \r\n[Patreon](https://www.patreon.com/jitesoft)\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjitesoft%2Fdocker-lighttpd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjitesoft%2Fdocker-lighttpd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjitesoft%2Fdocker-lighttpd/lists"}