2021-07-07 使用Idea一键部署SpringBoot项目到服务器Docker

环境准备

1.一个SpringBoot项目
2.服务器docker

2.1一键安装docker

curl -sSL https://get.daocloud.io/docker | sh
image.png

2.2启动docker

systemctl start docker
image.png

2.3 docker需要开放端口

vim /usr/lib/systemd/system/docker.service
在ExecStart=/usr/bin/dockerd 后面加上 -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock 
image.png

2.4重启docker

systemctl daemon-reload
systemctl restart docker

2.5测试端口是否开启成功

本机win+r 输入cmd控制台输入
telnet ip 端口
弹出小黑框代表成功
image.png

image.png

3.打开idea项目

创建dockerfile文件,注意你加入jar包需要和你的项目一样(springboot_docker_demo-0.0.1-SNAPSHOT.jar)

#使用jdk8作为基础镜像
FROM java:8
#指定作者
MAINTAINER tom
#暴漏容器的8088端口
EXPOSE 8088
#将复制指定的docker-demo-0.0.1-SNAPSHOT.jar为容器中的job.jar,相当于拷贝到容器中取了个别名
ADD target/springboot_docker_demo-0.0.1-SNAPSHOT.jar /job.jar
#创建一个新的容器并在新的容器中运行命令
RUN bash -c 'touch /job.jar'
#设置时区
ENV TZ=PRC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
#相当于在容器中用cmd命令执行jar包  指定外部配置文件
ENTRYPOINT ["java","-jar","/job.jar"]
image.png

我的pom文件

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.7.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>pyf.example.docker</groupId>
    <artifactId>springboot_docker_demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>springboot_docker_demo</name>
    <description>springboot一键部署docker</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <excludes>
                        <exclude>
                            <groupId>org.projectlombok</groupId>
                            <artifactId>lombok</artifactId>
                        </exclude>
                    </excludes>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>

3.1在idea中安装docker插件,重启idea

image.png

3.2配置docker

image.png
TCP socket输入服务器的ip地址和端口(ip+2375)
image.png

3.3配置对应项目

image.png

3.4配置对应的dockerfile文件和对应的端口号

image.png

配置启动打包项目,在框内输入clean,package


image.png

3.5启动

image.png
image.png

3.6访问网页,成功!

image.png

3.7查看服务器上的docker

image.png
image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容