我正在使用docker exec -it <container_name> gradle build
在docker容器中运行gradle(5.6.2 / JDK 11)构建。这种方法可以正常工作,但是在完成命令后将销毁守护进程。构建完成后,如何使守护进程在容器中运行?
我尝试过gradle --forground
,但尝试过have learned that this creates incompatible daemons and is an undesirable option。
答案 0 :(得分:0)
使用Gradle无法解决此问题。守护程序会丢失,因为Docker容器已停止。您应该改为使用交互式外壳程序:
docker run --rm -it gradle:5.6.2-jdk11 bash
现在运行Gradle命令,该守护程序将在后续命令中重用:
root@014faa72d745:/home/gradle# gradle help
完成后,从容器中exit
:
root@014faa72d745:/home/gradle# exit
注意:您可以使用绑定安装来在容器中访问当前工作目录的文件:
docker run --rm -it --mount type=bind,src=$PWD,dst=/app -w /app gradle:5.6.2-jdk11 bash