小编Ste*_*ain的帖子

Mac上的jenkins,PATH没有设置正确,没有/ usr/local/bin

我最近使用Homebrew安装了Jenkins.我还使用Homebrew安装了Mercurial.

我可以成功克隆一个hg仓库 - 从终端.但如果我尝试在詹金斯的工作中做同样的事情,那就失败了.

所以,在工作中,我告诉Jenkins运行一个shell脚本echo $PATH.果然,路径/usr/local/bin不存在.如果我从终端执行相同的命令,它就在那里.

那么,什么是修改PATH的最佳方法,以便当我从终端回显时,Jenkins正在拉动我正在使用的相同PATH?

注意,Jenkins是从我登录进行这些测试的同一个用户帐户运行的,所以我无法理解为什么会发生这种情况.

macos homebrew launchd jenkins

33
推荐指数
2
解决办法
2万
查看次数

Docker缓存gradle依赖项

我正在尝试使用docker将我们的java web应用程序部署到aws弹性beanstalk,其想法是能够在本地运行容器以进行开发和测试,并最终使用git将其推送到生产环境.

我已经创建了一个安装了tomcat8和java8的基本映像,执行gradle构建的映像继承了这个基本映像,从而加快了构建过程.

一切都运行良好,除了使用docker构建的继承应用程序容器似乎不缓存gradle依赖项,它每次都下载它,包括gradlew.我们使用以下命令构建Web应用程序:

./gradlew war

有没有办法可以缓存文件,~/.gradle这会大大加快我的建立速度.

这不是beanstalk上的一个问题,但对于尝试在本地构建和运行的开发人员来说这是一个大问题,因为这需要花费很多时间,正如您可以想象的那样.

基本映像dockerfile:

FROM phusion/baseimage
EXPOSE 8080
RUN apt-get update
RUN add-apt-repository ppa:webupd8team/java
RUN apt-get update
RUN echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections
RUN apt-get -y install oracle-java8-installer
RUN java -version
ENV TOMCAT_VERSION 8.0.9
RUN wget --quiet --no-cookies http://archive.apache.org/dist/tomcat/tomcat-8/v${TOMCAT_VERSION}/bin/apache-tomcat-${TOMCAT_VERSION}.tar.gz -O /tmp/catalina.tar.gz
# Unpack
RUN tar xzf /tmp/catalina.tar.gz -C /opt
RUN mv /opt/apache-tomcat-${TOMCAT_VERSION} /opt/tomcat
RUN ln -s /opt/tomcat/logs /var/log/tomcat
RUN rm /tmp/catalina.tar.gz
# Remove unneeded apps
RUN rm -rf /opt/tomcat/webapps/examples
RUN …
Run Code Online (Sandbox Code Playgroud)

java docker gradlew amazon-elastic-beanstalk

29
推荐指数
3
解决办法
2万
查看次数

Jenkins用github"git clone"失败了

当我在Jenkins中构建时,它会因此错误而失败.任何的想法?

ERROR: Error cloning remote repo 'origin' : Could not clone git@github.com:test/test.git
ERROR: Cause: Error performing command: git clone --progress -o origin 

git@github.com:test/test.git /var/lib/jenkins/jobs/test/workspace
Command "git clone --progress -o origin git@github.com:test/test.git 
/var/lib/jenkins/jobs/test/workspace" returned status code 128: Initialized empty Git 
repository in /var/lib/jenkins/jobs/test/workspace/.git/

No protocol specified

(ssh-askpass:801): Gtk-WARNING **: cannot open display: :0.0
Host key verification failed.
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)

github jenkins

21
推荐指数
3
解决办法
5万
查看次数

使用docker上托管的私有注册表

我在docker容器中托管我自己的docker-registry.它是由nginx在一个单独的容器中运行来添加基本身份验证的.检查_ping路由我可以看到nginx正确路由.docker login从boot2docker(在Mac OSX上)调用时出现此错误:

