在gitlab runner中使用docker映像执行shell脚本失败

在gitlab runner中使用docker映像执行shell脚本失败,docker,gitlab,gitlab-ci,aws-fargate,Docker,Gitlab,Gitlab Ci,Aws Fargate,我正在跟踪一个关于将docker图像从GitLab推送到AWS Fargate的事件。在某些情况下,会从gitlab-ci.yml调用一个shell脚本,以使用aws cli登录 我一直在试图解决这个问题,在此过程中,我创建了一个非常小的.gitlab ci.yml来重现这个问题: image: docker:latest stages: - test build_test: stage: test image: name: docker:latest services

我正在跟踪一个关于将docker图像从GitLab推送到AWS Fargate的事件。在某些情况下,会从gitlab-ci.yml调用一个shell脚本,以使用aws cli登录

我一直在试图解决这个问题,在此过程中,我创建了一个非常小的.gitlab ci.yml来重现这个问题:

image: docker:latest

stages:
- test

build_test:
  stage: test
  image: 
    name: docker:latest
  services:
    - docker:dind
  environment:
    name: production
  script:
    - source script/deploy.sh
shell脚本(script/deploy.sh)为:

这将在GitLab上提供以下输出:

[...]
Running on runner-fa6cab46-project-11081405-concurrent-0 via runner-fa6cab46-srm-1551436016-4b73cd2c...
Cloning repository...
Cloning into '/builds/test-repo'...
Checking out 21d6f4dd as master...
Skipping Git submodules setup
$ source script/deploy.sh
/bin/sh: script/deploy.sh: line 2: 
: not found
ERROR: Job failed: exit code 127

根据Docker最新或dind图像中可能没有shell或bash,但我如何解决这个问题?我使用的是公共gitlab Runner。

您可以尝试使用不同的映像(例如python),您是否在Windows主机上?脚本有Windows行结尾吗?@DavidMaze啊!我觉得很傻。事实证明,Windows行结尾确实是个问题。谢谢如果你再加一个答案,我会接受的。
[...]
Running on runner-fa6cab46-project-11081405-concurrent-0 via runner-fa6cab46-srm-1551436016-4b73cd2c...
Cloning repository...
Cloning into '/builds/test-repo'...
Checking out 21d6f4dd as master...
Skipping Git submodules setup
$ source script/deploy.sh
/bin/sh: script/deploy.sh: line 2: 
: not found
ERROR: Job failed: exit code 127