Comments (2)
In a nutshell, they are different tools and part of the point of buildpacks is that you don't need to micro-manage all that stuff.
For example, with buildpacks...
- You get a stack/base image set that is kept up-to-date for you so you don't have to constantly run
microdnf update
to keep your images up-to-date. - You don't have to install tools like pip/python because the buildpack does this for you
- You don't have to tweak the PATH because, again, the buildpack sets all this up for you
- You don't need to set entry points because, again, the buildpacks will do this for you
You provide the source code, and buildpacks turn that into an image. When you do this, it ends up being less work because the repetition is automated away by using buildpacks.
Having said that, there's not a 100% mapping between Dockerfiles and buildpacks. It also depends on what buildpacks you're using, because as you can see it's up to the buildpacks to implement a lot of this.
If you have specific questions about how something works under buildpacks feel free to ask on Slack. Happy to discuss further.
from pack.
Closing this issue because it is not a feature or a bug in pack
, maybe the gap here is that as a user, is not clear you how to use buildpacks instead of a Dockerfile?
As Daniel said, you can find some guidance on Paketo slack, the most important thing I can add is: you can find several buildpacks maintain by the community and the buildpack providers out there that solve many of the common use cases for every application, but, it could be the case where you need to create your own buildpack to satisfy your need, I know it is not trivial to do it, but the community can also help you, Paketo uses some libraries to write their own buildpacks.
Taking one of the things from your exampe Dockerfile, take a look at the Paketo python buildpack I think they cover several things you mentioned there, what you have to do is use a builder that has python support (Paketo already offers that), but maybe you can also check Heroku or Google builpacks! that's the great thing about the project.
I hope this can help you! you are free to reach out us in slack too!
from pack.
Related Issues (20)
- `pack` uses local computer for DNS resolution of image registry name during `RESTORER` phase HOT 1
- Upgrade buildpacks/pack to go1.21.6 HOT 1
- Upgrade buildpacks/pack to go1.21.6 HOT 1
- `pack build` cannot authenticate against docker registries that require client certificate HOT 4
- `pack builder create` cannot authenticate against Azure Container Registry (ACR) HOT 5
- Support Platform API 0.13 HOT 4
- Pack 0.33.2 GitHub release changelog doesn't match diff between Git tags HOT 3
- Documenting known issue: pack 0.33.0 has breaking change for library users HOT 2
- Support `docker://` URIs for builder lifecycle parameter HOT 6
- v0.33.0 bug: CheckReadAccess fails when using a local run image HOT 8
- When creating a buildpack with `docker buildx --platform linux/arm64` pack does not set the architecture HOT 3
- Add pack cli support for IBM ppc64le HOT 2
- getBestRunMirror fails behind proxy
- With `pack build --run-image` the user specified run image should have precedence over run images provided by extensions HOT 9
- Upgrade buildpacks/pack to go1.21.8 HOT 2
- `pack build` segfaults on M2 mac + podman HOT 6
- CVE(s) found
- ERROR: failed to export: saving image: fetching base layers Podman on M2 HOT 3
- Remove validation of deprecated `io.buildpacks.stack.id` HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pack.