我用Docker做一个Symfony项目。在开发中,我将源文件夹挂载在Nginx和PHP-FPM容器中。但是对于生产,我想把代码放在PHP-FPM容器中来做一个app容器,并与Nginx容器共享代码。
在我的Dockerfile中,我使用VOLUME /var/www/html
,但是如何允许nginx容器访问此卷(在docker-compose文件中)?
在v3之前,我知道有一个volumes_from
,但现在不行了。
我想将代码放在容器中,比如说这里(https://docs.docker.com/compose/production/)
删除应用程序代码的任何卷绑定,以便代码保留在容器内并且无法从外部更改
非常感谢你的帮助
答案 0 :(得分:0)
最后,我们可以使用命名卷来执行此操作,从Dockerfile中删除VOLUME
,然后只定义名称卷,并获取第一个容器的值。
version: '3'
services:
nginx:
build: ./docker/nginx
volumes:
- app_data:/var/www/html:ro
depends_on:
- app
app:
build: ./
volumes:
- app_data:/var/www/html:rw
networks:
- default
volumes:
app_data:
driver: local