我将我的开发项目作为docker image运行。我测试像;
#docker-compose up
我在本地编辑了一个文件。但是当我再次运行#docker-compose时,我看不到我的变化。我需要运行什么命令?
我的docker-compose.yml
version: '2'
services:
app:
image: lobdocker/eps-portal:latest
volumes:
- /var/www/storage
env_file: '.env'
working_dir: /app
ports:
- 8089:80
答案 0 :(得分:1)
Docker撰写将始终在您指定图像时查找图像。
使用build属性指向一个本地文件夹,您可以在升级之前构建该文件夹。
version: '2'
services:
app:
build: mydir/
image: lobdocker/eps-portal:latest
volumes:
- /var/www/storage
env_file: '.env'
working_dir: /app
ports:
- 8089:80
答案 1 :(得分:0)
在docker-compose之前,你必须再次构建docker镜像。这样的变化就会反映出来。虽然你已经建立了图像,但它不会花费太多时间。所以评论是
$ docker-compose build
然后
$ docker-compose up
注意: docker-compose up -d 将在后台运行
答案 2 :(得分:0)
如果您想要反映您的更改,您需要先commit
图像,
这是命令
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
要从dockerfile提交更改,您必须使用--change
选项,您可以获得更多信息here
要在容器内部更改代码,您可以使用docker exec
命令来获取控制台访问权限,并且在容器被销毁之前,您所做的任何更改都将是他们的。