我在云服务器上使用命令“docker compose up”运行一个算法。其中一个服务(productionbackend)在其容器(./logs/Log\<;UTCTIMENOW>;.txt)内的某个位置写入日志作为其执行的一部分。在
我知道我可以在服务运行时使用'docker logs'命令来检查日志,但是一旦停止使用'docker compose down',日志就会永远丢失(因为容器被破坏)。在
所以我想我想把一个卷“挂载”到我的docker-compose文件中,然后重定向它的输出日志.txt文件放到容器外部的~目录中。我的目录树如下所示:
我在docker-compose文件中尝试了各种组合,但没有成功。在
例如,添加以下内容失败。在
volumes:
- type: volume # Also tried `bind` type and other syntaxes
- ./logs:/productionbackend/logs
.
├── docker-compose.yaml #THIS IS THE DOCKER-COMPOSE FILE STARTING MY SERVICES
├── productionfrontend
│ ├── Dockerfile
│ ├── app
│ │ ├── database.py
│ │ ├── main.py
│ │ └── requirements.txt
│ └── docker-compose.yaml
└── productionbackend
├── Dockerfile
├── backend.py
├── logs
│ ├── Log_03_Jun_14.18.19_GMT.txt
├── requirements.txt
├── settings
│ └── somefile.py
........
谢谢。在
下一步:
我不知道是你的错别字还是别人的错别字,但这个语法似乎很奇怪,看official grammar
下面我举一个最简单的例子,供大家参考:
码头工人-合成.yaml:
^{pr2}$接下来是执行历史:
从上面可以看到,虽然容器mytry已经被破坏,但是我们仍然可以看到日志
my_log.txt
,它在主机上有内容hi
。你需要修改你的类似上面最小的例子,仅供参考。在相关问题 更多 >
编程相关推荐