docker 快速入门:30分钟带你了解Docker
docker 快速入门:30分钟带你了解Docker<version>1.0.0</version><artifactId>docker-maven-plugin</artifactId></dependency><plugin><groupId>com.spotify</groupId>
接着通过你喜欢的IDE导入并打开项目,在pom.xml文件中添加依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<imageName>${docker.image.prefix}/${project.artifactId}</imageName>
<dockerDirectory>src/main/docker</dockerDirectory>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
编写一个controller文件:
@RestController
public class DockerController {
@RequestMapping("/")
public String hello() {
return "Hello Docker!";
}
}
现在本地运行一下,看看有没有问题。如果一切正常进入下一步。
2. 接下来我们需要将项目放到docker的环境中去打包
(1) 在虚拟机中安装jdk
yum -y install java-1.8.0-openjdk*
(2) 配置环境变量如下
vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64
export PATH=$PATH:$JAVA_HOME/bin
(3) 从Apache官网下载最新版本的maven
tar vxf apache-maven-3.5.4-bin.tar.gz
mv apache-maven-3.5.4 /usr/local/maven3
(4) 配置环境变量如下
export MAVEN_HOME=/usr/local/maven3
export PATH=PATH:MAVEN_HOME/bin
(5) 使环境变量生效
source /etc/profile
(6) 编写DockerFile文件
在main目录下添加一个docker目录并创建DockerFile文件,文件内容如下
FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD helloboot-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT ["java" "-Djava.security.egd=file:/dev/./urandom" "-jar" "/app.jar"]
(7) 接着在项目路径下使用maven打包
mvn package docker:build
如果中间发生构建失败可能的原因是你的项目名称和我的不一样,请仔细检查DockerFile文件,通常在第一次i构建中你可能会遇到各种各样的错误信息。放到网上查一下就可以了。
构建完成以后我们可以通过docker images查询一下镜像列表:
没错第一个镜像就是我们的项目。下面启动这个镜像并通过服务器的80端口来映射:
docker run -p 80:8080 -t springboot/helloboot
最后我们在本地通过浏览器直接访问虚拟机的ip,如果可以看到“Hello Docker!”
说明使用 Docker 部署 Spring Boot 项目成功!