Tag: gitlab ci

在容器中安装Docker,供GitLab CI构build使用

我是Docker的新手,但有一个Java Web应用程序项目,我的Maven构build生成并安装Docker镜像。 即 mvn clean install 生产: REPOSITORY TAG IMAGE ID CREATED SIZE registry.gitlab.com/me/myapp 0.0.1-SNAPSHOT-dev 12d69e5ab28b 45 minutes ago 666 MB 我正在使用Spotify的Maven插件来构build这个,然后我可以使用以下方法将其部署到存储库: mvn docker:push 这很好。 但是:我使用CI的GitLab,我的.gitlab-ci.yml文件包含: image: maven:3.3.9-jdk-8 build: script: "mvn clean install && mvn docker:push" 这几乎工作,但因为Docker没有安装在我的运行构build的容器中失败: [INFO] Building image registry.gitlab.com/me/myapp Dec 31, 2016 8:30:45 PM org.apache.http.impl.execchain.RetryExec execute INFO: I/O exception (java.io.IOException) caught when processing […]

是否有可能使用Kubernetes Gitlab构build跑步者,以及如何?

我想为Gitlab上的CI选手设置Kubernetes。 我想使用Kuberntes进行持续集成并构build运行,而不是部署。 有人尝试,我怎么能做到这一点?

从docker复制到CI内部的主机

我想知道是否有可能以某种方式复制文件/文件夹从docker到主机,但复制本身是在docker执行forms。 原因是,例如: 提交文件回购 CI踢进 Docker安装依赖关系,build立网站文件 网站文件从docker复制到/ var / www / my-website(主机) 当我正在寻找一个解决scheme,我已经看到这个命令很多docker cp <containerId>:/file/path/within/container /host/path/target但是这是从HOST执行。 我想让整个过程自动化。 当然可能的解决scheme是不使用docker工具,而是直接使用SSH,这就是我现在正在做的事情,但这不是IMO的最佳select。 这里是我的.gitlab-ci.yml文件的例子,它将解释我想实现的目标。 image: ubuntu:16.04 build: stage: build script: – apt-get update – apt-get upgrade -yy – apt-get install hugo -yy # Static site generator – hugo build # Build the website – cp -R ./build/* /var/www/my-website/ # Copy to […]

使用Docker为Ci和Runners安装Gitlab CI,并在重启后使其持久化

我有一个运行Gitlab的服务器。 假设地址是https://gitlab.mydomain.com 。 现在我想要实现的是安装一个持续集成系统。 因为我正在使用Gitlab,所以我select了Gitlab CI,因为它感觉更自然。 所以我去Docker回购,我发现这个形象 。 所以我运行图像创build一个容器与以下 docker run –restart=always -d -p 9000:9000 -e GITLAB_URLS="https://gitlab.mydomain.com" anapsix/gitlab-ci 我给它一分钟启动,我现在可以通过URL http://gitlab.mydomain.com:9000访问CI。 到现在为止还挺好。 我login了CI,我受到这个消息的欢迎: Now you need Runners to process your builds. 所以我回到了Docker Hub,我find了这个其他的图片 。 显然要启动这个图像,我必须做到交互。 我按照说明,它会创buildconfiguration文件: mkdir -p /opt/gitlab-ci-runner docker run –name gitlab-ci-runner -it –rm -v /opt/gitlab-ci-runner:/home/gitlab_ci_runner/data sameersbn/gitlab-ci-runner:5.0.0-1 app:setup 交互式设置会询问我需要的正确数据: Please enter the gitlab-ci coordinator URL […]

gitlab-ci add -net = host选项给docker

我开发了一个PHP symfony项目,我使用gitlab。 我想在gitlab上构buildunit testing,为此我使用gitlab-ci.yml文件: image: php:5.6 # Select what we should cache cache: paths: – vendor/ before_script: # Install git, the php image doesn't have installed – apt-get update -yqq – apt-get install git -yqq # Install mysql driver – docker-php-ext-install pdo_mysql # Install composer – curl -sS https://getcomposer.org/installer | php # Install all project […]

在GitLab-CI运行器中挂载OpenAFS主机卷,以使其在Docker中可访问

我们在OpenAFS中build立了一个CentOS 7储存库,我们可以从我们的映像中访问安装一些应用程序。 这个过程完全是手动的,我们正在尝试使用GitLab-CI自动生成代码。 我按照设置Docker-in-Docker亚军的说明设置了跑步者 。 然后,我修改了/etc/gitlab-runner/config.toml文件来指定OpenAFS主机卷( 卷条目): concurrent = 1 check_interval = 0 [[runners]] name = "DinD builder" url = "https://gitlab.ch/ci" token = "7cf33172d567dd2504e988a78f64c3" executor = "docker" [runners.docker] tls_verify = false image = "docker:latest" privileged = true disable_cache = false volumes = ["/afs:/afs:ro", "/cache"] [runners.cache] 在Dockerfile ,我们有一个RUN命令,将AFS的repo文件复制到当前正在构build的映像中 ,所以我们可以使用yum install来安装软件: FROM gitlab-registry.ch/cc7-base MAINTAINER Somebody RUN echo […]

Gitlab CI /var/run/docker.sock:写入:损坏的pipe道

试图build立一个跑步者,并提出这个问题: Running with gitlab-ci-multi-runner 1.10.4 (b32125f) Using Docker executor with image php:5.6 … ERROR: Failed to create container volume for /builds/ppw write unix @->/var/run/docker.sock: write: broken pipe ERROR: Preparation failed: write unix @->/var/run/docker.sock: write: broken pipe Will be retried in 3s … Using Docker executor with image php:5.6 … ERROR: Failed to create container volume […]

Gitlab-ci和docker组成:握手超时

我尝试使用Gitlab和docker设置configuration项时出现了一些问题:docker-compose构build失败,并显示错误 Building web Step 1/8 : FROM python:2.7-alpine Service 'web' failed to build: Get https://registry-1.docker.io/v2/: net/http: TLS handshake timeout ERROR: Job failed: exit code 1 这是我的gitlab-runner / config.toml: concurrent = 1 check_interval = 0 [[runners]] name = "Backend-django runner" url = "http://gitlab.codewithme.today/ci" token = "4976e4153178a33029e041a0f5fe07" executor = "docker" [runners.docker] tls_verify = false image = "python:2.7-alpine" […]

“无法连接到服务器'datahost':名称或服务未知”,gaierror(-2,'名称或服务未知')

我从gitlab-ci得到这个错误。 在test阶段,我将拉下最新的docker run $LatestImage python /path/to/test.py ,并运行docker run $LatestImage python /path/to/test.py ,并将错误消息从pytds作为pytds.tds.LoginError 。 我没有在本地机器上得到这个错误,因为我在本地/etc/hosts设置了xxxx datahost /etc/hosts 。 所以我在testing命令之前添加了一个docker run -i –add-host datahost:xxxx $LatestImage cat /etc/hosts命令: docker run -i –add-host datahost:xxxx $LatestImage cat /etc/hosts我可以看到datahost已经添加到该映像。 但是,当我运行testing时,我仍然有这个错误。 所以我不知道是否还有其他的东西,对我目前在网上的研究来说,应该是一个“忘记设置主机”的问题。

使用错误的docker图像构build容器的gitlab亚军

我在虚拟机上build立了一个gitlab-ci-multi-runner。 在构build过程中,我提供了一个Docker容器,它具有所有的依赖关系。 但是当我运行它,跑步者使用一个不同的(错误的)docker图像为他的构build容器。 消息看起来像这样: 使用gitlab-ci-multi-runner 9.2.1(f0xxxx4) 在runnerVM上(f5xxxxf0) 使用Docker执行器与图像docker.com/xxx/xxx/docker-build:stable … 使用docker image sha256:fe32xxx … xxxa63c预定义容器… 拉泊坞镜像docker.com/xxx/xxx/docker-build:stable … 使用docker图像docker.com/xxx/xxx/docker-build:stable ID = sha256:9608xxx … xxxdf09 for build container … 有人能告诉我为什么跑步者使用不同的docker图像构build容器? 为什么不采取预定义的容器(因为这是正确的…) 在这里你可以看到我的gitlab-ci.yml: image: docker.com/xxx/xxx/docker-build:stable before_script: – echo "Before script" after_script: – echo "After Script" stages: – build – test – deploy build_release: stage: build script: – sudo make […]