I would like to make my docker containers
aware of their configuration, the same way you can get information about EC2 instances through metadata.
I can use (provided docker
is listening on port 4243
)
curl http://172.17.42.1:4243/containers/$HOSTNAME/json
to get some of its data, but would like to know if there is a better way at least the get the full ID of the container, because HOSTNAME
is actually shortened to 12 characters and docker seems to perform a "best match" on it.
Also, how can I get the external IP of the docker host (other than accessing the EC2 metadata, which is specific to AWS)
To make it simple,
To get host name,
or
or
Output can be redirected to any file & read back from application E.g.:
# hostname > /usr/src//hostname.txt
The simplest way i found is : docker inspect --format="{{.Id}}"
I've found that in 17.09 there is a simplest way to do it within docker container:
Or like it has already been told, a shorter version with
Or simply:
This will get the full container id from within a container: