Tag: gitlab

docker化的Gitlab容器备份

我正在使用GitLab docker镜像进行集成testing,以帮助我开发服务。 理想情况下,该图像将成为GitLab的一个预configuration快照,不同的用户可以运行testing。 所以问题最终成为了,自动创buildGitLab的“快照”(可以进行版本化等)的一种好方法是什么? 我目前解决这个问题的方法是使用GitLab的内置备份工具,通过gitlab-rake gitlab:backup:create在将GitLab获取到我想要的状态后gitlab-rake gitlab:backup:create 。 然后,这让我使用GitLab的gitlab-rake gitlab:backup:restore在容器启动时将容器恢复到我期望的状态(在Dockerfile中为图像ADD备份)。 这具有相对轻量级的优点(备份大小为MB),备份可以检入版本控制。 我已经尝试使用docker export与docker import保存容器的状态,然后创build基于该状态的图像。 这具有易于自动化的优点,因为它直接受Docker支持,但考虑到目标是什么(用户和回购可用于testing),结果相当昂贵。 它还需要将图像推送到某种types的registry以便于分发。 也许这是最好的解决scheme,因为它得到了很好的支持。 我想我的问题是,接近这样的问题的Docker方法是什么?

Gitlab CI服务端口如何暴露?

我有一个.gitlab-ci.yml文件: integration_test: services: – name: registry.gitlab.com/group/project/testmailserver:1.1 alias: "mail.email" stage: test script: – ./gradlew -g /cache/.gradle –stacktrace –info integrationTest 该服务是一个完整的堆栈邮件服务器,基于这个: tvial/docker-mailserver:latest 。 本地与我的docker-composeconfiguration我能够运行它并连接到它。 version: '2' services: mail: image: registry.gitlab.com/group/project/testmailserver:1.1 hostname: mail domainname: localhost ports: – "25:25" – "143:143" – "587:587" – "993:993" environment: – ONE_DIR=1 – DMS_DEBUG=0 – MAIL_USER=invoicereader – MAIL_PASS=invoicereader cap_add: – NET_ADMIN 如果我使用docker-compose up运行它,并通过端口993上的IMAP连接到它,它工作正常。 […]

使用错误的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 […]

GitLab Dockerregistry推送失败 – 拒绝访问

我无法推送到GitLab容器registry 。 我可以使用我的用户名和个人访问令牌成功login,但是当我尝试将映像推送到registry时,出现以下错误: $ docker push registry.gitlab.com/[groupname]/dockerfiles/nodemon The push refers to a repository [registry.gitlab.com/[groupname]/dockerfiles/nodemon] 15d2ea6e1aeb: Preparing 2260f979a949: Preparing f8e848bb8c20: Preparing 740a5345706a: Preparing 5bef08742407: Preparing denied: requested access to the resource is denied 我认为这个问题不是用身份validation,因为当我运行docker login registry.gitlab.com ,我得到一个Login Succeeded消息。 哪里有问题? 我应该如何将我的图像推送到GitLab容器registry?

在Windows主机上使用Docker设置Gitlab,问题与共享文件夹

TLDR; 有谁知道如何解决“失败断言所有权”/ var / opt / gitlab / git-data“是git”错误? 背景: 我想在WindowsServer2012R2上运行Docker工具箱(版本17.04.0-ce,build 4845c56)设置Gitlab Docker 。 问题/问题 我无法使共享文件夹在服务器的D驱动器上正常工作。 我读到,我需要将文件夹添加到VirtualBox虚拟机,我通过VB GUI中的设置/共享文件夹菜单。 我为path“D:\ data \ gitlab”设置了一个名为“gitlab”的名称,然后选中自动挂载,设为永久性,并将其设置为完全访问。 我启动了docker机器,运行“docker-machine ssh $ machine-name”。 我注意到没有/ media目录,因此我在主目录(/ home / docker / gitlab)中添加了一个文件夹,然后使用以下在几个论坛中find的命令装载共享文件夹: sudo mount -t vboxsf gitlab /home/docker/gitlab 在这一点上,我可以添加文件到Windows主机目录或Docker虚拟机,它似乎工作正常,testing文件显示。 现在,当我启动Gitlab Docker镜像时,我使用以下从其文档修改的命令: docker run –detach –hostname gitlab.example.com –publish 80:80 –name gitlab –volume /home/docker/gitlab:/etc/gitlab:Z –volume /home/docker/gitlab/logs:/var/log/gitlab:Z […]

git ssh无法访问docker容器中的gitlab

我在一个容器中安装了gitlab,它已经是EXPOSE 22 。 当我ssh -vv git@host.com我不能访问SSH公钥,只有密码方法的作品。 我怎样才能获得ssh访问docker集装箱? 谢谢。

将networking存储附加到Gitlab的Docker容器(ssh问题)

我正在使用Docker在我的Web服务器上安装Gitlab 。 一切工作都像一个冠军,直到我尝试使用我的NAS作为存储文件夹。 我希望这是行得通的: 使用/ etc / fstab将NFS共享挂载到本地文件夹: 192.168.1.103:/gitlab /home/user/gitlab_data nfs rsize=8192,wsize=8192,timeo=14,intr 使用以下卷连接运行Docker: sudo docker run -v /home/user/gitlab_data:/home/git/data ….. 和应用程序的工作,直到我试图用ssh推入回购。 我得到:连接拒绝,确保你有适当的权限…. 要清楚,我不会遇到这个错误,如果我挂载本地文件夹,所以我相对有信心,这不是一个SSHconfiguration问题。 我的印象是,这个卷的方法是创build什么是function上的一个符号链接,在整个安装文件明确禁止链。 我的问题是: 如何将我的NAS上的文件夹连接到我的Gitlab Docker容器,使其不会触发此ssh / symlink失败? 我已经search了如何直接连接驱动器的文档,但没有任何事情已经完成了。 我没有办法将它绑定到NFS上,因为我读了Docker支持它们的地方。 欢呼声,贝尔

dockergitlab图像升级到8.6打破gitlab

gitlab docker镜像更新到版本8.6后: docker-compose pull docker-compose up -d gitlab返回http 500 gitlab docker image 8.6好像坏了。

如何使用Jhipster,Docker,Gitlab和Heroku来构build,testing和部署

我对Jhipster和Docker非常陌生 ,希望能够帮助您理解如何在我的Heroku实例上构build和部署应用程序的基础知识。 正如我正在和朋友一起工作的时候,我们可能需要某种集成平台,比如Gitlab,它也可以作为我们的代码版本和存储库。 以下是我们迄今所做的: 生成一个单一的应用程序,并在本地进行testing(工作正常,谢谢Jhipster使它变得如此简单)。 把它推到我们的gitlab存储库上。 在我们的应用程序的根目录创build一个Docker文件夹,并启动Docker docker compose 。 我们认为我们应该做的下一步: 使用以下示例中的.gitlab-ci.yml文件configuration构buildhttp://docs.gitlab.com/ce/ci/yaml/README.html 以某种方式将我们的Heroku云服务器链接到GitLab。 但是我仍然有一些问题: 我们应该把构builddocker镜像的任务留给gitlab吗? 我听说Docker hub和Docker Cloud很多,但我仍然没有看到我的观点,我错了吗? 我不知道如何充分利用heroku。 有关这部分的任何build议? 总结一下,我想从我的应用程序创build一个Docker镜像,将其构build并发送到我的服务器。 我想使用Docker,Gitlab和Heroku,但是我热衷于其他任何可以帮助我们实现快速,强大和高效的开发周期的主张。 谢谢,

bin // sonar-scanner:103:exec::Permission denied

在使用Gitlab-CI + Sonarqube运行testing版本时,无法执行命令bin/sonar-scanner 。 我得到错误103: exec:: Permission denied 。 它通常在shell上执行,而不是通过使用CI的构build自动化。