在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任务(这相对较快,但仍然较慢)。