Docker container can't find Calamari

I’m trying to run a step inside a docker container, but it’s failing with the following error. Unfortunately the error doesn’t really seem to give me much information, so I’m unsure of where the issue may be.

/usr/local/bin/docker-entrypoint.sh: line 11: /home/Octopus/Tools/Calamari.linux-x64/17.0.1/Calamari: No such file or directory

I’m believe that I’m able to prove that the SSH target requirements have been met. Indeed, these are the only requirements that I have tested on other containers which I am able to successfully use.

Are there other requirements that are not so obvious from the documentation?

Here are the raw logs - ServerTasks-939886.log.txt (33.0 KB)

Thanks,
David

Hi David,

Thanks for reaching out, and sorry to hear that you’re having issues with getting your execution container deployment to work.

From your logs it looks like you’re perhaps using busybox as your base-layer image for your container. Sadly, busybox does not ship with all of the netcore prereqs required to execute Calamari inside the container.

Microsoft does supply base-layer images that have all of the necessary components, which may help easily remedy this.

I hope this helps, and please let me know if you have any further questions.

Hi Justin,

All of the prerequisites were installed, as described here, which is a link in the page you referenced.

The issue has just become apparent though. The image was built FROM bash:5.1.4, which is Alpine Linux, and the page you referenced states that Octopus doesn’t support containers running Alpine Linux.

Building FROM ubuntu:20.04 will likely work here (and does, just tested), as other images being used are built from it. The reason for using Alpine Linux was simply to try and make the image smaller than other ones (~10MB Alpine Linux vs ~75MB for Ubuntu), so it’s not too much of an issue to switch.

Thanks,
David

1 Like