I got the attached error message. It disappears when I forge the production container with the current Dockerfile which includes make.
cloud@test01-database:~/production$ make manage COMMAND='./gpg.mk key PERSON="Christoph Maurer" COMMENT="test01-database" EMAIL="christoph.maurer@fraunhofer.de"'
if [[ "production" == "development" ]]; then \
GNUPG_SECRET_SIGNING_KEY_FINGERPRINT="placeholder" \
docker compose pull \
backend && \
GNUPG_SECRET_SIGNING_KEY_FINGERPRINT="placeholder" \
docker compose build \
--pull \
--build-arg GROUP_ID="1000" \
--build-arg USER_ID="1000" \
backend ; \
else \
make --file=./forge.mk \
build \
SERVICE=backend \
TARGET="03af9cefea0b5d441275558fab096a64a45a4c08" ; \
fi
make[1]: Entering directory '/home/cloud/production'
if [[ "false" == "true" || -z "" ]]; then \
docker build \
--pull \
--file "./backend/Dockerfile.production" \
--tag "database-backend:03af9cefea0b5d441275558fab096a64a45a4c08" \
"./backend" ; \
else \
echo "Image already exists, skipping build. Pass `OVERWRITE=true` to build anyway." ; \
fi
[+] Building 85.1s (20/20) FINISHED docker:default
=> [internal] load build definition from Dockerfile.production 0.1s
=> => transferring dockerfile: 4.19kB 0.0s
=> resolve image config for docker-image://docker.io/docker/dockerfi 1.7s
=> docker-image://docker.io/docker/dockerfile:1.21@sha256:27f9262d43 0.8s
=> => resolve docker.io/docker/dockerfile:1.21@sha256:27f9262d434520 0.0s
=> => sha256:8dbb96228b4404dfe1ceab95336122e074426 13.73MB / 13.73MB 0.6s
=> => extracting sha256:8dbb96228b4404dfe1ceab95336122e07442656b055b 0.2s
=> [internal] load metadata for mcr.microsoft.com/dotnet/sdk:10.0-no 0.4s
=> [internal] load metadata for mcr.microsoft.com/dotnet/aspnet:10.0 0.4s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 302B 0.0s
=> [internal] load build context 0.1s
=> => transferring context: 3.95MB 0.1s
=> [stage-1 1/7] FROM mcr.microsoft.com/dotnet/aspnet:10.0-noble-amd 1.5s
=> => resolve mcr.microsoft.com/dotnet/aspnet:10.0-noble-amd64@sha25 0.0s
=> => sha256:27640c99102cbc65ab781f867595024e7511518 3.56kB / 3.56kB 0.3s
=> => sha256:a51402fb1ecf83c9206b43cc071827d9deca9 12.77MB / 12.77MB 0.5s
=> => sha256:72f9feecfdbd428c84b871f5d41a165172772583b59 154B / 154B 0.2s
=> => sha256:d47ce24876437904e26a4e0c1a183649aebed 36.66MB / 36.66MB 1.3s
=> => sha256:33919016b1bbea02a7f751a9ca5f6b31f1dff 16.82MB / 16.82MB 0.8s
=> => sha256:b40150c1c2717d324cdb17278c8efdfa4dfcd 29.73MB / 29.73MB 0.8s
=> [build 1/5] FROM mcr.microsoft.com/dotnet/sdk:10.0-noble-amd64@s 17.5s
=> => resolve mcr.microsoft.com/dotnet/sdk:10.0-noble-amd64@sha256:6 0.0s
=> => sha256:30f227425bcd4f5c90662a49f27f2edb295df21e9f0 498B / 498B 0.2s
=> => sha256:5f2a92c0431ddbacd726d69b88bd36ffd689c 18.07MB / 18.07MB 0.5s
=> => sha256:2920bdd46f0067e317cdbdad1d12c147f2 191.53MB / 191.53MB 11.3s
=> => sha256:6d59edda6ae43387a264a294e85fa356b5e58 23.81MB / 23.81MB 0.7s
=> => extracting sha256:6d59edda6ae43387a264a294e85fa356b5e5850d8f7b 0.8s
=> => extracting sha256:2920bdd46f0067e317cdbdad1d12c147f2ffe785f8e4 5.2s
=> => extracting sha256:30f227425bcd4f5c90662a49f27f2edb295df21e9f04 0.0s
=> => extracting sha256:5f2a92c0431ddbacd726d69b88bd36ffd689c12878ac 0.7s
=> [stage-1 2/7] RUN apt-get update && apt-get upgrade --assume-y 14.5s
=> [stage-1 3/7] RUN version_codename="$(env --ignore-environment 17.6s
=> [build 2/5] COPY ./ /app 0.5s
=> [build 3/5] WORKDIR /app 0.7s
=> [build 4/5] RUN dotnet restore 21.2s
=> [stage-1 4/7] WORKDIR /app 0.1s
=> [build 5/5] RUN dotnet publish --configuration release --sel 34.6s
=> [stage-1 5/7] COPY --from=build /app/src/bin/Release/net10.0/publ 0.2s
=> [stage-1 6/7] RUN mkdir --parents /root/.dotnet/corefx/cryptogr 0.9s
=> [stage-1 7/7] RUN ln --symbolic ./Database.dll ./App.dll 0.2s
=> exporting to image 5.3s
=> => exporting layers 3.3s
=> => exporting manifest sha256:bc8d8a9c929568a0b3b606b58c76eed0676d 0.0s
=> => exporting config sha256:5119db08a3d597996bc1d44eb40619ee1379e6 0.0s
=> => exporting attestation manifest sha256:de02a1c92150bd7ec7ee330a 0.0s
=> => exporting manifest list sha256:80ae76e0e06c96786361158b696b5aa 0.0s
=> => naming to docker.io/library/database-backend:03af9cefea0b5d441 0.0s
=> => unpacking to docker.io/library/database-backend:03af9cefea0b5d 1.9s
make[1]: Leaving directory '/home/cloud/production'
TARGET="03af9cefea0b5d441275558fab096a64a45a4c08" \
GNUPG_SECRET_SIGNING_KEY_FINGERPRINT="placeholder" \
docker compose run \
--volume .:/app \
--rm \
--env GNUPG_SECRET_SIGNING_KEY_PASSPHRASE="aH1JDS/b175NurDQOQVn/QXAbK7SMZpdaoTOgJnnsFg=" \
backend \
./gpg.mk key PERSON="Christoph Maurer" COMMENT="test01-database" EMAIL="christoph.maurer@fraunhofer.de"
[+] 2/2t 2/22
✔ Image postgres:13.23-trixie Pulled 6.2s
✔ Container test01-database_production_production-database-1 Running 0.0s
Image postgres:13.23-trixie Pulling
Image postgres:13.23-trixie Pulled
Container test01-database_production_production-backend-run-aed9fa4f7eb4 Creating
Container test01-database_production_production-backend-run-aed9fa4f7eb4 Created
/usr/bin/env: ‘make’: No such file or directory
make: *** [Makefile:194: manage] Error 127
I got the attached error message. It disappears when I forge the production container with the current Dockerfile which includes
make.