使用Docker部署Spring Boot项目

环境搭建

安装Docker

检查系统内核版本

Docker运行在CentOS 7上,要求操作系统为64位,内核版本为3.10及以上。
确认本机已经安装了满足要求的Linux内核。使用命令uname -r来检查内核版本信息。

 

 

在CentOS 7中安装Docker

使用命令yum install -y docker-ce安装Docker,“-y”表示不询问,使用默认配置进行安装。

启动Docker服务,并设置为开机自启动

使用下列命令:

systemctl start docker.service
systemctl enable docker.service

备注:有条件可以在安装一个宝塔:

  安装命令:yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh 6dca892c

查看版本信息

输入docker version,返回版本信息表明Docker安装成功。

 

 

 

安装Maven和配置阿里云镜像

下载Maven

wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz

解压和移动

tar vxf apache-maven-3.5.4-bin.tar.gz 
mv apache-maven-3.5.4 /usr/local/maven3

配置环境变量

打开环境变量vim /etc/profile,添加如下内容:(vim不可用可以用vi)

MAVEN_HOME=/usr/local/maven3
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin

保存并退出:wq

刷新环境变量的配置使其生效:source /etc/profile

查看版本信息

使用命令mvn -v进行查看

 

 

 

 使用mvn package命令进行打包,却报错,提示连接被拒绝。

 

 

 解决办法:给Maven配置阿里云镜像
切换到maven安装目录下面,打开settings.xml文件,在<mirrors>标签里面添加:

<mirror> 
    <id>alimaven</id> 
    <name>aliyun maven</name> 
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url> 
    <mirrorOf>central</mirrorOf> 
</mirror> 

  

Spring Boot项目添加Docker支持

添加Docker支持

在 pom.xml中添加Docker镜像名称

<properties>
    <docker.image.prefix>springboot</docker.image.prefix>
</properties>

添加 Docker插件:

 <!-- docker插件 -->
        <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>

编写Dockerfile文件

在目录src/main/docker下创建Dockerfile 文件,Dockerfile 文件用来说明如何来构建镜像。

FROM java:8
VOLUME /tmp
ADD docker-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
docker 打包文件名称。要与项目名称一至,否则下面docker build 会出错。

 

部署Spring Boot工程

 

将工程代码 docker 拷贝服务器中,进入项目路径下进行打包测试。

 

打包:mvn package
运行:java -jar target/spring-boot-docker-1.0.jar

 

项目启动成功,说明环境配置没有问题,接下来可以使用Dockerfile构建镜像。

 

 构建Docker镜像mvn package docker:build。可以看到docker镜像构建成功,仔细看日志,会发现四个步骤和Dockerfile中的指令是一一对应的。

使用docker images命令查看构建好的镜像:

 

运行docker镜像:docker run -p 8080:8080 -t springboot/nihaoshijie

 在本机浏览器进行访问,可以看到返回结果,说明部署成功。

转载:https://www.cnblogs.com/sgh1023/p/11079003.html

 

 

posted @ 2021-08-20 15:51  疯狂编码的丹燁  阅读(255)  评论(0)    收藏  举报