简体   繁体   English

Spring Cloud Dataflow Local Using dockerized Task

[英]Spring Cloud Dataflow Local Using dockerized Task

Im using de docker-compose provided by Pivotal on their web and, when try to launch the a task using the Docker version of timestamp, the log show this message:我在他们的 web 上使用 Pivotal 提供的 de docker-compose,当尝试使用时间戳的 Docker 版本启动任务时,日志显示以下消息:

dataflow-server    | 2020-06-15 07:48:51.867  INFO 1 --- [io-9393-exec-10] o.s.c.d.spi.local.LocalTaskLauncher      : Preparing to run an application from Docker Resource [docker:springcloudtask/timestamp-task:2.1.1.RELEASE]. This may take some time if the artifact must be downloaded from a remote host.
dataflow-server    | 2020-06-15 07:48:51.872  INFO 1 --- [io-9393-exec-10] o.s.c.d.spi.local.LocalTaskLauncher      : Command to be executed: docker run -e SPRING_APPLICATION_JSON={"endpoints.jmx.unique-names":"true","endpoints.shutdown.enabled":"true","spring.datasource.username":"postgres","spring.datasource.url":"jdbc:postgresql://postgres:5432/dataflow","spring.datasource.driverClassName":"org.postgresql.Driver","server.port":"41226","spring.cloud.task.name":"TareaDocker","spring.datasource.password":"postgres","spring.jmx.default-domain":"TareaDocker-55685c2e-ad6a-4938-8f83-6708877d728c"} -p 41226:41226 springcloudtask/timestamp-task:2.1.1.RELEASE --spring.cloud.data.flow.platformname=default --spring.cloud.task.executionid=1
dataflow-server    | 2020-06-15 07:48:51.881 ERROR 1 --- [io-9393-exec-10] o.s.c.d.s.c.RestControllerAdvice         : Caught exception while handling a request
dataflow-server    |
dataflow-server    | java.lang.RuntimeException: Exception trying to launch [AppDeploymentRequest@5fb36004 commandlineArguments = list['--spring.cloud.data.flow.platformname=default', '--spring.cloud.task.executionid=1'], deploymentProperties = map[[empty]], definition = [AppDefinition@27fe9390 name = 'TareaDocker', properties = map['spring.datasource.username' -> 'postgres', 'spring.cloud.task.name' -> 'TareaDocker', 'spring.datasource.url' -> 'jdbc:postgresql://postgres:5432/dataflow', 'spring.datasource.driverClassName' -> 'org.postgresql.Driver', 'spring.datasource.password' -> 'postgres']], resource = Docker Resource [docker:springcloudtask/timestamp-task:2.1.1.RELEASE]]
dataflow-server    |    at org.springframework.cloud.deployer.spi.local.LocalTaskLauncher.launch(LocalTaskLauncher.java:126)
dataflow-server    |    at org.springframework.cloud.dataflow.server.service.impl.DefaultTaskExecutionService.executeTask(DefaultTaskExecutionService.java:293)
dataflow-server    |    at org.springframework.cloud.dataflow.server.service.impl.DefaultTaskExecutionService$$FastClassBySpringCGLIB$$422cda43.invoke(<generated>)
dataflow-server    |    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
dataflow-server    |    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:771)
dataflow-server    |    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
dataflow-server    |    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749)
dataflow-server    |    at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:366)
dataflow-server    |    at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:118)
dataflow-server    |    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
dataflow-server    |    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749)
dataflow-server    |    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:691)
dataflow-server    |    at org.springframework.cloud.dataflow.server.service.impl.DefaultTaskExecutionService$$EnhancerBySpringCGLIB$$4c40935a.executeTask(<generated>)
dataflow-server    |    at org.springframework.cloud.dataflow.server.controller.TaskExecutionController.launch(TaskExecutionController.java:172)
dataflow-server    |    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
dataflow-server    |    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
dataflow-server    |    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
dataflow-server    |    at java.lang.reflect.Method.invoke(Method.java:498)
dataflow-server    |    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190)
dataflow-server    |    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)
dataflow-server    |    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:105)
dataflow-server    |    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:879)
dataflow-server    |    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:793)
dataflow-server    |    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
dataflow-server    |    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)
dataflow-server    |    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
dataflow-server    |    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
dataflow-server    |    at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
dataflow-server    |    at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
dataflow-server    |    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
dataflow-server    |    at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
dataflow-server    |    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
dataflow-server    |    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
dataflow-server    |    at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
dataflow-server    |    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
dataflow-server    |    at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
dataflow-server    |    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
dataflow-server    |    at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:109)
dataflow-server    |    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
dataflow-server    |    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
dataflow-server    |    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
dataflow-server    |    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
dataflow-server    |    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
dataflow-server    |    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
dataflow-server    |    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
dataflow-server    |    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
dataflow-server    |    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
dataflow-server    |    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
dataflow-server    |    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
dataflow-server    |    at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:373)
dataflow-server    |    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
dataflow-server    |    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
dataflow-server    |    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1590)
dataflow-server    |    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
dataflow-server    |    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
dataflow-server    |    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
dataflow-server    |    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
dataflow-server    |    at java.lang.Thread.run(Thread.java:748)
dataflow-server    | Caused by: java.io.IOException: Cannot run program "docker" (in directory "/tmp/88265136092561/TareaDocker-55685c2e-ad6a-4938-8f83-6708877d728c"): error=2, No such file or directory
dataflow-server    |    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
dataflow-server    |    at org.springframework.cloud.deployer.spi.local.LocalTaskLauncher$TaskInstance.start(LocalTaskLauncher.java:340)
dataflow-server    |    at org.springframework.cloud.deployer.spi.local.LocalTaskLauncher$TaskInstance.access$200(LocalTaskLauncher.java:244)
dataflow-server    |    at org.springframework.cloud.deployer.spi.local.LocalTaskLauncher.launch(LocalTaskLauncher.java:119)
dataflow-server    |    ... 70 common frames omitted
dataflow-server    | Caused by: java.io.IOException: error=2, No such file or directory
dataflow-server    |    at java.lang.UNIXProcess.forkAndExec(Native Method)
dataflow-server    |    at java.lang.UNIXProcess.<init>(UNIXProcess.java:247)
dataflow-server    |    at java.lang.ProcessImpl.start(ProcessImpl.java:134)
dataflow-server    |    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
dataflow-server    |    ... 73 common frames omitted
dataflow-server    |

