在docker exec之后持久化gradle守护程序-it<;集装箱名称>;渐变型

在docker exec之后持久化gradle守护程序-it<;集装箱名称>;渐变型,docker,gradle,Docker,Gradle,我使用docker exec-it gradle build在docker容器中运行gradle(5.6.2/JDK 11)构建。这种方法工作得很好,但在命令完成后守护进程将被销毁。构建完成后,如何保持守护进程在容器中运行 我尝试过gradle--放弃了,但是。使用gradle无法解决这个问题。由于Docker容器停止,守护进程丢失。您应该将其放入交互式shell中: docker run --rm -it gradle:5.6.2-jdk11 bash 现在运行Gradle命令,守护进程将在

我使用
docker exec-it gradle build
在docker容器中运行gradle(5.6.2/JDK 11)构建。这种方法工作得很好,但在命令完成后守护进程将被销毁。构建完成后,如何保持守护进程在容器中运行


我尝试过gradle--放弃了,但是。

使用gradle无法解决这个问题。由于Docker容器停止,守护进程丢失。您应该将其放入交互式shell中:

docker run --rm -it gradle:5.6.2-jdk11 bash
现在运行Gradle命令,守护进程将在后续命令中重用:

root@014faa72d745:/home/gradle# gradle help
完成后,
从容器中退出

root@014faa72d745:/home/gradle# exit
docker run --rm -it --mount type=bind,src=$PWD,dst=/app -w /app gradle:5.6.2-jdk11 bash
注意:您可以使用绑定装载在容器中访问当前工作目录的文件:

root@014faa72d745:/home/gradle# exit
docker run --rm -it --mount type=bind,src=$PWD,dst=/app -w /app gradle:5.6.2-jdk11 bash

使用Gradle无法解决此问题。由于Docker容器停止,守护进程丢失。您应该将其放入交互式shell中:

docker run --rm -it gradle:5.6.2-jdk11 bash
现在运行Gradle命令,守护进程将在后续命令中重用:

root@014faa72d745:/home/gradle# gradle help
完成后,
从容器中退出

root@014faa72d745:/home/gradle# exit
docker run --rm -it --mount type=bind,src=$PWD,dst=/app -w /app gradle:5.6.2-jdk11 bash
注意:您可以使用绑定装载在容器中访问当前工作目录的文件:

root@014faa72d745:/home/gradle# exit
docker run --rm -it --mount type=bind,src=$PWD,dst=/app -w /app gradle:5.6.2-jdk11 bash

容器仍在运行。我使用docker exec运行构建。构建完成后,守护进程将死亡。如果我使用docker exec nohup gradle build运行构建,守护进程将在后台运行。但理想情况下,它应该能够在不采取此类措施的情况下继续存在。对不起,我不知道如何修复它。我个人使用了
--no daemon
选项来执行一次性的Gradle任务(这相对较快,但仍然较慢)。容器仍在运行。我使用docker exec运行构建。构建完成后,守护进程将死亡。如果我使用docker exec nohup gradle build运行构建,守护进程将在后台运行。但理想情况下,它应该能够在不采取此类措施的情况下继续存在。对不起,我不知道如何修复它。我个人使用了
--no daemon
选项来完成一次性的Gradle任务(这相对较快,但仍然较慢)。