FATA守护进程的错误响应:无效的注册表端点https://www.example.com:8080/v1/:获取https://www.example.com:8080/v1/_ping:x509:证书由未知签名权威.如果此私有注册表仅支持具有未知CA证书的HTTP或HTTPS,请添加--insecure-registry www.example.com:8080到守护程序的参数.对于HTTPS,如果您可以访问注册表的CA证书,则不需要该标志; 只需将CA证书放在/etc/docker/certs.d/www.example.com:8080/ca.crt

这很奇怪 - 因为它是有效的CA SSL证书.我已经尝试--insecure-registry按照这些说明添加EXTRA-ARGS:https://github.com/boot2docker/boot2docker#insecure-registry但最初"profile"文件不存在.如果我创建它,并添加

EXTRA_ARGS="--insecure-registry www.example.com:8080"
Run Code Online (Sandbox Code Playgroud)

我看不出任何进步.我想隔离这个例子,所以尝试docker login从ubuntu VM(而不是boot2docker).现在我得到一个不同的错误:

Error response from daemon: 
Run Code Online (Sandbox Code Playgroud)

docker注册表直接从公共集线器运行,例如

docker run -d -p 5000:5000 registry
Run Code Online (Sandbox Code Playgroud)

(注意nginx路由从8080到5000).任何帮助和/或资源来帮助调试这将非常感激.

UPDATE

我正在寻找一个帮助全面解决这个问题的指南.特别:

  • 创建一个私人注册表
  • 使用基本身份验证来保护注册表
  • 使用boot2docker中的注册表

我创建了注册表并在本地测试,它的工作原理.我已经使用nginx添加基本身份验证来保护注册表.

麻烦现在实际上是使用两种类型客户端的注册表:

1)非boot2docker客户端.下面的答案之一有助于此.我在/ etc/default/docker中为选项添加了--insecure-registry标志,现在我可以与远程docker注册表进行通信了.但是,这与auth不兼容,因为docker login收到错误:

2015/01/15 21:33:57 HTTP code 401, Docker will not send auth headers over HTTP.
Run Code Online (Sandbox Code Playgroud)

所以,如果我想使用auth,我需要使用HTTPS.我已经有这个服务器通过HTTPS服务,但如果我设置--insecure-registry,这不起作用.似乎存在证书信任问题,我相信我可以在非boot2docker上解决但是..

2)对于boot2docker客户端,我不能让--insecure-registry工作或证书被信任?

更新2

这个堆栈交换问题后,我设法将ca添加到我的ubuntu VM,现在我可以从非boot2docker客户端使用.但是,仍有很多奇怪的行为.

即使我当前的用户是docker组的成员(所以我不必使用sudo)我现在必须使用sudo或者在尝试登录或从我的私人注册表中提取时出现以下错误

user@ubuntu:~$ docker login example.com:8080 …
Run Code Online (Sandbox Code Playgroud)

docker boot2docker docker-registry

16
推荐指数
2
解决办法
2万
查看次数

CLI移动到一个单独的包中:webpack-cli

我是React.js的新手,我正在尝试从tutorialspoint的教程中学习,但我遇到了错误.执行npm start命令时,控制台上出现以下错误:

C:\Users\HP\Desktop\reactApp1> npm start
> reactapp1@1.0.0 start C:\Users\HP\Desktop\reactApp1.
> webpack-dev-server --hot

The CLI moved into a separate package: webpack-cli. 
Please install .webpack-cli. in addition to webpack itself to use the CLI.
-> When using npm: npm install webpack-cli -D 
-> When using yarn: yarn add webpack-cli -D 
module.js:540
    throw err; 

Error: Cannot find module .webpack-cli/bin/config-yargs. 
    at Function.Module._resolveFilenam (module.js:538:15) 
    at Function.Module. load (module.j5:668:25) 
    at Module.require (module.js,587.17) 
    at require (internal/module.js:11:18) 
    at Object•<anonymous> (C:\Users\HP\Desktop\reactApp1\node_modules\webpack-dev-server\bin\webpack-dev-server.js:65:1) 

    at Module. compile (module.js:663:30) 
    at Object.Module. …
