SpringBoot 与 Docker

一 Docker

一个虚拟化容器引擎,解决的事件是:开发者打包他们的应用和依赖到一个轻量级的,可移植的容器中,然后发布到任何一个 Linux机器上。容器采用沙盒机制,相互之间不会有任何接口,容器的开销极低。

Docker 的几个概念

  • 仓库 Registry:保存镜像 http://hub.docker.com
  • 镜像 Images:模板
  • 容器 Container: 启动镜像就是一个容器,启动是秒级的

Docker安装

CentOS7 上使用 yum install docker 即可

Docker 使用

docker -v 查看版本

centos7上面启动
systemctl start docker 启动
docker images 查看镜像
docker search XXXX 搜索镜像 ,也可以到网上搜索
docker pull mysql:5.5 下载镜像,不带后面版本号就是最新的
docker rmi 镜像id 删除镜像

docker 运行 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 后台运行
mysql:5.5 运行的镜像名称
后面是指定字符集

docker ps查看运行的情况
docker ps -a所有
docker ps -l最近

停止一个容器
docker stop 实例名称/实例 ID

SpringBoot

Spring-boot-starter-XXX 场景启动器
SpringBoot 通过一个主程序启动整个应用

SpringApplication的 run 方法中传入带有@SpringBootApplication 标记的类,这样该类将作为启动类

SpringBoot autoconfig 包

自动配置的是 XXXAutoConfiguration
默认规则属性 XXXProperties

自动配置也可以通过配置文件修改

docker +maven

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


  com.spotify
  docker-maven-plugin
  VERSION GOES HERE
  
    example
    java
    ["java", "-jar", "/${project.build.finalName}.jar"]
     
    
       
         /
         ${project.build.directory}
         ${project.build.finalName}.jar
       
    
  

链接远程 docker
首先指定远程 docker 位置


  http://ip:2375

image

需要开启2375端口

SpringBoot 与 Docker_第1张图片
image

SpringBoot 与 Docker_第2张图片
image

你可能感兴趣的:(SpringBoot 与 Docker)