dockerfiles
dockerfiles copied to clipboard
Problem with MySQL Docker: base image of `mysql:8` is now Oracle based
Setup information
docker-compose build (uncommented these lines)
Describe the bug
It seems like the MySQL 8 image cannot be built. Running docker-compose build gives me:
app uses an image, skipping
server uses an image, skipping
Building db
Step 1/5 : FROM mysql:8
---> 2fe463762680
Step 2/5 : ENV force_color_prompt yes
---> Using cache
---> 25e1a6d53b51
Step 3/5 : RUN apt-get update;
---> Running in e5d052f6e6ee
Get:1 http://deb.debian.org/debian buster InRelease [122 kB]
Get:2 http://security.debian.org/debian-security buster/updates InRelease [34.8 kB]
Get:3 http://deb.debian.org/debian buster-updates InRelease [56.6 kB]
Get:4 http://repo.mysql.com/apt/debian buster InRelease [22.1 kB]
Get:5 http://security.debian.org/debian-security buster/updates/main amd64 Packages [472 kB]
Get:6 http://deb.debian.org/debian buster/main amd64 Packages [7909 kB]
Get:7 http://deb.debian.org/debian buster-updates/main amd64 Packages [8788 B]
Err:4 http://repo.mysql.com/apt/debian buster InRelease
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 467B942D3A79BD29
Reading package lists...
W: GPG error: http://repo.mysql.com/apt/debian buster InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 467B942D3A79BD29
E: The repository 'http://repo.mysql.com/apt/debian buster InRelease' is not signed.
ERROR: Service 'db' failed to build: The command '/bin/sh -c apt-get update;' returned a non-zero code: 100
To reproduce Steps to reproduce the behavior:
- See above
Expected behavior Image should be buildable for folks wanting to use the backup functionallity.
Docker/Kubernetes/Helm:
- Output of
docker version:
Client: Docker Engine - Community
Version: 20.10.12
API version: 1.41
Go version: go1.16.12
Git commit: e91ed57
Built: Mon Dec 13 11:45:33 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.12
API version: 1.41 (minimum version 1.12)
Go version: go1.16.12
Git commit: 459d0df
Built: Mon Dec 13 11:43:42 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.12
GitCommit: 7b11cfaabd73bb80907dd23182b9347b4245eb5d
runc:
Version: 1.0.2
GitCommit: v1.0.2-0-g52b36a2
docker-init:
Version: 0.19.0
GitCommit: de40ad0
Possible fix/workaround:
Adding this line to the config/mysql/Dockerfile before running apt-get update:
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 467B942D3A79BD29
Additional info: https://askubuntu.com/questions/1389928/mysql-an-error-occurred-during-the-signature-verification
I'm wondering that apt-get works at all.
mysql:8 defaults to oraclelinux:8-slim
❯ docker run --rm -it mysql:8 cat /etc/os-release
Unable to find image 'mysql:8' locally
8: Pulling from library/mysql
Digest: sha256:a43f6e7e7f3a5e5b90f857fbed4e3103ece771b19f0f75880f767cf66bbb6577
Status: Downloaded newer image for mysql:8
NAME="Oracle Linux Server"
VERSION="8.7"
ID="ol"
ID_LIKE="fedora"
VARIANT="Server"
VARIANT_ID="server"
VERSION_ID="8.7"
PLATFORM_ID="platform:el8"
PRETTY_NAME="Oracle Linux Server 8.7"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:oracle:linux:8:7:server"
HOME_URL="https://linux.oracle.com/"
BUG_REPORT_URL="https://bugzilla.oracle.com/"
ORACLE_BUGZILLA_PRODUCT="Oracle Linux 8"
ORACLE_BUGZILLA_PRODUCT_VERSION=8.7
ORACLE_SUPPORT_PRODUCT="Oracle Linux"
ORACLE_SUPPORT_PRODUCT_VERSION=8.7
Think you're right, could be that I was using an old cached local image. Since https://github.com/docker-library/mysql/pull/867 the default for mysql:8 should be Oracle based. Anyways I think that this line needs to be changed to mysql:8-debian, otherwise the apt-get commands would fail which come afterwards.
After clearing the local mysql image, I now get
docker build --no-cache -t tmp .
[+] Building 75.4s (6/7)
=> [internal] load build definition from Dockerfile 0.1s
=> => transferring dockerfile: 334B 0.0s
=> [internal] load .dockerignore 0.1s
=> => transferring context: 2B 0.0s
=> [internal] load metadata for docker.io/library/mysql:8 3.2s
=> [auth] library/mysql:pull token for registry-1.docker.io 0.0s
=> [1/3] FROM docker.io/library/mysql:8@sha256:a43f6e7e7f3a5e5b90f857fbed4e3103ece771b19f0f75880f767cf66bbb6577 71.2s
=> => resolve docker.io/library/mysql:8@sha256:a43f6e7e7f3a5e5b90f857fbed4e3103ece771b19f0f75880f767cf66bbb6577 0.0s
=> => sha256:a43f6e7e7f3a5e5b90f857fbed4e3103ece771b19f0f75880f767cf66bbb6577 549B / 549B 0.0s
=> => sha256:328ba678bf27575937f8b9dfbf5b5f39b21941af068f8e5960de8131e289da85 44.56MB / 44.56MB 52.2s
=> => sha256:dd7054d6d0c7c57672cd9e48e8a92eda15a4f0ae24dc78413fdce3fce3064a77 982.82kB / 982.82kB 1.4s
=> => sha256:b45a7c3e6fb15526e8bf62ebb940cd460617e36f46155b8514fd9c9388231817 2.62kB / 2.62kB 0.0s
=> => sha256:8189e588b0e8fcc95b0d764d6f7bdb55b5b41e9249157177d73781058f603ca9 7.46kB / 7.46kB 0.0s
=> => sha256:f3f5ff008d73bef1d4c8e1a4c73a7efc7697e8087a950065fb369c83a03df08d 886B / 886B 0.6s
=> => sha256:70b5d4e8750e78990227fa3f3df12b6ccdf3b2486b4248677b7959dd95c0e77b 4.61MB / 4.61MB 5.1s
=> => sha256:cdc4a7b43bdd822158ae54cac5da309097088de0253879cbb07e31829d8f4561 2.63kB / 2.63kB 1.6s
=> => sha256:a0608f8959e036b9e5f55227da2fac404f45e153119063fd042cba4cdcdc9e6c 335B / 335B 1.7s
=> => sha256:5823e721608fd3d82b87e136e4cb898d8ffbbf25cedb6dcd2a22c38fe25e038d 58.59MB / 58.59MB 66.3s
=> => sha256:a564ada930a970424e6b25a29d9d4f706d15f9e6401c21bcef3e841853f7527e 315B / 315B 5.3s
=> => sha256:539565d00e89aa08d29023b1284734fea67d9ff99366188c4ff29d0da6d59187 56.56MB / 56.56MB 68.4s
=> => extracting sha256:328ba678bf27575937f8b9dfbf5b5f39b21941af068f8e5960de8131e289da85 0.6s
=> => sha256:a11a06843fd5b834a3c6eb03387de3fcac84eb24f940ed1271579d2d76f137e6 5.39kB / 5.39kB 52.7s
=> => sha256:92f6d4aa041d96e3ebda9dfafe42be4f7eed49456ba2c492adeffe85f10aad06 121B / 121B 52.9s
=> => extracting sha256:f3f5ff008d73bef1d4c8e1a4c73a7efc7697e8087a950065fb369c83a03df08d 0.0s
=> => extracting sha256:dd7054d6d0c7c57672cd9e48e8a92eda15a4f0ae24dc78413fdce3fce3064a77 0.0s
=> => extracting sha256:70b5d4e8750e78990227fa3f3df12b6ccdf3b2486b4248677b7959dd95c0e77b 0.1s
=> => extracting sha256:cdc4a7b43bdd822158ae54cac5da309097088de0253879cbb07e31829d8f4561 0.0s
=> => extracting sha256:a0608f8959e036b9e5f55227da2fac404f45e153119063fd042cba4cdcdc9e6c 0.0s
=> => extracting sha256:5823e721608fd3d82b87e136e4cb898d8ffbbf25cedb6dcd2a22c38fe25e038d 0.7s
=> => extracting sha256:a564ada930a970424e6b25a29d9d4f706d15f9e6401c21bcef3e841853f7527e 0.0s
=> => extracting sha256:539565d00e89aa08d29023b1284734fea67d9ff99366188c4ff29d0da6d59187 1.6s
=> => extracting sha256:a11a06843fd5b834a3c6eb03387de3fcac84eb24f940ed1271579d2d76f137e6 0.0s
=> => extracting sha256:92f6d4aa041d96e3ebda9dfafe42be4f7eed49456ba2c492adeffe85f10aad06 0.0s
=> ERROR [2/3] RUN apt-get update; 0.8s
------
> [2/3] RUN apt-get update;:
#6 0.372 /bin/sh: apt-get: command not found
After changing the initial line to FROM mysql:8-debian, everything works fine as expected:
docker build --no-cache -t tmp .
[+] Building 131.7s (7/7) FINISHED
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 341B 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [internal] load metadata for docker.io/library/mysql:8-debian 1.7s
=> [1/3] FROM docker.io/library/mysql:8-debian@sha256:4afd713ff95370962e757fc4f844f0d058815bc46cd299af21ad75b13 81.9s
=> => resolve docker.io/library/mysql:8-debian@sha256:4afd713ff95370962e757fc4f844f0d058815bc46cd299af21ad75b139 0.0s
=> => sha256:c2c3e5b6ace1821d80964d3f282745eed5bad22916ce83ef175a621385970ef1 7.13kB / 7.13kB 0.0s
=> => sha256:26c5c85e47da3022f1bdb9a112103646c5c29517d757e95426f16e4bd9533405 31.42MB / 31.42MB 25.2s
=> => sha256:4a04d5366306e8a589995f9f73ab93e6891f61c650a23925fb5b7390b6064595 1.73kB / 1.73kB 0.5s
=> => sha256:4afd713ff95370962e757fc4f844f0d058815bc46cd299af21ad75b139cf85ca 320B / 320B 0.0s
=> => sha256:873c1ad5d797e4dc738725637674e35924b996b5277fd56f6a8cc21f97baa492 2.83kB / 2.83kB 0.0s
=> => sha256:2ba5474d63b96ac334caf465b6aa1a5de64b2013b2d04a1bfebfafff8f91fc38 4.42MB / 4.42MB 2.0s
=> => sha256:5c021e7c8f4a7a4ce5520958fdb931906c4e230b830ed9b727f6cfdca9fb5869 1.47MB / 1.47MB 2.6s
=> => sha256:8d3a9a62a81ba7372c6da71311f49a2bbdf341b2df76733730983af435b5103e 149B / 149B 2.2s
=> => sha256:f02df4487ae5565f727156b1002cf5d23384f0b11f48e41459c11560fd112a5c 12.66MB / 12.66MB 13.8s
=> => sha256:3f9945ed239183eb77212dda7cc43cbcd8e45243e6170f8f35c607da06f841f7 2.55kB / 2.55kB 2.9s
=> => sha256:607a3474cf9a698879bb741d95769e0075a997044ecdb48ee6ac12174a5994b8 255B / 255B 3.0s
=> => sha256:f69daa87368509add640be8a19de4fc8547f1678d1b7fae1d621a2607284258b 129.74MB / 129.74MB 79.0s
=> => sha256:8d9c0ae553167197730967bc96f9a9c7db7f447623281c5c5d8f8b48416ca363 842B / 842B 14.0s
=> => sha256:13794956e0b8fcfcd5af1b5df304f802b59e2b5e8d4bf2f18bf234937308b4b5 5.39kB / 5.39kB 14.5s
=> => sha256:514db4040252999ad0d10116304fa48ddda4eb6c6c9867fb3bc51e839faa135b 120B / 120B 14.7s
=> => extracting sha256:26c5c85e47da3022f1bdb9a112103646c5c29517d757e95426f16e4bd9533405 0.5s
=> => extracting sha256:4a04d5366306e8a589995f9f73ab93e6891f61c650a23925fb5b7390b6064595 0.0s
=> => extracting sha256:2ba5474d63b96ac334caf465b6aa1a5de64b2013b2d04a1bfebfafff8f91fc38 0.1s
=> => extracting sha256:5c021e7c8f4a7a4ce5520958fdb931906c4e230b830ed9b727f6cfdca9fb5869 0.0s
=> => extracting sha256:8d3a9a62a81ba7372c6da71311f49a2bbdf341b2df76733730983af435b5103e 0.0s
=> => extracting sha256:f02df4487ae5565f727156b1002cf5d23384f0b11f48e41459c11560fd112a5c 0.3s
=> => extracting sha256:3f9945ed239183eb77212dda7cc43cbcd8e45243e6170f8f35c607da06f841f7 0.0s
=> => extracting sha256:607a3474cf9a698879bb741d95769e0075a997044ecdb48ee6ac12174a5994b8 0.0s
=> => extracting sha256:f69daa87368509add640be8a19de4fc8547f1678d1b7fae1d621a2607284258b 1.7s
=> => extracting sha256:8d9c0ae553167197730967bc96f9a9c7db7f447623281c5c5d8f8b48416ca363 0.0s
=> => extracting sha256:13794956e0b8fcfcd5af1b5df304f802b59e2b5e8d4bf2f18bf234937308b4b5 0.0s
=> => extracting sha256:514db4040252999ad0d10116304fa48ddda4eb6c6c9867fb3bc51e839faa135b 0.0s
=> [2/3] RUN apt-get update; 7.6s
=> [3/3] RUN apt-get install -y cron; 39.9s
=> exporting to image 0.4s
=> => exporting layers 0.3s
=> => writing image sha256:f956853da0deb35d74b8e9ee9572367f1a2ac72b98a3fa77c933aeb124b27868 0.0s
=> => naming to docker.io/library/tmp