This product is not supported for your selected Datadog site. ().
Cette page n'est pas encore disponible en français, sa traduction est en cours.
Si vous avez des questions ou des retours sur notre projet de traduction actuel, n'hésitez pas à nous contacter.

Metadata

ID: docker-best-practices/use-absolute-paths

Language: Docker

Severity: Warning

Category: Best Practices

Description

This rule encourages the use of absolute paths or the WORKDIR instruction to change directories within Dockerfiles instead of chaining commands with cd. Using relative paths combined with cd in a single RUN instruction can lead to less readable and more error-prone code. It also makes it harder to track the current working directory during image builds.

To comply, either set the working directory explicitly using WORKDIR /path/to/directory before running commands or use absolute paths in instructions like RUN cp /source/file /destination/path. Avoid combining cd with other commands in a single RUN line, as this can cause unexpected behavior and complicate debugging.

Non-Compliant Code Examples

FROM busybox
RUN cd /usr/src/app && cp somedir/somefile ./someDirInUsrSrcApp/
FROM busybox
RUN cd /usr/src/app && git clone git@github.com:lukasmartinelli/hadolint.git 

Compliant Code Examples

FROM busybox
RUN cp somedir/somefile /usr/src/app/someDirInUsrSrcApp/
FROM busybox
WORKDIR /usr/src/app
RUN git clone git@github.com:lukasmartinelli/hadolint.git
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains