我有一个在GPU上运行TensorFlow/Keras的Docker镜像。
我这样启动会话,这会打开一个Jupyter Notebook –
sudo systemctl daemon-reload sudo systemctl restart docker sudo docker run --rm --runtime=nvidia -v -it -p 8888:8888 tensorflow/ tensorflow:2.0.0a0-gpu-py3-jupyter
问题是每次我启动它时,都会启动一个新的实例,所有先前会话的工作都会丢失。每次启动时如何保持状态呢?
回答:
你可以这样启动一个容器:
sudo docker run --runtime=nvidia -it -v /homepath:/workspace -p 8888:8888 tensorflow/tensorflow:2.0.0a0-gpu-py3-jupyter
其中/homepath是你想在你的机器和Docker容器之间共享的文件夹,/workspace是容器内/homepath将被复制的路径。
然后在你断开连接后,你可以输入:
docker attach name
其中name是你可以通过输入以下命令找到的容器名称:
docker container ls