SpringBoot 與 Docker

一 Docker

一個(gè)虛擬化容器引擎,解決的事件是:開發(fā)者打包他們的應(yīng)用和依賴到一個(gè)輕量級(jí)的,可移植的容器中,然后發(fā)布到任何一個(gè) Linux機(jī)器上。容器采用沙盒機(jī)制,相互之間不會(huì)有任何接口,容器的開銷極低。

Docker 的幾個(gè)概念

  • 倉庫 Registry:保存鏡像 http://hub.docker.com
  • 鏡像 Images:模板
  • 容器 Container: 啟動(dòng)鏡像就是一個(gè)容器,啟動(dòng)是秒級(jí)的

Docker安裝

CentOS7 上使用 yum install docker 即可

Docker 使用

docker -v 查看版本

centos7上面啟動(dòng)
systemctl start docker 啟動(dòng)
docker images 查看鏡像
docker search XXXX 搜索鏡像 ,也可以到網(wǎng)上搜索
docker pull mysql:5.5 下載鏡像,不帶后面版本號(hào)就是最新的
docker rmi 鏡像id 刪除鏡像

docker 運(yùn)行 mysql
docker run --name mysql01 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.5 --character-set-server=utf8mb4 --collection-server=utf8mb4_unicode-cli
--name 指定名稱,隨便
-p 映射端口
-e MYSQL_ROOT_PASSWORD 指定 root 密碼
-d 后臺(tái)運(yùn)行
mysql:5.5 運(yùn)行的鏡像名稱
后面是指定字符集

docker ps查看運(yùn)行的情況
docker ps -a所有
docker ps -l最近

停止一個(gè)容器
docker stop 實(shí)例名稱/實(shí)例 ID

SpringBoot

Spring-boot-starter-XXX 場景啟動(dòng)器
SpringBoot 通過一個(gè)主程序啟動(dòng)整個(gè)應(yīng)用

SpringApplication的 run 方法中傳入帶有@SpringBootApplication 標(biāo)記的類,這樣該類將作為啟動(dòng)類

SpringBoot autoconfig 包

自動(dòng)配置的是 XXXAutoConfiguration
默認(rèn)規(guī)則屬性 XXXProperties

自動(dòng)配置也可以通過配置文件修改

docker +maven

github 搜索 docker-maven-plugin
https://github.com/spotify/docker-maven-plugin

<plugin>
  <groupId>com.spotify</groupId>
  <artifactId>docker-maven-plugin</artifactId>
  <version>VERSION GOES HERE</version>
  <configuration>
    <imageName>example</imageName><!-- 鏡像名稱 -->
    <baseImage>java</baseImage><!-- 基于 java 鏡像 -->
    <entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint><!-- 運(yùn)行命令  -->
    <!-- copy the service's jar file from target into the root directory of the image --> 
    <resources>
       <resource>
         <targetPath>/</targetPath>
         <directory>${project.build.directory}</directory>
         <include>${project.build.finalName}.jar</include>
       </resource>
    </resources>
  </configuration>
</plugin>

鏈接遠(yuǎn)程 docker
首先指定遠(yuǎn)程 docker 位置

<properties>
  <dockerHost>http://ip:2375</dockerHost>
</properties>
image

需要開啟2375端口

image

image
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Docker是一個(gè)開源的應(yīng)用容器引擎;是一個(gè)輕量級(jí)容器技術(shù); Docker支持將軟件編譯成一個(gè)鏡像;然后在鏡像中各...
    最后的夏t閱讀 608評(píng)論 0 0
  • 一、Docker簡介 1、Docker是什么? 是一個(gè)開源的容器引擎,基于go語言開發(fā) 2、特點(diǎn) 輕量級(jí),可移植的...
    chuckielove閱讀 1,805評(píng)論 0 2
  • Docker是一種容器技術(shù),它的存在就是為了解決容器技術(shù)本身的復(fù)雜性。Docker容器擁有很高的性能,同時(shí)同一臺(tái)宿...
    四條眉毛陸小雞閱讀 675評(píng)論 0 0
  • 1 預(yù)備安裝軟件虛擬機(jī) VMware Fusion ,或者其他虛擬機(jī)。保證本地有一個(gè)linux的centos7 的...
    Kate_Blog閱讀 446評(píng)論 0 1
  • 1.Docker簡介 1.1 什么是虛擬化 在計(jì)算機(jī)中,虛擬化(英語:Virtualization)是一種資源管理...
    EdwinGates閱讀 1,917評(píng)論 0 0

友情鏈接更多精彩內(nèi)容