Contents1使用GOCD部署一个SpringBoot应用云计算容器化Contents如何自动部署的应用?首先我们要做的是把的启动用户go加入到docker组中,这样就可以免sudo来执行的命令了sudo gpasswd -a go dockersudo /etc/init.d/docker restartnewgrp - docker我们现在来通过部署一个的服务端。用作服务发现,包含端和端,每个微服务是一个注册到上。看看需要哪些包:dependencies { testCompile group: 'junit', name: 'junit', version: '4.12' compile group: 'org.springframework.boot', name: 'spring-boot-starter-web', version: '1.5.3.RELEASE' compile group: 'org.springframework.cloud', name: 'spring-cloud-starter-eureka-server', version: '1.3.1.RELEASE'}然后我们的程序写一句话就可以了:@EnableEurekaServer@SpringBootApplicationpublic class EurekaServerApplication { public static void main(String[] args){ SpringApplication.run(EurekaServerApplication.class, args); }}这样启动后就可以访问到的页面了,我们可以在中配置一些属性:server.port=8761eureka.client.register-with-eureka=falseeureka.client.fetch-registry=false然后来想办法把应用打包到中。我们新建一个到中:FROM oracle/openjdk:8VOLUME /tmpADD eureka-server-1.0-SNAPSHOT.jar app.jarRUN sh -c 'touch /app.jar'ENV JAVA_OPTS=""ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]然后在中添加一个构建任务: Contents2buildscript { repositories { mavenCentral() } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:1.5.2.RELEASE") classpath('se.transmode.gradle:gradle-docker:1.2') }}task buildDocker(type: Docker, dependsOn: build) { push = false applicationName = jar.baseName dockerfile = file('src/main/docker/Dockerfile') doFirst { copy { from jar into stageDir } }}这样当我们执行gradle build buildDocker命令的时候就会把应用打包成镜像了。