2

I am a newbie to spring-cloud-data-flow. I am following the documentation of Spring Cloud Data Flow (https://dataflow.spring.io/docs/installation/local/docker/). I have downloaded docker-compose.yml file and put it in D:\Dev\spring-cloud-dataflow> directory. When I try to run following commands:

    D:\Dev\spring-cloud-dataflow> set DATAFLOW_VERSION=2.1.0.RELEASE
    D:\Dev\spring-cloud-dataflow> set SKIPPER_VERSION=2.0.2.RELEASE
    D:\Dev\spring-cloud-dataflow> docker-compose up

It gaves me following error:

    ERROR: Missing mandatory value for "image" option in service "dataflow-server": DATAFLOW_VERSION is not set!

I am using Powershell, so I tried to use Set-Variable instead of set, but this gave me the same error.

    D:\Dev\spring-cloud-dataflow> Set-Variable -Name "DATAFLOW_VERSION" -Value "2.1.0.RELEASE"
    D:\Dev\spring-cloud-dataflow> Set-Variable -Name "SKIPPER_VERSION" -Value "2.0.2.RELEASE"
    D:\Dev\spring-cloud-dataflow> docker-compose up

ERROR: Missing mandatory value for "image" option in service "dataflow-server": DATAFLOW_VERSION is not set!

I tried the short handed version in the tutorial but did not worked also:

    DATAFLOW_VERSION=2.1.0.RELEASE SKIPPER_VERSION=2.0.2.RELEASE docker-compose up

I can see the variables are set:

    D:\Dev\spring-cloud-dataflow> echo $DATAFLOW_VERSION
    2.1.0.RELEASE
    D:\Dev\spring-cloud-dataflow> echo $SKIPPER_VERSION
    2.0.2.RELEASE

I could not understand why this error pops up.

3 Answers3

1

Not sure about why it doesn't resolve the variables. Maybe the resolution of the variable doesn't take place in your environment (Windows?).

For the time being, can you set the version values explicitly inside the docker compose yml file and run to see if it sets up correctly?

Ilayaperumal Gopinathan
  • 4,099
  • 1
  • 13
  • 12
  • Now, I tried to set the version values explicitly inside the docker compose yml file and I think it sets up. There are some errors like: component="discovery manager scrape" discovery=file msg="Error reading file" path=/etc/prometheus/targets.json err="unexpected end of JSON input". But mostly it works. – selins sofa Jun 10 '19 at 12:00
1

I've encountered the same issue in windows 10. Set the variables via "Edit the system environment variables" under control panel instead of using "Set" command solved the problem. May help others using windows 10.

0

@selins_sofa, The PowerShell has a peculiar way for setting environment variables:

$Env:<variable-name> = "<new-value>"

So you should set the DataFlow and Skipper versions like this:

$Env:DATAFLOW_VERSION="2.5.0.BUILD-SNAPSHOT"
$Env:SKIPPER_VERSION="2.4.0.BUILD-SNAPSHOT"
tzolov
  • 469
  • 4
  • 6