Tag: gitlab ci

Docker(GitLab CI本地亚军):“Mounts denied”

我使用GitLab CI和优秀的本地GitLab CI runner来testing阶段,然后使用docker exec方法推送它们。 我使用Golang作为我select的语言,并且根据官方build议,最近将我的$GOPATH从~/go到/go 。 但是,现在当我尝试testing我的构build时,出现以下错误消息: ERROR: Job failed (system failure): Error response from daemon: Mounts denied: The path /go/src/[redacted] is not shared from Docker -> Preferences… -> File Sharing. 将代码移回到我的主目录下的文件夹,它再次工作。 试图在消息中修复出现另一个错误: rm: cannot remove 'rm: cannot remove '/go/src/[redacted]': Read-only file system 它试图删除当前的本地工作目录(这是我的实际存储库,所以我显然不希望这样)。 什么是正确的方式来configurationDocker(或跑步者)能够在我的$GOPATH ? 谢谢你的时间。

GitLab CI – 无法login到Dockerregistry(x509)

我正在尝试使用Docker执行程序和docker-in-docker方法来设置我的GitLab CI / CD,并且遇到以下问题: 在我的.gitlab-ci.yml中,我尝试与GitLab的集成dockerregistrybuild立连接, before_script: – docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY 但是,pipe道退出时出现以下错误: Error response from daemon: Get https://my.gitlab.server:1234/v2/: x509: certificate signed by unknown authority 我能够login到registry,并从运行gitlab runner的机器上进行push / pull操作,所以我知道证书问题不在主机上。 另外,我已经尝试从docker创build一个自定义的Docker镜像构build版本:将我的证书复制到构build容器的最新版本 – 我尝试将其放入/ etc / ssl / certs和/etc/docker/certs.d/my.gitlab .server:1234 – 没有任何成功。 任何想法,我需要把我的证书或如何我可能会得到解决?

Gitlab停止CI如果Dockerized R CMD检查返回错误

如果testing阶段返回错误,如何使我的CIpipe道失败? 这是我的testing阶段: Test: stage: Test script: – docker build -t r-docker-ci-test -f test.Dockerfile . – docker run r-docker-ci-test 这是我的test.Dockerfile: FROM r-base RUN apt-get update && apt-get install -y libcurl4-openssl-dev libssl-dev libxml2-dev RUN R -e "install.packages(c('devtools', 'testthat'), dependencies=TRUE)" COPY . /usr/local/src/test WORKDIR /usr/local/src/test CMD R -e "devtools::check()" 这里是输出: R CMD check results 1 error | 2 […]

你如何configurationGitlab CIdockertesting不同的需求(语言环境,数据库等)?

我正在创build一个使用Python,Mongo和Redis的API,并且我想使用Gitlab CI。 我必须build立一个满足所有这些要求的Dockerfile吗? 或者有没有办法在.gitlab-ci.yml中写一些指令,然后在Dockerhub中调用不同的图像?

docker-in-docker(dind)服务在gitlab ci中的作用

根据官方的gitlab文档 ,在cipipe道中启用docker docker build一种方法是使用dind服务(就gitlab-ci 服务而言 )。 但是,由于在docker执行程序上运行的ci作业始终是这种情况,因此docker:latest也需要docker:latest映像。 有人可以解释: docker:dind和docker:latest之间有什么区别docker:latest图像? (最重要的): 为什么服务和docker镜像都需要(例如,如本示例中所示 ,链接到github文档中)来执行例如docker build工作,而在ci工作中? 不是docker:latest图像( 在这个工作将在其中执行 !)包含docker守护进程(我认为docker-compose也),这是我们需要的命令(例如docker build , docker push等等)? 除非我错了,否则这个问题或多或less会变成: 为什么docker客户端和docker守护进程不能驻留在同一个docker(enabled)容器中

如何将cmake集成到gitlab存储库中以实现持续集成(CI)

在GCC的Docker Image的帮助下,我能够运行C ++程序并使用Gi​​tLab CI单元进行构build和testing。 但现在我想在Docker中使用cmake而不是g ++来编译程序。 如何更改'.gitlab-ci.yml'文件以支持cmake。 当前文件:.gitlab-ci.yml image: gcc before_script: – apt-get install –yes cmake libmatio-dev libblas-dev libsqlite3-dev libcurl4-openssl-dev – apt-get install –yes libarchive-dev liblzma-dev build: script: – ./runner.sh – ./bin/hello ./runner.sh cmake -H. -Bbuild cmake –build build — -j3

当存在两个具有相同泊坞窗图像的作业时,gitlab-runner注册一个泊坞窗图像执行另一个

当.gitlab-ci.yml文件中有两个docker镜像时,我遇到了以下问题。 当有两个作业连续使用与作业testing相同的Docker镜像时:conf-layers ans build rpm。 第二个是与其他gitlab亚军,这是不是在作业中configuration执行。 当只有一个gitlab runner注册了这个项目的时候,这些工作可以正常工作。 在与另一个跑步者一起包括最后的工作之后,stream水线执行开始失败。 .gitlab-ci.yml文件: stages: – unittests – build – deploy test:conf-layers: image: name: centos6.7-compilation:latest stage: unittests only: – develop script: – cd … build:rpm: image: name: centos6.7-compilation:latest stage: build only: – develop before_script: – cd … script: – cd .. deploy:single-server: image: name: ansible:latest stage: deploy only: – […]

如何使用Kubernetes和Gitlab CI / CD在Google Cloud Platform中部署分段?

我最近和Docker , Kubernetes , Google Cloud Platform(GCP)和Gitlab CI/CD从commit到staging 。 到目前为止,我已经成功地testing , building并将映像pushing送到Container registry of Gitlab 。 我有一个小节点和docker应用程序输出'Hello world' 。 另外,我已经在Container registry of Gitlab构build了我Container registry of Gitlab 。 在这个时候,这个过程就是docker工人。 我想将我的图像从Gitlab container registry推Kubernetes engine GCP中的Kubernetes engine 。 我已经安装了kubectl和gcloud sdk 。 自动DevOps似乎很有前途,但我想实现我自己的.gitlab-ci.yml文件。 这是我的.gitlab-ci.yml下面: stages: – testing – build – staging variables: CONTAINER_TEST_IMAGE: registry.gitlab.com/surajneupane55/node-app- testing CONTAINER_RELEASE_IMAGE: registry.gitlab.com/surajneupane55/node- app-testing:latest test: […]

使用Django 2.0构buildDocker镜像失败

我目前正在用最新版本的Django构build一个docker镜像,但是在构build过程中,我得到了这个: Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-9LueOB/Django/ You are using pip version 8.1.2, however version 9.0.1 is available. You should consider upgrading via the 'pip install –upgrade pip' command. The command '/bin/sh -c INSTALL_PKGS="python-pip oracle-instantclient-tnsnames.ora afs_tools_standalone nss_wrapper openssh-clients cx_Oracle libmemcached-devel python-ldap mod_wsgi httpd MySQL-python wassh-ssm-cern wassh" && INSTALL_PKGS_BUILD="gcc python-devel zlib-devel" […]

保持构build之后运行gitlab

我有gitlab ci运行,完成与跑步者。 我可以build立一个docker镜像,执行命令等 但是,我可以保持构build运行浏览testing? 我的最终目标是运行一个Odoo实例并让用户浏览一个odoo实例。 Odoo在一个端口上运行一个networking服务器,通常是8069,但是也可以在端口80上运行odoo,也许用nginx作为反向代理。