Tag: spring

在spring云中的bootstrap.yml上设置configuration文件,以定位不同的configuration服务器

我使用docker撰写来运行我所有的微服务。 对于每个服务我给它一个简短的主机名。 version: '2' services: config: image: springbox-config-server restart: always ports: – "8890:8890" discovery: image: springbox-eureka restart: always ports: – "8763:8763" 因此,在我的微服务中,我必须以其简短的主机名来定位configuration服务器。 spring: application: name: myservice cloud: config: uri: http://config:8890 fail-fast: true 但是,当我在没有docker的IDE中本地运行它们时,无法parsing短主机名。 所以我正在寻找一个解决scheme,根据我的环境定位不同的configuration服务器。

无法创builddocker访问对象

我想用fabric8的插件进行spring集成testing,但是当我尝试运行testing时,我得到了下一个错误: 无法创builddocker访问对象 我有Ubuntu的,我认为我有良好的configurationdocker,我没有任何问题,docker文件或dockercompose,所以可能会是一个权限问题,或者我忘了一些东西。 我通过下面我的fabric8configuration,这有一个图像的MySQL和maven-failsafe插件集成testing。 <!–maven plugin –> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> <executions> <execution> <goals> <goal>integration-test</goal> <goal>verify</goal> </goals> </execution> </executions> <configuration> <environmentVariables> <it-database.port>${it-database.port}</it-database.port> </environmentVariables> </configuration> </plugin> <!–fabric8 plugin –> <plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.18.1</version> <configuration> <!–<dockerHost>unix:///var/run/docker.sock</dockerHost>–> <dockerHost>tcp://0.0.0.0:2375</dockerHost> </configuration> <executions> <execution> <id>prepare-it-database</id> <phase>pre-integration-test</phase> <goals> <goal>start</goal> </goals> <configuration> <images> <image> <name>mysql:5.7</name> <alias>it-database</alias> <run> <ports> <port>it-database.port:5432</port> </ports> <wait> <log>database system is […]

在docker中,spring-boot不能启动

在docker中运行我的spring启动应用程序有点问题。 堆栈:maven 3+,春季启动(jpa / rest / jetty) – mysql – 在docker中部署 所以,我已经在我的POM文件 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.0.M3</version> <relativePath/> <!– lookup parent from repository –> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.version>1.8</java.version> </properties> <dependencies> <!– SPRING BOOT DEPENDENCIES –> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-rest</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!– add for exlude tomcat –> […]

docker kerberos webhdfs AuthenticationException:未经授权

我有一个spring的应用程序。 其中一种方法是使用webhdfs从hdfs中读取一个文件。 当我在想法testing它,它的工作。 但是,在我构build项目并在虚拟机本地或在连接到hdfs的服务器上部署Docker镜像后,我就可以看到。 AuthenticationException: Unauthorized 在我的本地机器上,我必须定期初始化令牌 kinit 用于听力。 如果我不这样做,我会得到同样的错误。 我testing了没有docker在服务器上的应用程序,它也可以。 我认为,docker形象没有看到令牌。 但是我不知道该怎么办。 Kerberos用于安全性。 有什么build议?

在Docker容器中重新部署spring-boot应用程序?

我有一个春季启动项目,我想自动重新部署我的jar子在容器中。 如何正确地做到这一点? 到目前为止,我所看到的就是这样。 这是正确的方式? # cd /home/jdev; # sudo docker stop ca_spring_boot; # sudo docker rm ca_spring_boot; # sudo docker rmi ca_app_image; # sudo docker build -t ca_app_image .; # sudo docker run -d -p 8888:8080 –name ca_spring_boot ca_app_image 和我的Dockerfile FROM java:8 VOLUME /tmp EXPOSE 8080 ADD docker-storage/jenkins/workspace/CA/build/libs/ca-1.0.jar app.jar RUN bash -c 'touch /app.jar' ENTRYPOINT […]

Intellij,Spring开发工具远程,Docker,错误意外的404响应上传类文件

