New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
staged-dockerfile: support Dockerfile builder with distributed builds #2215
Comments
Implement container backend support for dockerfile
Cleanup buildah driver
|
Refactor mapping of werf.yaml to image+stages
|
Done in #4973. |
Next step is to implement 3 parts of new dockerfile builder:
|
… staged dockerfile builder * Implemented test instruction building using new staged-dockerfile building method of container backend. * Refactored conveyor so that new builder now correctly coupled to the existing building mechanics. refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
… staged dockerfile builder * Implemented test instruction building using new staged-dockerfile building method of container backend. * Refactored conveyor so that new builder now correctly coupled to the existing building mechanics. refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
… staged dockerfile builder * Implemented test instruction building using new staged-dockerfile building method of container backend. * Refactored conveyor so that new builder now correctly coupled to the existing building mechanics. refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
Implemented working conveyor + backend build mechanics. No real dockerfile parsing yet. Only RUN instruction implemented at conveyor-stage-level (digests calculation). Next steps:
|
…o dockerfile parser package Embed instructions data into container backend instructions. refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…o dockerfile parser package Embed instructions data into container backend instructions. refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…configration section refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…configration section refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
Status update. Implemented full working skeleton of staged dockerfile builder. Next steps:
|
Implemented 2-stage build-args expansion: 1. Expand all build-args except dependencies-args on early dockerfile parsing stage. 2. Expand dependencies-args when dependencies images names are available during image conveyor processing. refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…lding refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…ations) refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…ations) refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…ations) refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…ations) refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
This comment was marked as outdated.
This comment was marked as outdated.
Check following environment variables / build arguments are available during build process of Dockerfile with staged builder:
|
…the final-repo * Do not store non-target Dockerfile stages in the final-repo, nor set custom tags on non-target stages. * Changed staged-dockerfile builder digest calculation algorithm: do not use instruction number in digest input calculation, only instruction name. refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
Fixed by the #5142 |
…the final-repo * Do not store non-target Dockerfile stages in the final-repo, nor set custom tags on non-target stages. * Changed staged-dockerfile builder digest calculation algorithm: do not use instruction number in digest input calculation, only instruction name. refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…the final-repo * Do not store non-target Dockerfile stages in the final-repo, nor set custom tags on non-target stages. * Changed staged-dockerfile builder digest calculation algorithm: do not use instruction number in digest input calculation, only instruction name. refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…the final-repo * Do not store non-target Dockerfile stages in the final-repo, nor set custom tags on non-target stages. * Changed staged-dockerfile builder digest calculation algorithm: do not use instruction number in digest input calculation, only instruction name. refs #2215 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
Some new reported problems:
заработало только добавлением лимитов для пользователя в /etc/security/limits.conf, а переменная WERF_BUILDAH_ULIMIT не помогла
|
Bugreport:
Configuration: # werf.yaml
---
artifact: arti
from: ubuntu:22.04
---
image: xxx
from: ubuntu:22.04
import:
- artifact: arti
after: install
add: /etc
to: /myetc |
Update. Fixed by the #5195 |
Update. Fixed in the main. |
Update. Fixed in the main. |
…le only for buildah backend and not avaiable for docker server backend Refs #2215 (comment) Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…le only for buildah backend and not avaiable for docker server backend Refs #2215 (comment) Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…le only for buildah backend and not avaiable for docker server backend Refs #2215 (comment) Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…le only for buildah backend and not avaiable for docker server backend Refs #2215 (comment) Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…le only for buildah backend and not avaiable for docker server backend Refs #2215 (comment) Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
…le only for buildah backend and not avaiable for docker server backend Refs #2215 (comment) Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
New case:
results in error, while
works ok. |
Dockerfile builder should map dockerfile instructions onto stapel build stages. Stapel build stages will be stored in the stages storage.
The text was updated successfully, but these errors were encountered: