无法覆盖泊坞窗文件中的文件
问题描述:
我使用docker compose来设置payara服务器并需要覆盖domain.xml文件。我目前正在通过无法覆盖泊坞窗文件中的文件
volumes: - './domain.xml:/opt/payara41/glassfish/domains/domain1/config/domain.xml'
但是当我用docker-compose up
来编写它时,它一直说它不能将domain.xml重命名为domain.xml.bak。有什么办法我可以获得覆盖它的权限或确保重命名的作品?
答
像这样的东西应该工作:
command: sh -c 'cp /tmp/domain.xml /opt/payara41/glassfish/domains/domain1/config/domain.xml && YOUR_PREVIOUS_COMMAND'
volumes:
- ./domain.xml:/tmp/domain.xml
或修改当前command
(或CMD
),如果它是一个脚本,在前面加上副本。
编辑:这个选择是非常方便和优雅。
command: sh /run-from-compose.sh
volumes:
- ./domain.xml:/tmp/domain.xml
- ./run-from-compose.sh:/run-from-compose.sh
run-from-compose.sh:
#!/bin/sh
cp /tmp/domain.xml /opt/payara41/glassfish/domains/domain1/config/domain.xml
YOUR_PREVIOUS_COMMAND
你并不需要修改图像,只安装充当command
自定义脚本。
为什么你需要重写你明确安装的东西? – Robert
我不想装载它,我想复制它。但我似乎无法找到复制它的方法 – Wouter
为它装入一个配置文件夹会更好吗,因此它会覆盖domain.xml文件? – Wouter