簡體   English   中英

Dockerfile創建映像以用作jenkins中的容器從屬

[英]Dockerfile to create an image to be used as an container slave in jenkins

我正在嘗試在Jenkins中使用節點從屬容器在其上運行npm指令。 因此,我正在創建一個Dockerfile以使用ssh和nodejs獲得有效的映像。 執行程序運行良好,但是當我使用npm時,它說它不知道該命令。

當(在構建dockerfile之后)我執行docker exec -it af5451297d85 bash,然后在容器內,我嘗試執行npm --v時,會發生相同的問題。

# This Dockerfile is used to build an image containing an node jenkins slave

FROM node:9.0
MAINTAINER Estefania Castro <estefania.castro@luceit.es>

# Upgrade and Install packages
RUN apt-get update && apt-get -y upgrade && apt-get install -y git openssh-server 

# Install NGINX to test.
RUN apt-get install nginx -y

# Prepare container for ssh
RUN mkdir /var/run/sshd && adduser --quiet jenkins && echo "jenkins:jenkins" | chpasswd

RUN npm install

ENV CI=true
EXPOSE 22

CMD ["/usr/sbin/sshd", "-D"]

我想運行npm指令,例如npm install,npm publish等,以便在jenkinsfile中管理我的項目。 有人可以幫忙嗎?

謝謝

我已經解決了問題(兩周后哈哈)。

FROM jenkins/ssh-slave

# Install selected extensions and other stuff
RUN apt-get update && apt-get -y --no-install-recommends install && apt-get clean
RUN apt-get install -y curl 

# Install nodejs    
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash -
RUN apt-get install -y nodejs && apt-get install -y nginx   

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM