热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何在gitlab-ci-runner-docker中具有docker和npm

如何解决《如何在gitlab-ci-runner-docker中具有docker和npm》经验,为你挑选了1个好方法。

我正在使用gitlab-ci docker:dind作为服务。

问题

我正在尝试在Gitlab-CI中运行,npm run build然后运行docker build

我可以通过以下方式在docker中使用docker进行构建:

这是我的跑步者config.toml

$ cat /etc/gitlab-runner/config.toml 
cOncurrent= 4
check_interval = 0

[[runners]]
  name = "developers_gitlab_school-gitlab-runner-docker"
  url = "https://school.domain.com"
  token = "cd09f40c6a4....a44751fec795e35"
  executor = "docker"
  builds_dir = "/mnt/mesos/sandbox/builds"
  cache_dir = "/mnt/mesos/sandbox/cache"
  [runners.docker]
    tls_verify = false
    image = "docker:latest"
    privileged = true
    disable_cache = false
    volumes = ["/cache"]
    shm_size = 0
  [runners.cache]

这是一个例子 .gitlab-ci.yml

image: docker:latest
# image: mcasimir/dind-node-build-runner:latest

variables:
  DOCKER_DRIVER: overlay2

services:
  - docker:dind

before_script:
  - docker info
  - docker --version
  - docker login -u ${REGISTRY_USERNAME} -p ${REGISTRY_PASSWORD} ${REGISTRY_URL}

stages:
  - build

# Job: Build
build_dev:
  stage: build
  script:
    - docker build -t group/mail-server/dev:${CI_JOB_ID} .
  only:
    - dev
  tags:
    - docker

build_master:
  stage: build
  script:
    - docker build -t domain/mail-server:${CI_JOB_ID} .
    - docker build -t domain/mail-server:latest .
  only:
    - master
  tags:
    - docker

    当我使用带有docker和npm的映像进行构建mcasimir / dind-node-build-runner:latest时, 我有:

    Cannot connect to the Docker daemon. Is the docker daemon running on this host?. 
    

    当我使用image时docker:latest,docker-in-docker 工作正常,但我仍然需要npm。

题:

因为的Dockerfile docker:latest不是公开的,并且由于我无法apt-get从该映像使用,所以我想知道:

如果有办法有一个可运行的图像码头工人NPM在gitlab慈?

Robert.. 5

因为它是基于高山的图像,所以您没有apt-get,而是拥有apk。因此,使用默认值docker:latest只需添加以下内容apk --update add nodejs

before_script:
    - apk --update add nodejs

您已经准备好使用dind和nodejs。



1> Robert..:

因为它是基于高山的图像,所以您没有apt-get,而是拥有apk。因此,使用默认值docker:latest只需添加以下内容apk --update add nodejs

before_script:
    - apk --update add nodejs

您已经准备好使用dind和nodejs。


推荐阅读
  • idea Terminal配置cmder(增加nodejs,git配置,jdk本地环境)
    下载安装nodejs,git,cmder(绿色版直接解压)配置nodejs环境配置缓存npmconfigsetcacheE:\JetBrains\nodejs\node_c ... [详细]
  • SpringBoot 整合 ShardingJDBC(mysql8.0)(简单入门含gitee源码)
    SpringBoot整合Sharding-JDBC(mysql-8.0)感谢​我也是从网上的资源查找后进行学习的,所以该项目仅适用与个人学习,不建议使用于生产项目。​这里感谢如下: ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 本文探讨了容器技术在安全方面面临的挑战,并提出了相应的解决方案。多租户保护、用户访问控制、中毒的镜像、验证和加密、容器守护以及容器监控都是容器技术中需要关注的安全问题。通过在虚拟机中运行容器、限制特权升级、使用受信任的镜像库、进行验证和加密、限制容器守护进程的访问以及监控容器栈,可以提高容器技术的安全性。未来,随着容器技术的发展,还需解决诸如硬件支持、软件定义基础设施集成等挑战。 ... [详细]
  • 有意向可以发简历到邮箱内推.简历直达组内Leader.能做同事的话,内推奖励全给你. ... [详细]
  • Day 5 20190120 老男孩python学习第5天 内容整理
    今天继续看MasteringPycharm的视频,一个半小时看git的教学视频:视频1小时44分钟,看了2个半小时以上https:www.youtube ... [详细]
  • 互联网世界 9 种基本的商业模式
    互联网世界9种基本的商业模式一个商业模式是运行一个公司的方法;通过该模式的运作,一个公司能维持自己的生存,就是说,能有收益。商业模式意味着一个公司是如何通过在价值链中定位自己,从而获 ... [详细]
  • 本文分析HashMap的实现原理。数据结构(散列表)HashMap是一个散列表(也叫哈希表),用来存储键值对( ... [详细]
  • 本文整理了Java中org.eclipse.jetty.io.AbstractConnection.onFillInterestedFailed()方法的一些代码示例, ... [详细]
  • 两种方式实现Flink异步IO查询Mysql
    如官网所描述的Flink支持两种方式实现异步IO查询外部系统http ... [详细]
  • 2019 年 Firebase 峰会上发布的新功能
    作者FrancisMa,HeadofProductFirebase的使命是帮助移动开发者和Web开发者迈向成功,但考虑到Firebase每个月有超过200万个活跃的应 ... [详细]
  • Docker从安装到入门到项目部署
    容器化的时代你怎么可 ... [详细]
  • jenkins中 Slave使用Docker
    原因就不说了,网上的自动化测试Docker教程太不靠谱,还是学学官网吧。目的:在现在各种虚拟化的大条件下,还在建立N个节点机 ... [详细]
  • 本文介绍了JavaScript进化到TypeScript的历史和背景,解释了TypeScript相对于JavaScript的优势和特点。作者分享了自己对TypeScript的观察和认识,并提到了在项目开发中使用TypeScript的好处。最后,作者表示对TypeScript进行尝试和探索的态度。 ... [详细]
  • 现在比较流行使用静态网站生成器来搭建网站,博客产品着陆页微信转发页面等。但每次都需要对服务器进行配置,也是一个重复但繁琐的工作。使用DockerWeb,只需5分钟就能搭建一个基于D ... [详细]
author-avatar
pea101
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有