Shopify / Shopify/toxiproxy

Container images for arm,v6 and arm,v7 are broken

Open
#580 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
12.4k
Forks
510
PR merge metrics
No merged PRs in 30d

Description

The container images with the tags 2.9.0-armv6 and 2.9.0-armv7 contain only 2 empty layers.

Running containers with these images is then of course not possible:

docker run ghcr.io/shopify/toxiproxy:2.9.0-armv7

docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "/toxiproxy": stat /toxiproxy: no such file or directory: unknown.

Additionally, the image index (tagged with 2.9.0) contains two duplicate entries for arm,v6. Instead, it should contain one for arm,v6 and one for arm,v7.

image index (sha256:b44c283298cea49e2defaba1b3028783798346f2a926684e3a345fd8441af3b8)
application/vnd.docker.distribution.manifest.list.v2+json
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
   "manifests": [
      {
         "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
         "size": 739,
         "digest": "sha256:0a8ceb5ee13febfbf2be2891eb21dd673dce236381f9cbb08c667f2ce263bf98",
         "platform": {
            "architecture": "amd64",
            "os": "linux"
         }
      },
      {
         "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
         "size": 739,
         "digest": "sha256:703202eaa8a59fb975175ab0c7796424e0a228d9121e124e4e04a476b047a5f9",
         "platform": {
            "architecture": "arm64",
            "os": "linux"
         }
      },
      {
         "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
         "size": 729,
         "digest": "sha256:b0323579448bbd31564d1b8ec463f1760d940a2f54d9a0b16aa2265119134601",
         "platform": {
            "architecture": "arm",
            "os": "linux",
            "variant": "v6"
         }
      },
      {
         "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
         "size": 729,
         "digest": "sha256:b0323579448bbd31564d1b8ec463f1760d940a2f54d9a0b16aa2265119134601",
         "platform": {
            "architecture": "arm",
            "os": "linux",
            "variant": "v6"
         }
      }
   ]
}
image manifest (sha256:b0323579448bbd31564d1b8ec463f1760d940a2f54d9a0b16aa2265119134601)
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
   "config": {
      "mediaType": "application/vnd.docker.container.image.v1+json",
      "size": 1849,
      "digest": "sha256:73b001eff8797a2b64841979ee458f4eafdf9f8158c92a76d1e4a8366c6346a8"
   },
   "layers": [
      {
         "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
         "size": 32,
         "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1"
      },
      {
         "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
         "size": 32,
         "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1"
      }
   ]
}
image config (sha256:73b001eff8797a2b64841979ee458f4eafdf9f8158c92a76d1e4a8366c6346a8)
{"architecture":"arm","config":{"ExposedPorts":{"8474/tcp":{}},"Env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin","LOG_LEVEL=info"],"Entrypoint":["/toxiproxy"],"Cmd":["-host=0.0.0.0"],"WorkingDir":"/","Labels":{"org.opencontainers.image.created":"2024-03-12T18:35:23Z","org.opencontainers.image.description":"toxiproxy","org.opencontainers.image.licenses":"MIT","org.opencontainers.image.revision":"d80b6030864e91e810c249d2b99749218c4ee714","org.opencontainers.image.source":"https://github.com/Shopify/toxiproxy","org.opencontainers.image.title":"toxiproxy","org.opencontainers.image.url":"https://github.com/Shopify/toxiproxy","org.opencontainers.image.version":"2.9.0"},"ArgsEscaped":true,"OnBuild":null},"created":"2024-03-12T18:35:25.127898758Z","history":[{"created":"2024-03-12T18:35:23.591223327Z","created_by":"EXPOSE map[8474/tcp:{}]","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2024-03-12T18:35:23.591223327Z","created_by":"ENTRYPOINT [\"/toxiproxy\"]","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2024-03-12T18:35:23.591223327Z","created_by":"CMD [\"-host=0.0.0.0\"]","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2024-03-12T18:35:23.591223327Z","created_by":"ENV LOG_LEVEL=info","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2024-03-12T18:35:23.591223327Z","created_by":"COPY toxiproxy-server-linux-* /toxiproxy # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2024-03-12T18:35:25.127898758Z","created_by":"COPY toxiproxy-cli-linux-* /toxiproxy-cli # buildkit","comment":"buildkit.dockerfile.v0"}],"os":"linux","rootfs":{"type":"layers","diff_ids":["sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef","sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef"]},"variant":"v6"}

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the failure with the 2.9.0-armv6 and 2.9.0-armv7 tags, then inspect their Docker manifests and the 2.9.0 image index. Trace the release/build configuration that publishes these images; done means both ARM tags contain runnable /toxiproxy binaries and the index has distinct armv6 and armv7 entries.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker
Domain
devops
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.