I've accesed to CLI and I cant find docker.我已访问 CLI,但找不到 docker。 I install Docker into the image bud, when re-launch the log files show that:我将 Docker 安装到图像芽中,重新启动时日志文件显示:

docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.

And I cant launch the Docker Daemon because when I try as root the system said I must be root:而且我无法启动 Docker 守护进程,因为当我以 root 身份尝试时,系统说我必须是 root:

root@5e1fc09ff833:/var/log# systemctl enable dockerd
bash: systemctl: command not found
root@5e1fc09ff833:/tmp/104228715709066/TaskDocker-c7e7a8ec-5d1e-4b23-97d2-5f56114102fe# dockerd
....
**failed to start daemon: Error initializing network controller: error obtaining controller instance: failed to create NAT chain DOCKER: iptables failed: iptables -t nat -N DOCKER: iptables v1.6.1: can't initialize iptables table `nat': Permission denied (you must be root)
Perhaps iptables or your kernel needs to be upgraded.
 (exit status 3)**

Is it possible to launch a docker task with Spring Cloud Dataflow in Local Mode?是否可以在本地模式下使用 Spring 云数据流启动 docker 任务?

Thanks谢谢

As we already discussed in the Gitter , there's currently temporary support for Docker images on the Local deployment, and that is available in SCDF 2.6.x release line.正如我们已经在Gitter中讨论过的,目前在本地部署中暂时支持 Docker 映像,这在 SCDF 2.6.x 发布行中可用。 We recently released 2.6 M1, too.我们最近也发布了 2.6 M1。

However, a more robust solution is underway, and you can track the progress at spring-cloud/spring-cloud-deployer-local#185 .然而,一个更强大的解决方案正在进行中,您可以在spring-cloud/spring-cloud-deployer-local#185跟踪进度。

ps: going forward, it'd be great if you don't duplicate post the same question in multiple forums. ps:今后,如果您不在多个论坛重复发布相同的问题,那就太好了。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Spring Cloud DataFlow 在 AWS S3 存储桶源中的新文件后使用启动任务 - Spring Cloud DataFlow using launch task after new file in AWS S3 Bucket source Spring Cloud DataFlow多次运行组合任务 - Spring Cloud DataFlow run Composed Task multiple times Spring Cloud DataFlow组成的任务无法启动 - Spring Cloud DataFlow Composed Task doesn't start 在数据流服务器中运行时出现spring cloud task taskLifecycleListener错误 - spring cloud task taskLifecycleListener error when running in dataflow server 组成的任务运行器在Spring Cloud Dataflow Kubernetes服务器中失败 - Composed task runner failing in spring cloud dataflow kubernetes server Spring Cloud Dataflow Local Server是否需要连接Zookeeper? - Does Spring Cloud Dataflow Local Server need to connect zookeeper? 升级到Spring Cloud Dataflow任务的Spring Boot 2.0后无法反序列化执行上下文 - Unable to deserialize the execution context after upgrading to spring boot 2.0 for a spring cloud dataflow task Spring Cloud DataFlow自动运行 - Spring Cloud DataFlow automated run 如何在 Spring Cloud Dataflow “Cloudfoundry”服务器启动时引用本地 Kafka 和 Zookeeper 配置 - How to reference local Kafka and Zookeeper config on Spring Cloud Dataflow “Cloudfoundry” server start Spring Cloud DataFlow Local-Server 1.2.2无法在Windows 10上启动 - Spring Cloud DataFlow Local-Server 1.2.2 fails to startup on Windows 10
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM