bitnami / containers

Bitnami container images
https://bitnami.com
Other
3.31k stars 4.79k forks source link

[bitnami/apisix] Use Apisix-Base build for the default Apisix image #42525

Open mrmm opened 1 year ago

mrmm commented 1 year ago

Name and Version

bitnami/apisix:4.3.1

What is the problem this feature will solve?

Allow the usage of plugins that are included with the Apisix-Base version.

What is the feature you are proposing to solve the problem?

When using a plugin that is not included by default gzip for instance the DataPlane displays the error need to build APISIX-Base to support setting gzip while reading response header from upstream.

What alternatives have you considered?

No response

mrmm commented 1 year ago

@Javirln Is this possible with the current state of Apisix base modules?

mrmm commented 1 year ago

@andresbono Is there a way to help in this I am not familiar on how the stack smith prepares the packages for the docker images. Let me know if I can make this task easier 🙏

andresbono commented 1 year ago

Hi, thank you for filling this issue! We have created an internal ticket to evaluate your feature request, it seems an interesting addition. If everything looks good, and we can release the container image with APISIX + APISIX-Base we will ask you for feedback.

In the meantime, can you think of any drawbacks of building APISIX with APISIX-Base instead of the regular OpenResty? Is there any current feature that would be lost if we switch to APISIX-Base?

Thank you for your collaboration!!

mrmm commented 1 year ago

Hello @andresbono Thanks a lot for dedicating the time to this request 🙏

As far as I can find (in the docs, GitHub repo of APISIX, and its related repos) there would not be any missing feature from the APISIX-Base build compared to the regular OpenResty build.

On the contrary, there are quite a number of Plugins that can be used when using APISIX-Base below is what should (AFAIK) some useful plugins that require this build:

An alternative solution would be to build two images apisix and apisix-base (not sure of the overhead, besides needing to maintain 1 more docker image of APISIX) this will give the liberty to the user to choose what version of APISIX to deploy. For the Helm chart, the regular APISIX build can be kept as the default docker image.

Let me know how can I help/off-load some of the work on my side if needed 🙏

okassov commented 10 months ago

Any updates?

sereneshikari commented 4 months ago

I'm interested in this too! A lot of useful features are missing in the standard build as already mentioned so providing APISIX built on top of APISIX-Base would be beneficial or at least, steps on how to do so.