{"id":21614755,"url":"https://github.com/eea/eea.docker.varnish","last_synced_at":"2025-04-06T06:12:08.263Z","repository":{"id":48503360,"uuid":"39126749","full_name":"eea/eea.docker.varnish","owner":"eea","description":"Varnish docker image with reload and conf.d support","archived":false,"fork":false,"pushed_at":"2024-12-16T17:29:49.000Z","size":157,"stargazers_count":55,"open_issues_count":3,"forks_count":43,"subscribers_count":45,"default_branch":"7.x","last_synced_at":"2025-03-30T05:07:26.565Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://registry.hub.docker.com/u/eeacms/varnish/","language":"Shell","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/eea.png","metadata":{"files":{"readme":"Readme.md","changelog":"CHANGELOG.md","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,"publiccode":null,"codemeta":null}},"created_at":"2015-07-15T08:57:10.000Z","updated_at":"2025-02-11T21:31:59.000Z","dependencies_parsed_at":"2022-09-08T23:41:22.777Z","dependency_job_id":"07fd420b-0398-4899-8c31-ab480ce7e59a","html_url":"https://github.com/eea/eea.docker.varnish","commit_stats":null,"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eea%2Feea.docker.varnish","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eea%2Feea.docker.varnish/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eea%2Feea.docker.varnish/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eea%2Feea.docker.varnish/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eea","download_url":"https://codeload.github.com/eea/eea.docker.varnish/tar.gz/refs/heads/7.x","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247441058,"owners_count":20939239,"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":[],"created_at":"2024-11-24T22:09:15.927Z","updated_at":"2025-04-06T06:12:08.246Z","avatar_url":"https://github.com/eea.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Varnish Docker image\n\nVarnish docker image with support for dynamic backends, Rancher DNS, auto-configure\nand reload.\n\nThis image is generic, thus you can obviously re-use it within\nyour non-related EEA projects.\n\n - Alpine **3.19**\n - Varnish **7.6.1**\n - Expose **80**, **8443**\n\n## Supported tags and respective Dockerfile links\n\n  - `:7` [*Dockerfile*](https://github.com/eea/eea.docker.varnish/blob/7.x/Dockerfile) (Alpine 3.19, Varnish 7.6.1)\n\n### Stable and immutable tags\n\n  - `:4.1-6.5` [*Dockerfile*](https://github.com/eea/eea.docker.varnish/tree/4.1-6.5/varnish/Dockerfile) - Varnish: **4.1.11** Release: **6.5**\n  - `:7.2-1.0` [*Dockerfile*](https://github.com/eea/eea.docker.varnish/tree/7.2-1.0/Dockerfile) - Varnish: **7.2** Release: **1.0**\n  - `:7.4-1.1` [*Dockerfile*](https://github.com/eea/eea.docker.varnish/tree/7.4-1.1/Dockerfile) - Varnish: **7.4.2** Release: **1.1**\n  - `:7.5-1.0` [*Dockerfile*](https://github.com/eea/eea.docker.varnish/tree/7.5-1.0/Dockerfile) - Varnish: **7.5.0** Release: **1.0**\n  - `:7.6-1.0` [*Dockerfile*](https://github.com/eea/eea.docker.varnish/tree/7.5-1.0/Dockerfile) - Varnish: **7.6.1** Release: **1.0**\n\nSee [older versions](https://github.com/eea/eea.docker.varnish/releases)\n\n### Changes\n\n - [CHANGELOG.md](https://github.com/eea/eea.docker.varnish/blob/master/CHANGELOG.md)\n\n## Base docker image\n\n - [hub.docker.com](https://registry.hub.docker.com/u/eeacms/varnish)\n\n## Source code\n\n  - [github.com](http://github.com/eea/eea.docker.varnish)\n\n\n## Installation\n\n1. Install [Docker](https://www.docker.com/).\n\n## Variables\n\n* `VARNISH_HTTP_PORT` - varnish port\n* `VARNISH_HTTPS_PORT` - varnish ssl port\n* `VARNISH_SIZE` - varnish cache size\n* `AUTOKILL_CRON` - Varnish re-create crontab, will force a recreation of the container. Uses UTC time, format is linux crontab - for example -  `0 2 * * *` is 02:00 UTC each day\" \n* `VARNISH_CFG_CONTENT` - Multiline variable that will be written in the `default.vcl` file\n\n## Usage\n\n### Using `VARNISH_CFG_CONTENT`\n\nSee [docker-compose.yml](https://github.com/eea/eea.docker.varnish/blob/7.x/docker-compose.yml).\n\n### Extend the image with a custom varnish.vcl file\n\nThe `default.vcl` file provided with this image is bare and only contains\nthe marker to specify the VCL version. If you plan on using a more\nelaborate base configuration in your container and you want it shipped with\nyour image, you can extend the image in a Dockerfile, like this:\n\n    FROM eeacms/varnish\n    COPY varnish.vcl /etc/varnish/default.vcl\n\nand then run\n\n    $ docker build -t varnish-custom /path/to/Dockerfile\n\n## How to add docker environment variables in varnish.vcl\n\n1. Choose relevant variable name, starting with `VARNISH_` - eg. `VARNISH_EXAMPLE`\n\n2. Add default value in Dockerfile \n\n      ENV VARNISH_EXAMPLE=\"GET\"\n\n3. Add variable in `\u003c\u003e` in varnish.vcl\n\n      set req.http.X-Varnish-Routed = \"\u003cVARNISH_EXAMPLE\u003e\";\n\n4. Add description in `Readme.md`\n\n### Using a read-only volume for the vcl template files - `/varnish-config`\n\nThe volume `/varnish-config` will be used to store the read only vcl template configuration files. They will be copied with the same structure to /etc/varnish, where the variable substitution will be done. \n\n### Rancher integration\n\nUse `dynamic.director` to integrate varnish in rancher DNS - if a backend containers are changed, it knows to get the latest list of IPs automatically.\n\n      new cluster = dynamic.director(port = \"\u003cVARNISH_BACKEND_PORT\u003e\", ttl = \u003cVARNISH_DNS_TTL\u003e);\n\n\n### Example:\n\nYou can use [plone-varnish](https://github.com/eea/plone-varnish) as an example of usage. \n\n### Upgrade\n\n    $ docker pull eeacms/varnish\n\n\n## Copyright and license\n\nThe Initial Owner of the Original Code is European Environment Agency (EEA).\nAll Rights Reserved.\n\nThe Original Code is free software;\nyou can redistribute it and/or modify it under the terms of the GNU\nGeneral Public License as published by the Free Software Foundation;\neither version 2 of the License, or (at your option) any later\nversion.\n\n\n## Funding\n\n[European Environment Agency (EU)](http://eea.europa.eu)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feea%2Feea.docker.varnish","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feea%2Feea.docker.varnish","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feea%2Feea.docker.varnish/lists"}