在我的远程服务器上,一些开发人员运行名为“my_account / analysis”的相同docker镜像。因此,一旦脱离了docker进程,就很难知道哪个是我自己的进程。
docker ps
的结果是这样的:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6968e76b3746 my_account/analysis "bash" 44 hours ago Up 44 hours 6023/tcp, 6073/tcp, 6800/tcp, 8118/tcp, 8888/tcp, 9050/tcp, 0.0.0.0:8887->8887/tcp modest_jones
42d970206a29 my_account/analysis "bash" 7 days ago Up 7 days 6023/tcp, 6073/tcp, 6800/tcp, 8118/tcp, 8888/tcp, 9050/tcp, 0.0.0.0:32771->8885/tcp gallant_chandrasekhar
ac9f804b7fe0 my_account/analysis "bash" 11 days ago Up 11 days 6023/tcp, 6073/tcp, 6800/tcp, 8118/tcp, 8888/tcp, 9050/tcp, 0.0.0.0:8798->8798/tcp suspicious_mayer
e8e260aab4fb my_account/analysis "bash" 12 days ago Up 12 days 6023/tcp, 6073/tcp, 6800/tcp, 8118/tcp, 8888/tcp, 9050/tcp, 0.0.0.0:32770->8885/tcp nostalgic_euler
在这种情况下,因为我记得我在2天左右运行了docker,所以我在docker attach 6968e
附上了我的容器。但是,通常我们忘记了这一点。
在有很多具有相同图像名称的容器的情况下,检测我的容器ID 的最佳做法是什么?
答案 0 :(得分:1)
简单的方法是name容器
docker run --name my-special-container my_account/analysis
docker attach my-special-container
您可以在启动时将容器ID存储在文件中
docker run --cidfile ~/my-special-container my_account/analysis
docker attach $(cat ~/my-special-container)
您可以使用object labels添加更详细的元数据,但它们不像名称easily accessible那样
docker run --label com.rkjt50r983.tag=special my_account/analysis
docker ps --filter 'label=com.rkjt50r983.tag=special'