如何测试docker卷?

如何测试docker卷?,docker,docker-compose,docker-volume,Docker,Docker Compose,Docker Volume,我想测试我的docker-compose.yml是否正确。新事物是一本书 app: image: gitlab-${smt}:5005/smt/my-app:latest container_name: app volumes: - /var/run/docker.sock:/var/run/docker.sock - $HOME/.docker:/root/.docker - /home/profile_x/compose/area:

我想测试我的docker-compose.yml是否正确。新事物是一本书

app:
    image: gitlab-${smt}:5005/smt/my-app:latest
    container_name: app
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - $HOME/.docker:/root/.docker
      - /home/profile_x/compose/area:/home/profile_x/compose/area
    environment:
      #not important for my question
    ports:
      - 80:80
    restart: always
因此,我添加了最后一个卷
/home/profile\u x/compose/area
,因为我的目标是将它从Docker主机共享到Docker容器,并从主机内的容器写入


如何检查卷是否装入容器
app

您可以在容器中执行bash shell,并检查指定路径中是否存在该目录

docker exec app /bin/bash -c "[ -d '/home/profile_x/compose/area' ] && echo 'Yes'"

如果目录存在,这将输出Yes

最简单的方法是连接到docker容器

与:

你得到了所有正在运行的容器

然后,您必须使用以下工具访问容器:

docker exec -it <containername or containerid> bash
docker exec-it bash

然后cd,直到找到您的文件夹并查看是否有您的文件。

您可以使用google的docker容器结构测试来编写测试,以确保您的映像是按照Dockerfile的规范构建的


可以找到更多信息。

哇,非常好,谢谢你的帮助。我会把这个小命令放在某个地方,因为它很有用!很高兴能帮助您,请验证答案,如果它解决了您的问题:)我支持投票,因为我可以这样做,但@kstromeiraos的答案更好:)谢谢您的帮助我是如何说这是最简单的方法:)
docker exec -it <containername or containerid> bash