了解在Docker中运行命令后执行的代码

我刚刚在Docker文档中看到了下面的脚本。

$ docker restart db db $ docker run -t -i --rm --link db:db training/webapp /bin/bash root@aed84ee21bde:/opt/webapp# cat /etc/hosts 172.17.0.7 aed84ee21bde . . . 172.17.0.9 db 

运行cammand执行后发生了什么? ,下面的部分我的意思是:

 root@aed84ee21bde:/opt/webapp# cat /etc/hosts 

有人可以一行一行地解释,我不明白。 请这对我来说真的很重要。

 docker run -t -i --rm --link db:db training/webapp /bin/bash 

该行执行从图像training/webapp创build的容器中的命令/bin/bash/bin/bash是一个交互式shell,所以执行它意味着你现在处于Docker容器的伪造机器中的shell中。 root@aed84ee21bde:/opt/webapp#是shell的提示符,表示您在当前目录/opt/webapp主机aed84ee21bde上是rootcat /etc/hosts在这里指的是它在容器外面的相同的东西,除了这里指的是容器内的/etc/hosts文件,这个文件可能与你的主系统上的文件不同。