{"id":38020295,"url":"https://github.com/ansemjo/caddy","last_synced_at":"2026-01-16T19:28:26.356Z","repository":{"id":122756855,"uuid":"171062570","full_name":"ansemjo/caddy","owner":"ansemjo","description":"A container image containing the caddy server in two variants: Proxy and CGI","archived":false,"fork":false,"pushed_at":"2024-03-03T19:18:41.000Z","size":36,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-03-03T20:28:12.257Z","etag":null,"topics":[],"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/ansemjo.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}},"created_at":"2019-02-16T23:24:27.000Z","updated_at":"2022-05-09T12:15:50.000Z","dependencies_parsed_at":"2024-03-03T20:28:06.042Z","dependency_job_id":"9ff70842-1057-4aa1-a84c-85ed9ca28e6a","html_url":"https://github.com/ansemjo/caddy","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/ansemjo/caddy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansemjo%2Fcaddy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansemjo%2Fcaddy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansemjo%2Fcaddy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansemjo%2Fcaddy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ansemjo","download_url":"https://codeload.github.com/ansemjo/caddy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansemjo%2Fcaddy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28481726,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T11:59:17.896Z","status":"ssl_error","status_checked_at":"2026-01-16T11:55:55.838Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":[],"created_at":"2026-01-16T19:28:25.734Z","updated_at":"2026-01-16T19:28:26.349Z","avatar_url":"https://github.com/ansemjo.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ansemjo/caddy\n\nA container image containing the [caddy] server in two variants:\n\n- `ghcr.io/ansemjo/caddy:plain` – completely standalone in a scratch base image for simple file server or\n  proxying scenarios\n- `ghcr.io/ansemjo/caddy:cgi` – with [CGI support] in a Python base image for simple dynamic content\n\nBoth images can quickly be build with `build.sh` if you have a BuildKit-enabled Docker.\n\n[caddy]: https://caddyserver.com/\n[CGI support]: https://github.com/aksdb/caddy-cgi/\n\n## `plain`\n\nThis is the simpler image because it is intended to be used as a TLS proxy for internal services or\nas one element in a `docker-compose.yml` file. The `caddy` binary is compiled statically and\nstripped of all symbols, then placed in an empty `scratch` image.\n\n### Usage\n\nThe Caddyfile in the image only activates a file browser in its root `/srv/www` and\nnothing more.\n\n    docker run -d -p 8080:8080 \\\n      -v /path/to/files:/srv/www \\\n      ghcr.io/ansemjo/caddy:plain\n\nIf you want to do something else you can also mount a custom configuration file\nover `/Caddyfile`:\n\n    docker run -d -p 8080:8080 \\\n      -v /path/to/files:/srv/www \\\n      -v $PWD/Caddyfile:/Caddyfile \\\n      ghcr.io/ansemjo/caddy:plain\n\n\n## `cgi`\n\nThis image uses the same `caddy` binary as above, which is built with\n[aksdb/caddy-cgi](https://github.com/aksdb/caddy-cgi/) compiled-in, and is placed\nin a Python base image.\n\nThat means that you can have a few simple scripts in the container that will be used\nto construct the actual response dynamically without writing a full-blown application\nserver. This has its drawbacks of course, mainly performance. But it works great for\nsimple dynamically generated content like menu scripts for network booting with iPXE\nor Kickstart configurations, for example. To that end, this image plays together nicely\nwith [ansemjo/ipxeboot](https://github.com/ansemjo/ipxeboot).\n\n### Usage\n\nThe included `Caddyfile` handles any `/*.py` files in its `/srv/www` webroot as\nPyhton scripts and executes them with Python 3. A small sample is included in\n`/srv/www/hello.py`.\n\n    docker run -d -p 8080:8080 \\\n      -v /path/to/files:/srv/www \\\n      ghcr.io/ansemjo/caddy:cgi\n\nAgain, if you want to configure how your CGI scripts are handled or enable other\nfeatures, mount your own configuration over `/Caddyfile` (see above).\n\n\n## License\n\n### caddy\n\nThe caddy binary is built from sources and as such is licensed under\nthe [Apache License 2.0]. No changes are made directly to its sources but an\nown `main.go` file is used to enable the plugin below.\n\n[Apache License 2.0]: https://github.com/caddyserver/caddy/blob/master/LICENSE\n\n### caddy-cgi\n\nThe included [caddy-cgi] plugin is licensed under the [MIT License].\n\n[caddy-cgi]: https://github.com/aksdb/caddy-cgi/\n[MIT License]: https://github.com/aksdb/caddy-cgi/blob/master/LICENSE\n\n### this project\n\nThis work is licensed under the [MIT License](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fansemjo%2Fcaddy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fansemjo%2Fcaddy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fansemjo%2Fcaddy/lists"}