我直接拉了个 playwright 的镜像,开放一个端口,作为执行器,自己的项目去访问这个端口
docker run -d \
-p 36100:36100 \
--name playwright-server \
harbor.nengliangtech.com/dev/playwright:v1.42.0-focal \
npx playwright@1.42.0 run-server --port 36100 --host 0.0.0.0
现在可以了
我是直接写死到代码里的,可以了,我的项目的基础镜像里面 Linux 版本太低了,重新让运维拉了个 jdk+linux 的镜像,现在可以了
我现在又搞了容器专门去执行 playwright,本地已经调试通过了
代码里加了,还是创建驱动失败
025-05-23 12:06:42.836 INFO 7 --- [ Api-test-4] c.w.t.s.impl.StartApiTestServiceImpl : 开始手动执行,HandExcute
/tmp/playwright-java-2388869297548995060/node: /lib/x86_64-linux-gnu/libm.so.6: version GLIBC_2.27' not found (required by /tmp/playwright-java-2388869297548995060/node)
GLIBC_2.28' not found (required by /tmp/playwright-java-2388869297548995060/node)
/tmp/playwright-java-2388869297548995060/node: /lib/x86_64-linux-gnu/libc.so.6: version
/tmp/playwright-java-2388869297548995060/node: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.25' not found (required by /tmp/playwright-java-2388869297548995060/node)
2025-05-23 12:06:43.570 ERROR 7 --- [ Api-test-4] c.w.t.handle.ui.AsyncExcuteHandleUi : 开始执行:
总体执行失败: Failed to create driver
2025-05-23 12:06:43.576 ERROR 7 --- [ Api-test-4] c.w.t.handle.ui.AsyncExcuteHandleUi : Test execution failed: Failed to create driver
java.lang.RuntimeException: Failed to create driver
at com.microsoft.playwright.impl.driver.Driver.createAndInstall(Driver.java:105) ~[driver-1.42.0.jar!/:1.42.0]
at com.microsoft.playwright.impl.driver.Driver.ensureDriverInstalled(Driver.java:57) ~[driver-1.42.0.jar!/:1.42.0]
at com.microsoft.playwright.impl.PlaywrightImpl.createImpl(PlaywrightImpl.java:46) ~[playwright-1.42.0.jar!/:1.42.0]
at com.microsoft.playwright.impl.PlaywrightImpl.create(PlaywrightImpl.java:36) ~[playwright-1.42.0.jar!/:1.42.0]
at com.microsoft.playwright.Playwright.create(Playwright.java:110) ~[playwright-1.42.0.jar!/:1.42.0]
at com.microsoft.playwright.Playwright.create(Playwright.java:114) ~[playwright-1.42.0.jar!/:1.42.0]
at com.wl.testtools.handle.ui.AsyncExcuteHandleUi.executeStartUi(AsyncExcuteHandleUi.java:43) ~[classes!/:0.0.1-SNAPSHOT]
at com.wl.testtools.service.impl.StartApiTestServiceImpl.startApiTest(StartApiTestServiceImpl.java:134) ~[classes!/:0.0.1-SNAPSHOT]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344) ~[spring-aop-5.3.9.jar!/:5.3.9]
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:198) ~[spring-aop-5.3.9.jar!/:5.3.9]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.3.9.jar!/:5.3.9]
at org.springframework.aop.interceptor.AsyncExecutionInterceptor.lambda$invoke$0(AsyncExecutionInterceptor.java:115) ~[spring-aop-5.3.9.jar!/:5.3.9]
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]
Caused by: java.lang.RuntimeException: Failed to install browsers, exit code: 1
at com.microsoft.playwright.impl.driver.jar.DriverJar.installBrowsers(DriverJar.java:100) ~[driver-bundle-1.42.0.jar!/:1.42.0]
at com.microsoft.playwright.impl.driver.jar.DriverJar.initialize(DriverJar.java:69) ~[driver-bundle-1.42.0.jar!/:1.42.0]
at com.microsoft.playwright.impl.driver.Driver.initialize(Driver.java:64) ~[driver-1.42.0.jar!/:1.42.0]
at com.microsoft.playwright.impl.driver.Driver.createAndInstall(Driver.java:101) ~[driver-1.42.0.jar!/:1.42.0]
... 19 common frames omitted
应该不是
我找运维把镜像下载下来了,重新打到公司仓库里了,还在试,现在镜像包 1.4g,你们的都多大
我是直接在我的测试框架上改造的,包打好了,启动不起来,感觉像是内存不够,后面再试试,原来项目 700 多 M,和 playwright 打一起就 1.4g 了