我想问你。为什么每次我通过 WebStorm UI 运行/调试代码时 WebStorm 都会重新创建 docker 容器? 可以关掉这个游戏吗?
我的设置: 带有 NestJS、WebStorm IDE 的 Node.js docker 容器。
日志:
节点 --require /tmp/99c34ee7-cb98-459c-80ae-2373b43a93dd/jest-intellij/lib/jest-intellij-stdin-fix.js /tmp/51fa3cc9-f4c8-4094-8194-f5b536771256/nest_app/node_modules/ jest/bin/jest.js --colors --reporters /tmp/99c34ee7-cb98-459c-80ae-2373b43a93dd/jest-intellij/lib/jest-intellij-reporter.js --verbose --testNamePattern=^AppController (e2e ) / (GET)$ --runTestsByPath /tmp/51fa3cc9-f4c8-4094-8194-f5b536771256/nest_app/test/app.e2e-spec.ts 容器nodejs_docker_test-nodejs_test-1重新创建 容器nodejs_docker_test-nodejs_test-1已重新创建 附加到nodejs_docker_test-nodejs_test-1 nodejs_docker_test-nodejs_test-1 | nodejs_docker_test-nodejs_test-1 | nodejs_docker_test-nodejs_test-1 | nodejs_docker_test-nodejs_test-1 | nodejs_docker_test-nodejs_test-1 | nodejs_docker_test-nodejs_test-1 | nodejs_docker_test-nodejs_test-1 | nodejs_docker_test-nodejs_test-1 | nodejs_docker_test-nodejs_test-1 | nodejs_docker_test-nodejs_test-1 |
我尝试在运行/调试配置中设置它,但没有结果。
编辑:
我理解这种行为的原因。这主要是为了禁止运行之间的任何状态持久性,并确保每次运行/调试都有一个干净的状态,从而减少意外的副作用。但有时关闭此行为会派上用场,例如,当容器重新创建需要相当长的时间时。 或者当(这更相关)我需要更改底层容器中的某些内容并在更改后立即运行测试(用于立即反馈循环)时。
根据 JetBrains 支持提供的信息,目前似乎无法禁用容器重新创建。不幸的是,在容器化环境中工作/调试时,这可能会导致明显的性能问题。作为解决方案,我们创建了功能请求票来解决此问题。如果您想支持此请求,请考虑通过以下链接投票:https://youtrack.jetbrains.com/issue/WEB-64513/Node-docker-compose-optionally-dont-recreate-a-每次运行时容器。
谢谢你:)