certificate error with alternative container engines

FYI -
I attempted “balena deploy” using the CLI and open-balena.
I’m using podman rather than Docker desktop with the “docker” command aliased to “podman”

Running “balena deploy”, I received the error:
tls: failed to verify certificate: x509: certificate signed by unknown authority

Details are below.

I spent hours verifying and re-verifying the certificate was properly installed on the local cli machine, inspected it in my Mac’s keychain, podman machine restarted, etc, to no avail. Finally I shut down podman and started Docker desktop and all worked, no certificate error. Shut down Docker, started podman, and the error returned.

Given Docker’s policy with Docker desktop, I suspect more customers will be switching to alternative (i.e. free) container machines, so balena may want to consider supporting them.

% balena deploy --debug jjbApp localhost/jjbapp:latest
[debug] new argv=[/usr/local/lib/balena-cli/bin/node,/usr/local/lib/balena-cli/bin/run,deploy,jjbApp,localhost/jjbapp:latest] length=5
[debug] Deprecation check: 6.16198 days since last npm registry query for next major version release date.
[debug] Will not query the registry again until at least 7 days have passed.
[Debug] Parsing input…
[debug] Event tracking error: Timeout awaiting ‘response’ for 0ms
[Debug] Loading project…
[Info] Creating default composition with image: “localhost/jjbapp:latest”
[Debug] Creating project…
[Info] Everything is up to date (use --build to force a rebuild)
[Info] Creating release…
[Debug] Tagging images…
[Debug] Authorizing push…
[Info] Pushing images to registry…
Retrying “registry.balena.brockman.tech/v2/dc283edb4989754ce4628b9107e18ec6:latest” after 2.0s (1 of 2) due to: Error: trying to reuse blob sha256:04f11cf5fdd8db852f2ae6ebbf3a1e269bee6f2f374ddb7ab091c259286f7896 at destination: pinging container registry registry.balena.brockman.tech: Get “https://registry.balena.brockman.tech/v2/”: tls: failed to verify certificate: x509: certificate signed by unknown authority
Retrying “registry.balena.brockman.tech/v2/dc283edb4989754ce4628b9107e18ec6:latest” after 2.8s (2 of 2) due to: Error: trying to reuse blob sha256:04f11cf5fdd8db852f2ae6ebbf3a1e269bee6f2f374ddb7ab091c259286f7896 at destination: pinging container registry registry.balena.brockman.tech: Get “https://registry.balena.brockman.tech/v2/”: tls: failed to verify certificate: x509: certificate signed by unknown authority
[Debug] Saving image registry.balena.brockman.tech/v2/dc283edb4989754ce4628b9107e18ec6
[Debug] Untagging images…
[Info] Saving release…
[Error] Deploy failed
trying to reuse blob sha256:04f11cf5fdd8db852f2ae6ebbf3a1e269bee6f2f374ddb7ab091c259286f7896 at destination: pinging container registry registry.balena.brockman.tech: Get “https://registry.balena.brockman.tech/v2/”: tls: failed to verify certificate: x509: certificate signed by unknown authority

Error: trying to reuse blob sha256:04f11cf5fdd8db852f2ae6ebbf3a1e269bee6f2f374ddb7ab091c259286f7896 at destination: pinging container registry registry.balena.brockman.tech: Get “https://registry.balena.brockman.tech/v2/”: tls: failed to verify certificate: x509: certificate signed by unknown authority
at Stream. (/usr/local/lib/balena-cli/node_modules/docker-progress/build/index.js:31:27)
at Stream.emit (node:events:513:28)
at Stream.emit (node:domain:489:12)
at drain (/usr/local/lib/balena-cli/node_modules/through/index.js:36:16)
at Stream.stream.queue.stream.push (/usr/local/lib/balena-cli/node_modules/through/index.js:45:5)
at Parser.parser.onToken (/usr/local/lib/balena-cli/node_modules/JSONStream/index.js:132:18)
at Parser.proto.write (/usr/local/lib/balena-cli/node_modules/jsonparse/jsonparse.js:135:34)
at Stream. (/usr/local/lib/balena-cli/node_modules/JSONStream/index.js:23:12)
at Stream.stream.write (/usr/local/lib/balena-cli/node_modules/through/index.js:26:11)
at IncomingMessage.ondata (node:internal/streams/readable:754:22)
at IncomingMessage.emit (node:events:513:28)
at IncomingMessage.emit (node:domain:489:12)
at addChunk (node:internal/streams/readable:315:12)
at readableAddChunk (node:internal/streams/readable:289:9)
at IncomingMessage.Readable.push (node:internal/streams/readable:228:10)
at HTTPParser.parserOnBody (node:_http_common:140:24)

For further help or support, visit: