我想测试我是否正确地使用了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_x/compose/area
,因为我的目标是将它从Docker主机共享到Docker容器,并从主机内的容器写入。
如何检查卷是否已安装在容器app
内?
答案 0 :(得分:3)
您可以在容器内执行bash shell,并检查该目录是否存在于您指定的路径中。
docker exec app /bin/bash -c "[ -d '/home/profile_x/compose/area' ] && echo 'Yes'"
如果目录存在,这将输出是。
答案 1 :(得分:2)
最简单的方法是连接到docker容器。
使用:
docker ps
你得到所有正在运行的容器。
然后你必须使用:
访问容器docker exec -it <containername or containerid> bash
然后cd直到找到您的文件夹并查看是否有您的文件。
答案 2 :(得分:0)
您可以利用Google的docker container-structure-tests编写测试,以确保根据Dockerfile的规范构建映像。
更多信息here。