public static void main(string args)
@restcontroller
public class hellosimoncontroller
}}
<?xml version="1.0" encoding="utf-8"?>
4.0.0
org.springframework.boot
spring-boot-starter-parent
2.1.5.release
com.example
microservices-docker
0.0.1-snapshot
microservices-docker
demo project for spring boot
1.8
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-test
test
org.springframework.boot
spring-boot-m**en-plugin
啟動這個demo,瀏覽器訪問http://localhost:8080/hello,返回 「hello world!」,介面正常。
新增docker構建外掛程式
com.spotify
docker-m**en-plugin
1.0.0
simon/$:$
src/main/docker/$
$.jar
簡要說明外掛程式配置:
imagename:用於指定映象名稱,其中simon是倉庫名稱,$是映象名稱,$是標籤名稱;
resources.resource.directory:用於指定需要複製的檔案,$表示target目錄;
resources.resource.include:用於指定需要複製的檔案。$.jar指的是打包後的jar
在目錄src/main/docker下建立 dockerfile 檔案,dockerfile 檔案用來說明如何來構建映象
from openjdk:8-jdk-alpine
volume /tmp(可忽略)
volume:volume 指向了乙個/tmp的目錄,由於 spring boot 使用內建的tomcat容器,tomcat 預設使用/tmp作為工作目錄。這個命令的效果是:在宿主機的/var/lib/docker目錄下建立乙個臨時檔案並把它鏈結到容器中的/tmp目錄
add:拷貝檔案並且重新命名
entrypoint:為了縮短 tomcat 的啟動時間,新增j**a.security.egd的系統屬性指向/dev/urandom作為 entrypoint
我們需要把demo這個專案上傳到linux上進行打包部署。linux上需要安裝jdk和m**en(不講述安裝過程),還需要安裝docker環境,可以參考之前的文章centos7 安裝docker。
進入demo專案的根目錄,執行下面的命令
mvn package docker:build
docker images
[root@localhost ~]# docker images
repository tag image id created size
simon/microservices-docker 0.0.1-snapshot a8aa192bf68c 12 hours ago 660mb
j**a latest d23bdf5b1b1b 2 years ago 643mb
simon/microservices-docker就是構建的映象
docker run -p 8080:8080 -t simon/microservices-docker:0.0.1-snapshot
docker ps
container id image command created status ports names
f216e60cb5ec simon/microservices-docker:0.0.1-snapshot "j**a -dj**a.securit…" 7 minutes ago up 7 minutes 0.0.0.0:8080->8080/tcp zen_leakey
docker stop zen_leakey
哦了! docker部署 docker環境部署mysql
蘇軾 這裡我拉取了tag為5.7的映象 docker pull mysql 5.7因為需要自定義mysql的配置,所以需要乙個配置目錄 因為需要將mysql生成的資料掛載到本地,所以需要乙個資料目錄 建立mysql 資料目錄mkdir p root mysql data 建立配置檔案 touch r...
使用springMvc模擬springboot
springmvc 1,新增jar依賴 2,非web環境,程式的入口在main方法入口,而main函式的入口在listener中。初始化順序是listener先於filter先於servlet。因此要新增乙個listner。這裡就有疑問了,難道時至今日,我們還要去在web.xml中去新增listen...
docker部署部署心得
一 涉及檔案 centos centos7.tar.gz docker中centos映象壓縮包 docker.tar.gz docker 安裝包 jre 8u131 linux x64.rpm 生成cloudlicense映象時要用到 由於找不到openjdk,安裝映象,用這個替代 dockerfi...