Skip to content

Commit 0e52007

Browse files
authored
Merge pull request docker-library#2356 from zakame/perl-debian-12-workdir
perl/content.md: Note about WORKDIR issue with Debian 12 based image
2 parents 9d89646 + 0cba315 commit 0e52007

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

perl/content.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,12 @@ If your Perl program is expected to handle signals and fork child processes, it
6666

6767
See also [Signals in perlipc](https://perldoc.pl/perlipc#Signals) as well as [Perl/docker-perl#44](https://github.com/Perl/docker-perl/issues/44).
6868

69+
### `COPY` and `WORKDIR` behavior in Debian Bookworm based images (Perl >= 5.38)
70+
71+
As our Perl images are based on the standard `buildpack-deps` and `debian` images, these inherit the new [merged-usr root filesystem layout](https://wiki.debian.org/UsrMerge) introduced in Debian 12 (Bookworm) which may affect certain build contexts that `COPY` their own `bin`, `sbin`, or `lib` directories into a `WORKDIR /`. Users are encouraged to set `WORKDIR` explicitly to a path other than `/` as much as possible, such as the `/usr/src/app` shown here in the examples, though as of current release our images now default to `WORKDIR /usr/src/app`.
72+
73+
See also [Perl/docker-perl#140](https://github.com/Perl/docker-perl/issues/140) for further information.
74+
6975
## Example: Creating a reusable Carton image for Perl projects
7076

7177
Suppose you have a project that uses [Carton](https://metacpan.org/pod/Carton) to manage Perl dependencies. You can create a `%%IMAGE%%:carton` image that makes use of the [ONBUILD](https://docs.docker.com/engine/reference/builder/#onbuild) instruction in its `Dockerfile`, like this:

0 commit comments

Comments
 (0)