Skip to content

Commit

Permalink
v2.5.0: add support for Opensearch and imgproxy
Browse files Browse the repository at this point in the history
- Added Opensearch as alternative to Elasticsearch. Set `elasticsearch.enabled: false` and `opensearch.enabled: true` to 
  switch search engines.
- Added imgproxy for dynamic image resizing. See imgproxy section for details.
- Add disk-cache volume for Varnish
- Updated Helm charts and container images for Redis, Varnish and RabbitMQ to meet Adobe Commerce/Magento 2.4.5 System Requirements
  • Loading branch information
phoenix-bjoern authored Feb 20, 2023
1 parent 4343cb7 commit 0d57b78
Show file tree
Hide file tree
Showing 3 changed files with 214 additions and 44 deletions.
16 changes: 12 additions & 4 deletions Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: magento
apiVersion: v2
appVersion: 2.4.5
version: 2.4.4
version: 2.5.0
description: Magento chart to deploy the application including services.
type: application
keywords:
Expand All @@ -20,17 +20,25 @@ dependencies:
condition: mariadb.enabled
- name: redis
repository: https://charts.bitnami.com/bitnami
version: ~16.12.0
version: ~16.13.0
condition: redis.enabled
- name: elasticsearch
repository: https://helm.elastic.co
version: ~7.17.0
condition: elasticsearch.enabled
- name: opensearch
repository: https://opensearch-project.github.io/helm-charts/
version: ~1.18.0
condition: opensearch.enabled
- name: varnish
repository: https://charts.softonic.io
version: 0.9.0
version: 0.13.1
condition: varnish.enabled
- name: rabbitmq
repository: https://charts.bitnami.com/bitnami
version: ~10.1.0
version: ~10.3.0
condition: rabbitmq.enabled
- name: imgproxy
version: ~0.8.27
repository: https://helm.imgproxy.net/
condition: imgproxy.enabled
23 changes: 23 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,22 @@ xdebug:

> **_Caution:_** Running Xdebug in a public environment can be a security issue. Enable this functionality at your own risk.
## imgproxy support
[imgproxy](https://imgproxy.net/) instantly resizes images and delivers it in an optimal format. This offloads resources
from the Magento pod and delivers images faster in PNG/WebP without additional effort.

To enable imgproxy in your deployment set `imgproxy.enabled: true` in your values file. Varnish will detect media image request
and will forward the request to imgproxy if available. The response will get cached response on a disk cache. For details check the
modified VCL in `values.yaml`. The relevant sections can be found by search for `x-img` in the VCL.

Resizing of product images happens on-the-fly once you enable the configuration in Magento the [URL format](https://experienceleague.adobe.com/docs/commerce-operations/configuration-guide/storage/remote-storage/remote-storage-image-resize.html?lang=en#configure-url-format-in-adobe-commerce).
This will append formatting instructions for width and height to the original product image URL. In addition to the clients accept headers
this information is used by imgproxy to deliver the image in the desired resolution.

> In case imgproxy can't serve the image the request will be gracefully forwarded to the Magento pod, which serves the
configured placeholder image for requests to `media/catalog` and `media/wysiwyg`. The relevant VCL subrouting is `vcl_synth`.


## Helm deployment
The chart requires [Helm 3.x](https://helm.sh/) and has been tested with 3.9.0.
Make sure to adjust the `values.yaml` before deployment.
Expand Down Expand Up @@ -302,6 +318,13 @@ Navigate to `http://<your-domain>` and checkout the new Magento2 instance.
This guide and the `values_gke.yaml` file are configured for the *magento.phoenix-media.rocks* example domain. You will need to update a few lines as described in [this section](https://github.com/PHOENIX-MEDIA/magento2-helm#updating-domains-magento_cloud_-variables-and-values-files).

## Changelog
### [2.5.0] - 2023-02-20
- Added Opensearch as alternative to Elasticsearch. Set `elasticsearch.enabled: false` and `opensearch.enabled: true` to
switch search engines.
- Added imgproxy for dynamic image resizing. See imgproxy section for details.
- Add disk-cache volume for Varnish
- Updated Helm charts and container images for Redis, Varnish and RabbitMQ to meet Adobe Commerce/Magento 2.4.5 System Requirements

### [2.4.4] - 2023-02-20
- Kubernetes 1.25 compatibility
- Updated Elasticsearch chart to 7.17
Expand Down
Loading

0 comments on commit 0d57b78

Please sign in to comment.