concourse / concourse-docker

Offical concourse/concourse Docker image.
Apache License 2.0
241 stars 152 forks source link

Multi-arch ARM docker build #68

Open charlie-haley opened 3 years ago

charlie-haley commented 3 years ago

With ARM on the rise and most major cloud providers offering ARM instances, would it be possible to get ARM docker builds?

theghost5800 commented 2 years ago

Any news about this topic? It will be great to be able to run concourse locally on mac with M1 based processor, so arm64 image will be required.

jrhode2 commented 2 years ago

Yeah, this would be great. I was trying to run concourse locally and the worker dies with this stack trace:

Attaching to concourse-docker-worker-1
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:07.417428673Z","level":"info","source":"baggageclaim","message":"baggageclaim.using-driver","data":{"driver":"overlay"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:07.443444632Z","level":"info","source":"baggageclaim","message":"baggageclaim.listening","data":{"addr":"127.0.0.1:7788"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:07.448789673Z","level":"info","source":"worker","message":"worker.garden.dns-proxy.started","data":{"session":"1.2"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:07.631670965Z","level":"error","source":"worker","message":"worker.beacon-runner.beacon.forward-conn.failed-to-dial","data":{"addr":"127.0.0.1:7777","error":"dial tcp 127.0.0.1:7777: connect: connection refused","network":"tcp","session":"4.1.4"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:08.632984215Z","level":"info","source":"worker","message":"worker.beacon-runner.beacon.forward-conn.retrying","data":{"addr":"127.0.0.1:7777","network":"tcp","session":"4.1.4"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:08.633649840Z","level":"error","source":"worker","message":"worker.beacon-runner.beacon.forward-conn.failed-to-dial","data":{"addr":"127.0.0.1:7777","error":"dial tcp 127.0.0.1:7777: connect: connection refused","network":"tcp","session":"4.1.4"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:09.633923299Z","level":"info","source":"worker","message":"worker.beacon-runner.beacon.forward-conn.retrying","data":{"addr":"127.0.0.1:7777","network":"tcp","session":"4.1.4"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:09.634709216Z","level":"error","source":"worker","message":"worker.beacon-runner.beacon.forward-conn.failed-to-dial","data":{"addr":"127.0.0.1:7777","error":"dial tcp 127.0.0.1:7777: connect: connection refused","network":"tcp","session":"4.1.4"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:10.636339300Z","level":"info","source":"worker","message":"worker.beacon-runner.beacon.forward-conn.retrying","data":{"addr":"127.0.0.1:7777","network":"tcp","session":"4.1.4"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:10.636931591Z","level":"error","source":"worker","message":"worker.beacon-runner.beacon.forward-conn.failed-to-dial","data":{"addr":"127.0.0.1:7777","error":"dial tcp 127.0.0.1:7777: connect: connection refused","network":"tcp","session":"4.1.4"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.637928092Z","level":"info","source":"worker","message":"worker.beacon-runner.beacon.forward-conn.retrying","data":{"addr":"127.0.0.1:7777","network":"tcp","session":"4.1.4"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.638873842Z","level":"error","source":"worker","message":"worker.beacon-runner.beacon.forward-conn.failed-to-dial","data":{"addr":"127.0.0.1:7777","error":"dial tcp 127.0.0.1:7777: connect: connection refused","network":"tcp","session":"4.1.4"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.815803092Z","level":"info","source":"guardian","message":"guardian.no-port-pool-state-to-recover-starting-clean","data":{}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.840670050Z","level":"info","source":"guardian","message":"guardian.metrics-notifier.starting","data":{"interval":"1m0s","session":"5"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.842755467Z","level":"info","source":"guardian","message":"guardian.start.starting","data":{"session":"6"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.846789675Z","level":"info","source":"guardian","message":"guardian.metrics-notifier.started","data":{"interval":"1m0s","session":"5","time":"2021-12-21T18:17:11.846636259Z"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.887131800Z","level":"info","source":"guardian","message":"guardian.cgroups-tmpfs-already-mounted","data":{"path":"/sys/fs/cgroup"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.888238425Z","level":"info","source":"guardian","message":"guardian.mount-cgroup.started","data":{"path":"/sys/fs/cgroup/cpuset","session":"7","subsystem":"cpuset"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.889234550Z","level":"info","source":"guardian","message":"guardian.start.completed","data":{"session":"6"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.889417675Z","level":"error","source":"guardian","message":"guardian.starting-guardian-backend","data":{"error":"bulk starter: mounting subsystem 'cpuset' in '/sys/fs/cgroup/cpuset': operation not permitted"}}
concourse-docker-worker-1  | bulk starter: mounting subsystem 'cpuset' in '/sys/fs/cgroup/cpuset': operation not permitted
concourse-docker-worker-1  | bulk starter: mounting subsystem 'cpuset' in '/sys/fs/cgroup/cpuset': operation not permitted
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.904192134Z","level":"error","source":"worker","message":"worker.garden.gdn-runner.logging-runner-exited","data":{"error":"exit status 1","session":"1.4"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.906219717Z","level":"info","source":"worker","message":"worker.garden.dns-proxy-runner.logging-runner-exited","data":{"session":"1.3"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.906832300Z","level":"error","source":"worker","message":"worker.garden-runner.logging-runner-exited","data":{"error":"Exit trace for group:\ngdn exited with error: exit status 1\ndns-proxy exited with nil\n","session":"8"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.907569134Z","level":"info","source":"worker","message":"worker.container-sweeper.sweep-cancelled-by-signal","data":{"session":"6","signal":2}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.907990425Z","level":"info","source":"worker","message":"worker.container-sweeper.logging-runner-exited","data":{"session":"13"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.908572842Z","level":"info","source":"worker","message":"worker.volume-sweeper.sweep-cancelled-by-signal","data":{"session":"7","signal":2}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.908838759Z","level":"info","source":"worker","message":"worker.volume-sweeper.logging-runner-exited","data":{"session":"14"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.909004759Z","level":"info","source":"worker","message":"worker.beacon-runner.beacon.forward-conn.cancelled","data":{"addr":"127.0.0.1:7777","network":"tcp","session":"4.1.4"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.909698217Z","level":"info","source":"worker","message":"worker.baggageclaim-runner.logging-runner-exited","data":{"session":"9"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.910312759Z","level":"info","source":"worker","message":"worker.debug-runner.logging-runner-exited","data":{"session":"10"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.910032300Z","level":"info","source":"worker","message":"worker.beacon-runner.beacon.run.context-done","data":{"command":"forward-worker","context-error":{},"session":"4.1.3"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.910962009Z","level":"info","source":"worker","message":"worker.beacon-runner.beacon.run.signal-sent","data":{"command":"forward-worker","session":"4.1.3"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.912175300Z","level":"info","source":"worker","message":"worker.healthcheck-runner.logging-runner-exited","data":{"session":"11"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.919021342Z","level":"error","source":"worker","message":"worker.beacon-runner.beacon.forward-conn.failed-to-dial","data":{"addr":"127.0.0.1:7788","error":"dial tcp 127.0.0.1:7788: connect: connection refused","network":"tcp","session":"4.1.5"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.919209134Z","level":"info","source":"worker","message":"worker.beacon-runner.beacon.forward-conn.cancelled","data":{"addr":"127.0.0.1:7788","network":"tcp","session":"4.1.5"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.923838675Z","level":"info","source":"worker","message":"worker.beacon-runner.beacon.exited","data":{"session":"4.1"}}
concourse-docker-worker-1  | {"timestamp":"2021-12-21T18:17:11.924871175Z","level":"info","source":"worker","message":"worker.beacon-runner.logging-runner-exited","data":{"session":"12"}}
concourse-docker-worker-1  | error: Exit trace for group:
concourse-docker-worker-1  | garden exited with error: Exit trace for group:
concourse-docker-worker-1  | gdn exited with error: exit status 1
concourse-docker-worker-1  | dns-proxy exited with nil
concourse-docker-worker-1  | 
concourse-docker-worker-1  | container-sweeper exited with nil
concourse-docker-worker-1  | volume-sweeper exited with nil
concourse-docker-worker-1  | baggageclaim exited with nil
concourse-docker-worker-1  | debug exited with nil
concourse-docker-worker-1  | healthcheck exited with nil
concourse-docker-worker-1  | beacon exited with nil
concourse-docker-worker-1  | 
concourse-docker-worker-1 exited with code 1
theghost5800 commented 2 years ago

@jrhode2 I had the same issue and resolution for this is to migrate Docker Desktop for Windows from Hyper-V to WSL2. This is only applicable if you use windows.

jrhode2 commented 2 years ago

@jrhode2 I had the same issue and resolution for this is to migrate Docker Desktop for Windows from Hyper-V to WSL2. This is only applicable if you use windows.

Thanks @theghost5800 but unfortunately I'm working on a mac with the Apple M1 chip.

yuzs2 commented 2 years ago

I'm working on MAC with M1, and I see the exactly same issue...

gumaerc commented 2 years ago

We ran into this recently and our devs that have Apple Silicon have successfully used this: https://hub.docker.com/r/rdclda/concourse. It would be nice to be able to use the official image though.

japtain-cack commented 1 year ago

Attempting to run this in a kubernetes cluster. Most of the nodes the lab cluster are arm64, only limited amd64 resources. Would be really nice to get multi-arch builds going. arm64 is pretty much mainstream at this point in aws/gcp/azure, so it may impact people's decision to implement Concourse CI. Not having arm64 builds and not conforming to standard TLS certs, which makes concourse incompatible with cert-manager, is seriously impacting my ability to deploy Concourse CI.