Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

'make' command not found in docker container

I have a docker image which is running docker host with ubuntu 14.04.

In one of the containers, I am trying to run zookeeper and install librdkafka libraries(pre-requisite library) for kafka to connect to 3rd party software. I need the 'make' command to build my librdkafka libraries inside the container from where I will be running the kafka adapters/connectors.

However, interestingly I am not able to run 'make' command inside the container, it works perfectly on the docker host. When i try using

apt-get install make

I get the following message which is not making much sense to me:

root@svi-esp-service:/# apt-get install make
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package make is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'make' has no installation candidate

Can someone help me to understand why the make is not getting installed in the container and why cant i run it? I am behind time and need this command running in the container..its really annoying.

Just as a heads up, I have following in the list file:

root@svi-esp-service:/# cat /etc/apt/sources.list
deb http://http.debian.net/debian jessie main
deb http://http.debian.net/debian jessie-updates main
deb http://security.debian.org jessie/updates main

Help really appreciated!

like image 939
Omkar Avatar asked May 03 '17 14:05

Omkar


People also ask

What is make command in Docker?

Description. The docker container create (or shorthand: docker create ) command creates a new container from the specified image, without starting it. When creating a container, the docker daemon creates a writeable container layer over the specified image and prepares it for running the specified command.

How do I run a command in a Docker container?

Running Commands in an Alternate Directory in a Docker Container. To run a command in a certain directory of your container, use the --workdir flag to specify the directory: docker exec --workdir /tmp container-name pwd.

How do I stop a docker command?

To stop one or more running Docker containers, you can use the docker stop command. The syntax is simple: $ docker stop [OPTIONS] CONTAINER [CONTAINER...] You can specify one or more containers to stop.

Can we override CMD in Dockerfile?

An essential feature of a CMD command is its ability to be overridden. This allows users to execute commands through the CLI to override CMD instructions within a Dockerfile. A Docker CMD instruction can be written in both Shell and Exec forms as: Exec form: CMD [“executable”, “parameter1”, “parameter2”]


1 Answers

Update APT's package lists by running apt-get update first:

apt-get update && apt-get install make
like image 88
jwodder Avatar answered Oct 03 '22 19:10

jwodder