How to get into a docker container? -
i'm getting started working docker. i'm using wordpress base image , docker-compose. i'm trying ssh 1 of containers inspect files/directories created during initial build. tried run docker-compose run containername ls -la didn't anything. if did, i'd rather have console can traverse directory structure, rather run single command. right way docker?
docker attach let connect docker container, isn't same thing ssh. if container running webserver, example, docker attach connect stdout of web server process. won't give shell.
the docker exec command looking for; let run arbitrary commands inside existing container. example:
docker exec -it <mycontainer> bash of course, whatever command running must exist in container filesystem.
in above command <mycontainer> name or id of target container. doesn't matter whether or not you're using docker compose; run docker ps , use either id (a hexadecimal string displayed in first column) or name (displayed in final column). e.g., given:
$ docker ps d2d4a89aaee9 larsks/mini-httpd "mini_httpd -d /cont 7 days ago 7 days web i can run:
$ docker exec -it web ip addr 1: lo: <loopback,up,lower_up> mtu 65536 qdisc noqueue state unknown link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 18: eth0: <broadcast,up,lower_up> mtu 1500 qdisc noqueue state link/ether 02:42:ac:11:00:03 brd ff:ff:ff:ff:ff:ff inet 172.17.0.3/16 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::42:acff:fe11:3/64 scope link valid_lft forever preferred_lft forever i accomplish same thing running:
$ docker exec -it d2d4a89aaee9 ip addr similarly, start shell in container;
$ docker exec -it web sh / # echo inside container. inside container. / # exit $
Comments
Post a Comment