【Docker】(5)---springCloud註冊中心打包Docker映象
【Docker】(5)---springCloud註冊中心打包Docker映象
上一篇文章講了將映象推送到遠處私有倉庫,然後再從私有倉庫拉取該映象的過程。而這裡的映象是直接從Docker拉取的。
所以這篇要講的就是將本地專案打包成Docker映象的過程。
先說明: 作業系統:mac
, JDK版本:1.8
, Maven版本:3.5.4
一、Mac安裝Docker
1、下載 ofollow,noindex" target="_blank">docker.dmg 檔案,然後點選下一步,安裝完成。
2、下載好後,點選啟動Docker,之後在命令列輸入: docker version
說明本地安裝Docker已經成功
二、建立註冊中心服務專案
1、application.yml
server: port: 7001 eureka: instance: hostname: localhost client: #宣告自己是個服務端 registerWithEureka: false#false表示不向註冊中心註冊自己 fetchRegistry: false#false表示自己就是註冊中心,職責是維護例項,不參加檢索 serviceUrl:#設定eureka server的互動地址,即對外暴露的地址 defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
2、啟動類
@SpringBootApplication @EnableEurekaServer @RestController public class EurekaserverApplication { public static void main(String[] args) { SpringApplication.run(EurekaserverApplication.class, args); } //用來測試 是否映象容器是否成功 @RequestMapping("/user") public Object findUser(){ Map<String, String > map = new HashMap<>(); map.put("name", "xuxiaoxiao"); map.put("age","2"); return map; } }
有關pom的配置,在之前寫springcloud中有展示。
三、配置Docker的maven外掛
1、dockerfile-maven-plugin外掛
<plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin</artifactId> <version>1.4.7</version> <configuration> <!--打包映象名稱 docker.image.prefix是在上面properties中設定的--> <!--<docker.image.prefix>xdclass</docker.image.prefix>--> <repository>${docker.image.prefix}/${project.artifactId}</repository> <buildArgs> <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE> </buildArgs> </configuration> </plugin>
2、配置Dockerfile
FROM openjdk:8-jdk-alpine VOLUME /tmp ARG JAR_FILE COPY ${JAR_FILE} app.jar ENTRYPOINT ["java","-jar","/app.jar"]
3、執行打包命令
執行命令: mvn clean package dockerfile:build
說明:之前這邊配置的 <version>1.3.6</version>
執行上面命令一直報錯,之後在 STACK OVERFLOW 找到原因,因為外掛本身版本問題,後面改成1.4.7版本就不報這個錯了。
執行成功如圖
檢視本地映象
docker run -d --name "start" -p 9999:7001 ffff160672d1
頁面訪問9999埠,看容器是否啟動成功。

成功!
有關 dockerfile-maven-plugin
外掛和 Dockerfile
檔案,在接下來部落格中會深入瞭解。
如果一個人充滿快樂,正面的思想,那麼好的人事物就會和他共鳴,而且被他吸引過來。同樣,一個人老帶悲傷,倒黴的事情也會跟過來。 ——在自己心情低落的時候,告誡自己不要把負能量帶給別人。(大校7)