GoogleCloudPlatform / buildpacks

Builders and buildpacks designed to run on Google Cloud's container platforms
Apache License 2.0
985 stars 146 forks source link

GCP Buildpacks support for Conda in PYthon #280

Open gitricko opened 1 year ago

gitricko commented 1 year ago

Is there a support for conda version of python build pack ?

https://github.com/paketo-buildpacks/miniconda

smsohan commented 1 year ago

Conda is not supported today. Please share your use case so we understand how that'd help you.

gitricko commented 1 year ago

Thanks for your quick response.

There is 2 main benefit why we would like to have conda buildpack.

  1. Local Dev and Production parity in terms of dependencies setup

    • We use conda environment files to manage our dependencies for localhost development.
    • We then can reuse the same environment file to build the dependencies in the container using the buildpack
  2. Conda can install other programming language run-time

    • For instance, we dont have Elixir buildpack... however, we can use conda to build the dependencies for us

With this, our team literally use one buildpack to build apps that is nodejs, java, python and even elixir.

jama22 commented 1 year ago

@gitricko interesting. Can you tell me a bit more about where those apps will be deployed? will they be deployed onto a k8s cluster? cloud run? cloud functions? some other destination?

If you're just looking for a straightforward way to containerize without writing Dockerfiles, you could definitely use the Paketo buildpacks to build your projects and then deploy those images on to a GCP service.

With the GCP buildpacks project, we're really honing in on the quality of our existing buildpacks and shipping reliable updates to our new builders (see https://github.com/GoogleCloudPlatform/buildpacks/discussions/271). Unfortunately, this means we don't have as much headroom to take on in new buildpacks.

We are, however, looking at ways where folks can utilize Paketo/Heroku/other community buildpacks on-top of our base images. We're still in the early stages of investigating that work, but hoping we can share more details on that soon

gitricko commented 1 year ago

@gitricko interesting. Can you tell me a bit more about where those apps will be deployed? will they be deployed onto a k8s cluster? cloud run? cloud functions? some other destination?

If you're just looking for a straightforward way to containerize without writing Dockerfiles, you could definitely use the Paketo buildpacks to build your projects and then deploy those images on to a GCP service.

With the GCP buildpacks project, we're really honing in on the quality of our existing buildpacks and shipping reliable updates to our new builders (see #271). Unfortunately, this means we don't have as much headroom to take on in new buildpacks.

We are, however, looking at ways where folks can utilize Paketo/Heroku/other community buildpacks on-top of our base images. We're still in the early stages of investigating that work, but hoping we can share more details on that soon

We are looking into evaluating Kf and one of the interesting google has build is that your buildpack has the least vulnerabilities as compared to paketo.

jama22 commented 1 year ago

We are looking into evaluating Kf and one of the interesting google has build is that your buildpack has the least vulnerabilities as compared to paketo.

Glad to know our recent security work is paying off ;)

Would you be looking for the equivalent of something like the Paketo miniconda buildpack? We're not currently looking to build additional buildpacks, but we are exploring options on how we might be able to let users inject community buildpacks in addition to the GCP builders. Would your organization be open to mixing-and-matching buildpacks? We would not be able to provide technical support on the miniconda buildpacks

gitricko commented 1 year ago

Would you be looking for the equivalent of something like the Paketo miniconda buildpack? We're not currently looking to build additional buildpacks, but we are exploring options on how we might be able to let users inject community buildpacks in addition to the GCP builders. Would your organization be open to mixing-and-matching buildpacks? We would not be able to provide technical support on the miniconda buildpacks

What do you mean by mixing and matching buildpacks ? We just need miniconda and no support really is needed - it is just miniconda.

GitHunter0 commented 2 months ago

I would love to see the support for conda packages as well because libraries like geopandas are very difficult to install with only pip, they require additional system dependencies.