单元测试期间的Jenkins管道和猫鼬数据库连接:ECONNREFUSED

时间:2018-12-12 13:15:55

标签: mongodb docker jenkins mongoose jenkins-pipeline

在Jenkinsfile测试阶段,连接mongoDB时遇到问题。基本映像是dockerhub的mongo -image。

我的单元测试首先尝试使用以下方法连接到mongoDB:

ProductAdapter adapter = new ProductAdapter(this, productList);

但失败:

  

MongoNetworkError:无法连接到服务器[localhost:27017]   首先连接[MongoNetworkError:连接ECONNREFUSED   127.0.0.1:27017]

我也尝试过mongoose.connect(mongodb://localhost:27017/datastore_test, options); ,但没有成功。

在使用docker的CI管道期间,有一些技巧或警告如何连接到数据库吗?

这是我的Jenkinsfile的样子:

'mongodb://mongo:27017/datastore_test'

编辑:输出pipeline { agent { docker { image 'myusername/mongonode:latest' args '-p 3000:3000' } } environment { CI = 'true' } stages { stage('Build') { steps { sh 'npm install' } } stage('Test') { steps { sh 'npm test' } } stage('Deliver') { steps { sh './jenkins/scripts/deliver.sh' input message: 'Finished using the web site? (Click "Proceed" to continue)' sh './jenkins/scripts/kill.sh' } } } }

docker inspect 8ad397858ecd | grep IP

0 个答案:

没有答案