我有一个在Docker上运行的项目,其中有Docker-compose for dev环境.
我想使用gitlab-ci-multi-runner“Docker模式”实例在GitLabCI上运行它.
这是我的.gitlab-ci.yml文件:
image: soullivaneuh/docker-bash
before_script:
- apk add --update bash curl
- curl --silent --location https://github.com/docker/compose/releases/download/1.5.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
- chmod +x /usr/local/bin/docker-compose
- ./configure
- docker-compose up -d
请注意,soullivaneuh/docker-bash图像只是安装了bash的码头图像.
docker-compose up脚本失败-d命令:
gitlab-ci-multi-runner 0.7.2 (998cf5d)
Using Docker executor with image soullivaneuh/docker-bash ...
Pulling docker image soullivaneuh/docker-bash:latest ...
Running on runner-1ee5079f-project-3-concurrent-1 via sd-59984...
Fetching changes...
Removing app/config/parameters.yml
Removing docker-compose.env
HEAD is now at 5c5e7ff remove docker service
From https://git.dummy.net/project/project
5c5e7ff..45e643d docker-ci -> origin/docker-ci
Checking out 45e643dd as docker-ci...
PrevIoUs HEAD position was 5c5e7ff... remove docker service
HEAD is now at 45e643d... Remove docker info commands
$apk add --update bash curl
fetch http://dl-4.alpinelinux.org/alpine/v3.2/main/x86_64/APKINDEX.tar.gz
OK: 10 MiB in 28 packages
$curl --silent --location https://github.com/docker/compose/releases/download/1.5.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
$chmod +x /usr/local/bin/docker-compose
$./configure
$docker-compose up -d
bash: line 30: /usr/local/bin/docker-compose: No such file or directory
ERROR: Build Failed with: exit code 1
我绝对不知道为什么这是失败的.
感谢帮助.
最佳答案
没有这样的文件或目录是误导的.我尝试使用高山linux运行动态链接的二进制文件(这似乎是您正在使用的)已经收到了很多次.
问题(据我所知)是二进制编译并与glibc相关联的,但是高山使用的是不是glibc.
您可以使用ldd /usr/local / bin / docker-compose来告诉您哪些库丢失(如果所有其他程序都失败,请运行它).
要使其正常工作,可能会更容易从python源(https://docs.docker.com/compose/install/#install-using-pip)安装,这是官方的构图(https://github.com/docker/compose/blob/master/Dockerfile.run).
或者您可以使用基于debian或其他使用glibc的其他发行版构建的映像.