page contents

~实践一下,用IDEA自动化部署Docker镜像,好像并没有想象中的那么难....

将工程打包,在idea Terminal中执行mvn clean package命令进行编译打包,打包后会在target目录下生成jar包。生成jar包后,可以在本地启动服务,进行测试。测试后,配置docker镜像制件命令。从Run->Edit Configrations进入配置界面。


1、Docker开启远程访问

[root@izwz9eftauv7x69f5jvi96z docker]# vim /lib/systemd/system/docker.service
#修改ExecStart这行
ExecStart=/usr/bin/dockerd  -H tcp://0.0.0.0:2375  -H unix:///var/run/docker.sock


attachments-2020-05-imlzOdj25eb9f51b0b032.jpg


#重新加载配置文件
[root@izwz9eftauv7x69f5jvi96z docker]# systemctl daemon-reload    
#重启服务
[root@izwz9eftauv7x69f5jvi96z docker]# systemctl restart docker.service 
#查看端口是否开启
[root@izwz9eftauv7x69f5jvi96z docker]# netstat -nlpt
#直接curl看是否生效
[root@izwz9eftauv7x69f5jvi96z docker]# curl http://127.0.0.1:2375/info


2、Intellij IDEA安装Docker插件


打开Idea,从File->Settings->Plugins->Install JetBrains plugin进入插件安装界面,在搜索框中输入docker,可以看到Docker integration,点击右边的Install按钮进行安装。安装后重启Idea。


attachments-2020-05-wleUU8pr5eb9f52abda53.jpg


重启后配置docker,连接到远程docker服务。

从File->Settings->Build,Execution,Deployment->Docker打开配置界面。


attachments-2020-05-KnCsqMMP5eb8ba3d032dc.jpg

3、spring boot服务Docker部署

 

3.1新建一个Spring boot工程,编写测试接口

attachments-2020-05-YRCkbR0n5eb9f53f63679.jpg


3.2修改pom文件,添加properties,添加plugin

<properties>
        <java.version>1.8</java.version>
        <docker.image.prefix>bozai</docker.image.prefix>
    </properties>


    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>1.0.0</version>
                <configuration>
                    <imageName>${docker.image.prefix}/${project.artifactId}</imageName>
                    <dockerDirectory></dockerDirectory>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                </configuration>
            </plugin>
        </plugins>
    </build>


3.3配置Dockerfile文件:在工程根目录下新建Dockerfile文件。

attachments-2020-05-yElYF5Br5eb9f551874c2.jpg


内容,如下:

FROM java:8
VOLUME /tmp
COPY target/demo-0.0.1-SNAPSHOT.jar demo.jar
RUN bash -c "touch /demo.jar"
EXPOSE 8080
ENTRYPOINT ["java","-jar","demo.jar"]


4、创建Docker镜像

 

将工程打包,在idea Terminal中执行mvn clean package命令进行编译打包,打包后会在target目录下生成jar包。生成jar包后,可以在本地启动服务,进行测试。测试后,配置docker镜像制件命令。从Run->Edit Configrations进入配置界面。

 

点击Docker,再点击+号,添加一个docker命令,输入Name,选择Server,选择Dockerfile文件,输入镜像tag,完成配置。

 

attachments-2020-05-ryRrc0aA5eb9f56074280.jpg


完成后,执行这个命令:

attachments-2020-05-4SEIAF3U5eb9f56e5c086.jpg

执行成功后,可以远程docker上看到这个镜像:

attachments-2020-05-QgFaZSz75eb9f57ac2f6d.jpg


执行docker ps可以看到,镜像已经生产容器开始运行:

attachments-2020-05-m5AD11vU5eb9f5a074319.jpg

打开浏览器,访问测试:

attachments-2020-05-VTONUhTd5eb9f5a8b177c.jpg


 

参考:

  • https://my.oschina.net/wuweixiang/blog/2874064
  • https://blog.csdn.net/sealir/article/details/81200662



attachments-2020-05-C1s1KQTN5eb8b2d4c7f39.jpg

  • 发表于 2020-05-11 10:06
  • 阅读 ( 1026 )

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
Pack
Pack

1135 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1316 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章