Run Code Online (Sandbox Code Playgroud)

javascript php node.js reactjs webpack

16
推荐指数
3
解决办法
2万
查看次数

无法从存储库下载Docker镜像

我正在尝试在笔记本电脑上创建一个swarm设置.我在笔记本电脑上运行swarm守护程序,并运行2个Ubuntu 14.04 VM作为docker节点.在其中一个节点上,我能够运行swarm,我可以连接到swarm守护进程.我可以列出具有docker info的节点并在其上生成一个容器.但是当我尝试在另一个VM节点上提取swarm图像时,我收到以下错误:

pensu@pensu-virtual-machine:~$ sudo docker pull swarm
Pulling repository swarm
FATA[0025] Get https://index.docker.io/v1/repositories/library/swarm/images: dial tcp: lookup index.docker.io on 127.0.1.1:53: read udp 127.0.1.1:53: i/o timeout 
Run Code Online (Sandbox Code Playgroud)

我检查过,有人说这是代理问题.但我没有使用任何代理服务器.以下是其他相关信息:

pensu@pensu-virtual-machine:~$ sudo docker version
Client version: 1.5.0
Client API version: 1.17
Go version (client): go1.4.1
Git commit (client): a8a31ef
OS/Arch (client): linux/amd64
Server version: 1.5.0
Server API version: 1.17
Go version (server): go1.4.1
Git commit (server): a8a31ef
Run Code Online (Sandbox Code Playgroud)

这是我的/ etc/default/docker:

pensu@pensu-virtual-machine:~$ cat /etc/default/docker 
# Docker Upstart and SysVinit configuration file

# Customize location of …
Run Code Online (Sandbox Code Playgroud)

docker ubuntu-14.04 dockerhub

15
推荐指数
3
解决办法
1万
查看次数

詹金斯管道警告图

我开始将jenkins中的一些工作迁移到管道执行.

有没有机会在多分支管道作业中看到警告图?在我的旧项目中,我可以使用"配置趋势图"选项配置图形.这些选项将在管道语法工具中崩溃.

有没有选项让图表可见?

我有我的Jenkinsfile:

stage ('Warnings gcc') {
    step([$class: 'WarningsPublisher', canComputeNew: false, canResolveRelativePaths: false, defaultEncoding: '', excludePattern: '', healthy: '', includePattern: '', messagesPattern: '', parserConfigurations: [[parserName: 'GNU Make + GNU C Compiler (gcc)', pattern: 'error_and_warnings.txt']], unHealthy: ''])
}   

stage ('Warnings clang') {
    step([$class: 'WarningsPublisher', canComputeNew: false, canResolveRelativePaths: false, defaultEncoding: '', excludePattern: '', healthy: '', includePattern: '', messagesPattern: '', parserConfigurations: [[parserName: 'Clang (LLVM based)', pattern: 'error_and_warnings_clang.txt']], unHealthy: ''])
} 
Run Code Online (Sandbox Code Playgroud)

将生成报告但不显示图表.

更新:现在它仍然无法工作,但也不可能使用剪切生成器作为警告插件.

在snipped生成器中为警告插件输入文件名会导致java null指针异常:

javax.servlet.ServletException: java.lang.NullPointerException …
Run Code Online (Sandbox Code Playgroud)

jenkins jenkins-plugins jenkins-pipeline

12
推荐指数
1
解决办法
5159
查看次数

Docker使用nginx构建主机路径错误

当我docker-compose up nginx使用主机路径运行时出错:

