【发布时间】:2018-02-22 05:25:10
【问题描述】:
我已经关注了 Matt Raible 的帖子 https://developer.okta.com/blog/2017/06/20/develop-microservices-with-jhipster ... 在本地机器上运行 docker-compose 时我遇到了一个错误。
显示给我的错误是:
➜ ~ cd work/jhipster/microservices/docker
➜ docker docker-compose up
构建 store-mongodb-node 第 1/2 步:来自 mongo:3.4.8 ---> 917819fa18fd 第 2/2 步:添加 mongodb/scripts/init_replicaset.js init_replicaset.js 错误:服务'store-mongodb-node'构建失败:添加失败:stat /var/lib/docker/tmp/docker-builder345385260/mongodb/scripts/init_replicaset.js:没有这样的文件或目录亮点
我用 mongodb 创建了 store 微服务。
我在 store, blog 项目中运行了 ./mvnw -Pprod dockerfile:build。 (因为 docker:build 插件不存在)
JHipster 版本:v4.8.0
Docker 版本:Docker 版本 17.06.2-ce,构建 cec0b72
Docker-compose 版本:docker-compose 版本 1.15.0,构建 e12f3b9
任何人都知道为什么 docker 无法找到 mongodb/scripts/init_replicaset.js?
jhipster/microservices/docker/docker-compose.yml
版本:'2' 服务: 博客应用程序: 图片:博客 环境: - SPRING_PROFILES_ACTIVE=产品,招摇 - [....] 存储 mongodb 节点: 建造: 上下文:../store/src/main/docker dockerfile:mongodb/MongoDB.Dockerfile 命令:mongod --replSet rs1 --noprealloc --smallfiles [...]jhipster/microservices/store/src/main/docker/Dockerfile
FROM openjdk:8-jre-alpine ENV SPRING_OUTPUT_ANSI_ENABLED=总是\ JHIPSTER_SLEEP=0\ JAVA_OPTS="" 添加@project.build.finalName@.war /app.war 暴露 8081 CMD echo "应用程序将在 ${JHIPSTER_SLEEP}s..." && \ 睡眠 ${JHIPSTER_SLEEP} && \ java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /app.warjhipster/microservices/store/src/main/docker/mongodb/MongoDB.Dockerfile
来自 mongo:3.4.8 添加 mongodb/scripts/init_replicaset.js init_replicaset.jsjhipster/microservices/store/src/main/docker/mongodb/scripts/init_replicaset.js
var status = rs.status();
if(status.errmsg === 'no replset config has been received') {
rs.initiate();
}
for (var i = 1; i <= param; i++) {
if(i!==1)
rs.add(folder+"_store-mongodb-node_" + i + ":27017");
}
cfg = rs.conf();
cfg.members[0].host = folder+"_store-mongodb-node_1:27017";
rs.reconfig(cfg);
还是谢谢你。
【问题讨论】:
-
向我们展示你的 Dockerfile,docker-compose.yml
-
你在ubuntu linux上安装docker了吗?
-
@MikeTung 我用 Dockerfile 和 docker-compose.yml 编辑我的问题
-
@harshavmb 是的。
-
在这个目录位置/var/lib/docker/tmp/docker-builder345385260/mongodb/scripts/检查init_replicaset.js文件是否存在???
标签: mongodb docker-compose jhipster