我试图使用Spring Boot Dev工具(Spring Remote),并自动上传重新编译的文件到我的docker集装箱。 我不断收到Unexpected 404 response uploading class files 这是我的docker文件: FROM java:8 WORKDIR /first ADD ./build/libs/first.jar /first/first.jar EXPOSE 8080 RUN bash -c 'touch /first/first.jar' ENTRYPOINT ["java","-Dspring.data.mongodb.uri=mongodb://mongodb/micros", "-Djava.security.egd", "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005","-jar", "first.jar"] 这是我的configuration和configuration 这是我收到的错误:

限制Docker容器中的JVM内存消耗

我有一个Spring Boot应用程序实现了我想在Docker容器中运行的服务。 我遵循了官方Spring文档的build议创buildDockerFile类似于这样的指南: FROM frolvlad/alpine-oraclejdk8:slim VOLUME /tmp ADD gs-spring-boot-docker-0.1.0.jar app.jar RUN sh -c 'touch /app.jar' ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] 然后,一旦图像被推送到Docker,我使用Docker Compose以这种方式启动它: spring-boot-docker: ports: – "80:80" expose: – "80" image: my-repo/spring-boot-docker:0.1.0-SNAPSHOT container_name: spring-boot-docker environment: JAVA_OPTS: '-Xmx64m' 在这里我有JAVA_OPTSvariables限制内存分配,但是,当我执行docker stats spring-boot-docker ,容器占用的内存过多(我明​​白JVM占用的内存可能远远多于64M,但在这种情况下是完全无限的)。 我也尝试了mem_limit参数 ,但是这会显着减慢应用程序的速度。

在Docker中使用Spring保存文件后“const_get':未初始化的常量(NameError)'

我在Spring和Guard中使用Docker中的rails。 请参阅Guardfile: guard 'rspec', cmd: "#{env_vars} spring rspec -color -f doc", :all_on_start => false, :all_after_pass => false do watch(%r{^spec/.+_spec\.rb$}) 奇怪的问题:当上面的命令中有spring标签时,我在运行规范时遇到了一个错误,但只是在以某种方式保存了容器中的一个文件之后。 这是错误的: /usr/local/bundle/gems/activesupport-5.0.1/lib/active_support/inflector/methods.rb:268:in `const_get': uninitialized constant User (NameError) from /usr/local/bundle/gems/activesupport-5.0.1/lib/active_support/inflector/methods.rb:268:in `block in constantize' from /usr/local/bundle/gems/activesupport-5.0.1/lib/active_support/inflector/methods.rb:266:in `each' from /usr/local/bundle/gems/activesupport-5.0.1/lib/active_support/inflector/methods.rb:266:in `inject' from /usr/local/bundle/gems/activesupport-5.0.1/lib/active_support/inflector/methods.rb:266:in `constantize' from /usr/local/bundle/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:583:in `get' from /usr/local/bundle/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:614:in `constantize' from /usr/local/bundle/gems/devise-4.2.0/lib/devise.rb:301:in `get' from /usr/local/bundle/gems/devise-4.2.0/lib/devise/mapping.rb:81:in `to' from /usr/local/bundle/gems/devise-4.2.0/lib/devise/mapping.rb:76:in […]

用于Java Spring Boot的Docker基础映像(`FROM`)?

Java的Spring Boot应用程序有哪些Docker基础映像( FROM )? 我刚刚开始与docker,我看到, FROM里面的Dockerfile可以定义像Java的图像 FROM java:8 如果我正在使用Gradle(或Maven)进行构build,那么开始避免configurationGradle / Maven项目常见的是更好的基础形象? 当然,Spring Boot应用程序只是构build输出文件夹中的.jar文件,关于如何使用Docker运行(对于使用标准构build工具构build的Java项目)

springdocker卷和自动重新加载

我实际上想要使用docker容器来开发与Java。 我实际上有一个“好”的形象,在其中使用phusion / baseimage和JAVA 8,gradle和git。 其实,这个效果很好,我可以通过SSH连接。 随着音量,我可以在我的真实主机的容器目录中工作。 我想知道是否可以从容器直接从IntelliJ启动embedded在SpringBoot中的Tomcat服务器,例如? 所以我可以重新启动/重新加载它很容易,而无需打开一个SSH提示,gradle与每个修改等命令行构build…