39

I want to install netstat on my Docker container.

I looked here https://askubuntu.com/questions/813579/netstat-or-alternative-in-docker-ubuntu-server-16-04-container so I'm trying to install it like this:

apt-get install net-tools

However, I'm getting:

Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package net-tools

So how can I install netstat?

Community
  • 1
  • 1
bsky
  • 19,326
  • 49
  • 155
  • 270

2 Answers2

50

You need to run apt-get update first to download the current state of the package repositories. Docker images do not include this to save space, and because they'd likely be outdated when you use it. If you are doing this in a Dockerfile, make sure to keep it as a single RUN command so that caching of the layers doesn't cache an old version of the update command with a new package install request:

RUN apt-get update \
  && DEBIAN_FRONTEND=noninteractive apt-get install -y \
    net-tools \
  && apt-get clean \
  && rm -rf /var/lib/apt/lists/*
BMitch
  • 231,797
  • 42
  • 475
  • 450
28

netstat is provided by the net-tools package,net-tools is probably not installed by default in the Docker image for Ubuntu 16.04 to keep the image size as small as possible. Execute the following commands inside docker container:

apt update
apt install net-tools
Shahid Hussain
  • 1,599
  • 1
  • 20
  • 24