我是Docker卷的新手,下一个是我的用例:
我有两个不同的容器在同一主机上运行,并且都需要从中读取/写入文件。据我了解,我应该使用docker卷,但是在尝试之前,我想确保可以从容器内部删除主机文件系统的文件(例如,使用golang应用)
答案 0 :(得分:0)
也许,您应该使用docker卷。它可以在主机和容器之间共享目录。例如,要在/ mnt中读取/写入文件,可以将/ mnt挂载到容器。
docker run -it -v /mnt:/mnt ubuntu:latest touch /mnt/hello.log
现在,/mnt/hello.log已创建。您可以在主机文件系统中编辑文件/mnt/hello.log。
然后
docker run -it -v /mnt:/mnt ubuntu:latest rm /mnt/hello.log
执行上述命令后,将从容器内部删除文件/mnt/hello.log。
实际上,您可以像下面这样删除golang中的文件:
os.Remove("/mnt/hello.log")
答案 1 :(得分:0)
使用docker exec -it container_id bash
。
这会将您带到该ID的容器中。您可以根据需要单独管理该容器中的文件。在容器中处理文件时,只需遵循一般的unix命令,即可正常工作。