错误:for nginx无法启动服务nginx:oci运行时错误:container_linux.go:247:启动容器进程导致"process_linux.go:359:容器init导致"rootfs_linux.go:54:mount \\"/ d/Sites/lfdwveille/app/config/docker/nginx.conf \\"to rootfs \\"/ mnt/sda1/var/lib/docker/aufs/mnt/fce42187ef3ff6bcc0d5acf53a77d2218348a432063e2d5fe00b8ac945578f63 \\"at \\"/ mnt/sda1/var/lib /docker/aufs/mnt/fce42187ef3ff6bcc0d5acf53a77d2218348a432063e2d5fe00b8ac945578f63/etc/nginx/nginx.conf \\"导致\\"不是目录\\"\""

:您是否尝试将目录挂载到文件上(反之亦然)?检查指定的主机路径是否存在且是否为预期类型

[31mERROR [0m:在启动项目时遇到错误.

文件夹url是正确的:(我不知道为什么nginx不想要mount文件夹,我对PHP和MySQL没有问题.

我的设置:

  • 视窗
  • docker-compose v1.9.0
  • 码头工人1.12

错误日志:

container_linux.go:247:启动容器进程导致"process_linux.go:359:容器初始化导致"rootfs_linux.go:54:mount \\"/ d/Sites/lfdwveille/app/config/docker/nginx.conf \\ "to rootfs \\"/ mnt/sda1/var/lib/docker/aufs/mnt/fce42187ef3ff6bcc0d5acf53a77d2218348a432063e2d5fe00b8ac945578f63 \\"at \\"/ mnt/sda1/var/lib/docker/aufs/mnt/fce42187ef3ff6bcc0d5acf53a77d2218348a432063e2d5fe00b8ac945578f63/etc/nginx/nginx.conf \\"导致\\"不是目录\\"\""

有人有想法吗?

谢谢 !

nginx docker docker-compose

10
推荐指数
1
解决办法
1432
查看次数

NgRX实体:ID在州内未定义

我一直在虚拟的"Todo"项目中尝试@ ngrx/entity,只有一个AppModule,一个减速器和一个组件.但是,我在试用它时遇到了问题.

我的行为很简单,只是一些CRUD操作:

import { Action } from '@ngrx/store';
import { Todo }  from '../../models/todo';


export const CREATE = '[Todo] Create'
export const UPDATE = '[Todo] Update'
export const DELETE = '[Todo] Delete'

export class Create implements Action {
    readonly type = CREATE;
    constructor(public todo: Todo) { }
}

export class Update implements Action {
    readonly type = UPDATE;
    constructor(
        public id: string,
        public changes: Partial<Todo>,
      ) { }
}

export class Delete implements Action {
    readonly type = DELETE; …
Run Code Online (Sandbox Code Playgroud)

javascript entity rxjs ngrx angular

9
推荐指数
1
解决办法
5128
查看次数

詹金斯和码头工人:未指定uri

我在jenkins中安装了docker,jenkins和docker -build-step.

我已经设置了一个步骤,以便从我的存储库的Dockerfile构建一个图像.

它把这个消息转发给我:

Started by BitBucket push by living_jordi
Started by BitBucket push by living_jordi
Building in workspace /var/lib/jenkins/workspace/Create Docker Images
Cloning the remote Git repository
Cloning repository git@bitbucket.org:livingdigital/docker-images.git
git init /var/lib/jenkins/workspace/Create Docker Images # timeout=10
Fetching upstream changes from git@bitbucket.org:livingdigital/docker-images.git
git --version # timeout=10
using GIT_SSH to set credentials BitBucket Private Key
git -c core.askpass=true fetch --tags --progress git@bitbucket.org:livingdigital/docker-images.git +refs/heads/*:refs/remotes/origin/*
git config remote.origin.url git@bitbucket.org:livingdigital/docker-images.git # timeout=10
git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10
git config remote.origin.url git@bitbucket.org:livingdigital/docker-images.git …
Run Code Online (Sandbox Code Playgroud)

jenkins docker

8
推荐指数
1
解决办法
5545
查看次数