Tag: gitlab ci

GitLab Runner报告失败的Docker镜像构build阶段已通过

如果我的Docker Image在GitLab Runner Pipleline / Stage内部构build失败,则该阶段被标记为传递,然后移动到下一个阶段,但它应该报告失败并停止Runner。

在gitlab ci过程中推送访问

我在我的项目中使用Gitlab CI,并且想要实现发布分支到特性分支的自动合并,所以构build环境需要编写(推送)对存储库的访问。 构build发生在Docker容器内部。 可以使用HTTP / HTTPS令牌来完成,或者只使用ssh和密钥(所以我需要在容器中安装ssh客户端)? 还是有Gitlabembedded式function? 更新:我的解决方法是使用Gitlab API和合并请求。

Gitlab CI – 离线使用docker镜像

我试图build立一个基于GitLab的CI解决scheme。 问题是我的服务器没有连接到互联网。 我连接他们更新,然后他们恢复正常的IP地址。 我想使用GitLab CI和Docker,我想知道如何准备一个可以随时使用的docker镜像(使用php,mysql),而不是在testing过程中下载的镜像。 最好的祝福 Sulian

GitlabCi使用docker和mysql服务缓慢构build

我正在使用gitlab-ci-multirunner 9.3.0和GitLab Community Edition 9.3.5 当我在我的本地虚拟环境中运行我的php-unittesting时,总testing(30)只需要大概: Time: 5 minutes, Memory: 96.00MB 在我的gitlab主机上运行相同的testing,它总共需要 Time: 41.68 minutes, Memory: 97.75MB testing需要mysql,并在每个testing上做一个数据库创build和夹具加载。 我的DockerFile: FROM tetraweb/php:5.6 # Install additional packages RUN apt-get clean && apt-get -qq update RUN apt-get -qq upgrade -y RUN apt-get install -qq -y apt-utils RUN apt-get install -qq -y mysql-client libmagickwand-dev libgeoip-dev -y –no-install-recommends RUN pecl […]

已经使用Gitlab-ci codeclimatepipe道docker容器名称

当我提交更改到我的存储库,pipe道运行和codeclimate几乎立即给了我一个错误: 来自守护进程的错误响应:冲突。 容器名称“/ runner-5ad900e2-project-242-concurrent-0-postgres-wait-for-service”已被容器“d983eecd5874987f2fc39ee7ed6c4351b08e27783b3d3060303879f7201f706a”使用。 您必须删除(或重命名)该容器才能重新使用该名称。 我试图删除我的电脑上的这个容器 dockerrm d983eecd5874987f2fc39ee7ed6c4351b08e27783b3d3060303879f7201f706a 但没有吸吮容器 我怎样才能删除容器在这里不是我的区域设置或它与我的区域docker的某种方式连接? 如果我从我的gitlab-ci.yml中删除这段代码 services: – docker:dind 比codeclimate通过pipe道,但写我这样的事情: docker run –interactive –rm –env CODECLIMATE_CODE =“$ PWD”–volume“$ PWD”:/ code –volume /var/run/docker.sock:/var/run/docker.sock –volume /tmp/cc:/tmp/cc codeclimate / codeclimate analyze -f json> codeclimate.json mkdir:无法创build目录“/ sys / fs / cgroup / name = systemd”:只读文件系统mount:挂载点/ sys / fs / cgroup / name = systemd不存在ln:无法创build符号链接'/ […]

在gitlab ci中拒绝访问资源

我正在玩gitlab持续集成的可能性,想build立和推动一个简单的docker形象。 这里是.gitlab-ci.yml文件: image: docker:latest services: – docker:dind stages: – deploy dockerhub: stage: deploy – docker build –pull -t registry.gitlab.com/yvnicolas/test-node -f Docker/Dockerfile . – docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN registry.gitlab.com – docker push registry.gitlab.com/yvnicolas/test-node 构build本身是可以的,但不能推入访问拒绝消息。 这是工作痕迹的结束 Successfully built 8b99fc09ac4c Successfully tagged registry.gitlab.com/yvnicolas/test-node:latest $ docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN registry.gitlab.com Login Succeeded $ docker push […]

与pipe道build设乳胶 – pdf错误的页面顺序

我正在使用pipe道在Gitlab中构build一个latex文档。 除了页面顺序之外的所有东西都是混合的(例如1,2,5,7,3,…)。 这是.gitlab-ci.yml的内容 compile_pdf: image: aergus/latex script: – latexmk -pdf main.tex artifacts: paths: – main.pdf tags: – docker 两个完全不同的乳胶项目产生混合PDF文件。

通过docker socket连接Gitlab和runner

机器:在Windows上的Docker工具箱 我试图让gitlab连接到一台机器上的docker中的所有gitlab容器。 我只需要gitlab在专用networking上运行。 我可以ping容器但不能连接它们 我一直在遵循以下文档:docs.gitlab .com / omnibus / docker / docs.gitlab .com / ce / ci / docker / using_docker_build.html#use-docker-socket-binding 首先我创build一个dockernetworking来链接容器docker network create –driver bridge isolated_nw 然后我用下面的命令启动我的gitlab容器: docker run –detach \ –hostname gitlab.example.com \ –env GITLAB_OMNIBUS_CONFIG="external_url 'http://192.168.99.100/'; gitlab_rails['lfs_enabled'] = true; gitlab_rails['gitlab_shell_ssh_port'] = 10022" \ –publish 443:443 –publish 80:80 –publish 10022:22 \ –name gitlab \ […]

Gitlab-ci服务configuration

我有一个在Gitlab-ci的docker runner上执行的pipe道,我面临一些问题。 我需要有一个Oracle数据库,我需要configuration它,然后我运行pipe道。 我曾经在一个shell运行器上运行我的pipe道,所以我没有任何问题运行一个容器的docker容器,所以它可以有我可以运行docker exec命令的设置脚本。 但是这里对我来说似乎更加复杂。 1)首先,我在文档中看到,存储库已转移到builds库中的每个服务。 所以我尝试了一个简单的pipe道: image: maven:3.5.0-jdk-8-alpine maven-build: stage: build services: – name: ubuntu command: ["ls", "-la", "builds/Username"] script: – echo "test" Username是builds的唯一存储库,它是空的。 我怀疑这可能是因为这条线我无法解释: *** WARNING: Service runner-4e4528ca-project-3885266-concurrent-0-ubuntu-0 probably didn't start properly. 2)假设第一个问题已经解决,我可以访问我的存储库文件,比如我的设置脚本。 我怎样才能运行它们? 有没有一种方法来模拟docker exec命令? 我应该重写入口点和命令来运行我想要的? 3)在我旧的pipe道中,我等着容器准备好这个便宜的把戏: while [ "$(docker logs oracle-test | tail -1)" != "Database ready to use. Enjoy! […]

将Docker容器从GITLAB CI推送到专用存储库

我们能够构buildDocker容器并将其推送到GITLAB CE中的私有registry。 但是由于我们的部署过程,我们希望将相同的构build也推送到另一个存储库。 但是用新的repo名称来标记并推送它会导致授权问题。 任何build议如何做到这一点?