Amazon Linux 2 in a Docker missing hostname command

0

We're developing an app running in a Docker container: on-premises, so this question is purely about Amazon Linux 2 and has nothing to do with AWS.

I'm migrating the image from the one based on centos:7 to amazoncorretto:17, based on amazonlinux:2. Surprisingly, hostname -f, which is used to get an FQDN inside a container, is failing because Amazon Linux 2 doesn't have hostname.

We do need the host FQDN, and it gets propagated to containers either via host networking or via Docker's Swarm --hostname {{.Node.Hostname}}, etc.

I have two questions:

  1. How do I get an FQDN without hostname?
  2. Why did Amazon Linux 2 remove it? Even Alpine has it. Would it make sense to put it back?
profile picture
DK
asked 2 years ago678 views
1 Answer
0
Accepted Answer

Hi,

You can get the hostname command using yum

yum install hostname

Another alternative would be to build your own customized image from amazoncorretto:17 with hostname preinstalled so as to avoid the need for any install during runtime.

--Syd

profile picture
Syd
answered 2 years ago
  • Yes, this seems to be the easiest fix.

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions