我在CI和CD上创建了Jenkinsfile,Dockerfile,Dockerfile.test到CI和CD,在GitHub上构建了我的服务器API,我在Jenkins上构建了该构建,并且构建成功,并且我的docker在Jenkinsfile阶段也在容器上运行,我创建了用于测试和部署在服务器API上,并使用docker作为容器
我也使用docker-compose在docker上运行Jenkins
这是我的ubuntu服务器上的Dockerfile
FROM jenkins/jenkins:lts
USER root
这是我在ubuntu服务器上的docker-compose
version: '3'
services:
jenkins:
build: .
container_name: jenkins
privileged: true
restart: always
ports:
- 8080:8080
volumes:
- ./jenkins_home:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock
- /usr/bin/docker:/usr/bin/docker
registry:
image: registry
container_name: registry
restart: always
ports:
- 5000:5000
我在上面所做的事情,我遵循了这个指示, 然后尝试运行它并在我的jenkins服务器上登录,
我的jenkinsfile像这样
try {
stage('Checkout') {
checkout scm
}
stage('Environment') {
sh 'git --version'
echo "Branch: ${env.BRANCH_NAME}"
sh 'docker -v'
sh 'printenv'
}
stage('Build Docker test'){
sh 'docker build -t employee-test -f Dockerfile.test --no-cache .'
}
stage('Docker test'){
sh 'docker run --rm employee-test'
}
stage('Clean Docker test'){
sh 'docker rmi employee-test'
}
stage('Deploy'){
if(env.BRANCH_NAME == 'master'){
sh 'docker build -t employee --no-cache .'
sh 'docker run -d -p 4000:4000 -e DB_USERNAME=admin -e DB_PASSWORD=adminxxx -e DB_NAME=employee employee'
}
}
}
catch (err) {
throw err
}
}
和我的Dockerfile做这些工作
FROM node:carbon
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get -y install autoconf automake libtool nasm make pkg-config git apt-utils
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
RUN npm -v
RUN node -v
COPY ./server/ /usr/src/app
RUN npm install
EXPOSE 4000
ENV PORT 4000
ENV DB_USERNAME admin
ENV DB_PASSWORD adminxxx
ENV DB_NAME employee
CMD [ "npm", "run", "dev" ]
jenkins作业成功构建了它,并且在我的Jenkins的最后一个阶段,您可以看到我在ubuntu服务器上的docker容器上运行它,完成之后,我尝试为postman调用服务器API
http://ip-server:4000
,但这没有任何反应,而且我确实在ubuntu serrver上设置了防火墙tcp
我该如何解决?因此,在詹金斯(Jenkins)工作完成后,我可以在邮递员上调用该服务器API对其进行测试
配置看起来不错,所以似乎docker组成了对卷的缓存,所以请运行此命令清除所有内容
docker rm employee
docker image rm employee
docker-compose down -v
docker-compose up
请确保詹金斯记录此
'docker run -d -p 4000:4000 -e DB_USERNAME=admin -e DB_PASSWORD=adminxxx -e DB_NAME=employee employee'
我想通过Docker容器在AWS Lamda上运行selenium脚本。 我正在使用AWS EC2构建容器,然后通过AWS Lambda RIE在本地测试容器。一旦测试成功,容器将在ECR注册,以便馈送AWS Lambda。 尽管RIE在EC2上的本地测试总是成功的,但我无法让Lambda正常工作。Lambda测试当前总是失败,并显示以下错误消息: 在这里,您可以找到我实际使用的所有代码: 文档
尽管CAS服务器在Tomcat下工作得很好,但我有一些问题要使它在WebLogic12c下工作。在Weblogic上部署之前,我遵循以下指南:https://github.com/gentics/gentics-sso-cas/wiki/oracle-weblogic-configuration在webcontent/web-inf/with content中添加文件Weblogic.xml:
问题内容: 我有Jenkins作业的阶段,可以使用docker测试和部署我的nodejs,我在端口3000上运行docker,但是当我尝试浏览我的docker时,它不起作用,并且我的docker没有运行 这是我的Jenkinsfile Dockerfile: 我在ubuntu服务器上通过docker- compose运行Jenkins,是我丢失还是出错了?因为我的目标是使用Jenkins来测试我的
我有一个php docker容器,我的Symfony项目在哪里。 这是我的docker-compose.yml 我想使用以下命令启动我的symfony项目: 但当我想访问url时,它不起作用。我收到以下错误消息: localhost页不行 localhost未发送任何数据。 我该怎么解决这个问题? PS:我用docker for mac 和输出: [2016-08-06 14:09:53]php.
我已经在我的主机虚拟机上安装了docker。现在想用vi创建一个文件。 但它向我展示了一个错误:
问题内容: 当前,我通过使用以下文件运行一个简单的Docker容器。 Docker文件 docker-compose.yml docker-compose.override.yml 我使用Windows映像通过以下命令创建容器,并且可以通过http:// localhost:9091 / 访问它。 我想使用HTTPS而非http访问我的应用程序。 我需要遵循哪些步骤? 问题答案: 您需要配置Web