无法覆盖泊坞窗文件中的文件

我使用docker组成来设置一个payara服务器,并需要覆盖domain.xml文件。 我正在通过

volumes: - './domain.xml:/opt/payara41/glassfish/domains/domain1/config/domain.xml'但是当我与docker-compose updocker-compose up它一直说它不能重命名domain.xml到域.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的自定义脚本即可。