IDEA、SpringBoot、Maven配置Docker

1、安装Docker插件

 

 

 

2、Docker开放2375端口

修改Docker配置,在ExecStart设置后加上-H tcp://0.0.0.0:2375

vim /lib/systemd/system/docker.service

 

 

防火墙开放2375端口,重启防火墙

firewall-cmd --zone=public --add-port=2375/tcp --permanent

systemctl restart firewalld

3、连接Docker

4、maven配置

<artifactId>hello</artifactId>
<version>0.0.1-SNAPSHOT</version>

 

<properties>
  <java.version>1.8</java.version>
  <docker.image.prefix>homer-test</docker.image.prefix>
</properties>

 

<build>
  <plugins>
    <plugin>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-maven-plugin</artifactId>
    </plugin>

    <!--使用docker-maven-plugin插件-->
    <plugin>
      <groupId>com.spotify</groupId>
      <artifactId>docker-maven-plugin</artifactId>
      <version>1.2.2</version>

      <!--将插件绑定在某个phase执行-->
      <executions>
        <execution>
          <id>build-image</id>
          <!--将插件绑定在package这个phase上。也就是说,用户只需执行mvn package ,就会自动执行mvn docker:build-->
          <phase>package</phase>
          <goals>
            <goal>build</goal>
          </goals>
        </execution>
      </executions>

      <configuration>
        <!--指定生成的镜像名-->
        <imageName>${docker.image.prefix}/${project.artifactId}</imageName>
        <!--指定远程 docker api地址 就是上面的服务器ip-->
        <dockerHost>http://xxx.xxx.xxx.xxx:2375</dockerHost>
        <!--设置目录,该目录下放Dockerfile-->
        <dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>
        <resources>
          <resource>
            <targetPath>/</targetPath>
            <directory>${project.build.directory}</directory>
            <include>${project.build.finalName}.jar</include>
          </resource>
        </resources>
      </configuration>
    </plugin>
  </plugins>
</build>

5、Dockerfile配置

#指定镜像,这里用网易云仓库的java8镜像
FROM hub.c.163.com/library/java:8-jre

# 挂载test-docker目录
VOLUME /tmp

# COPY or ADD to image
COPY hello-0.0.1-SNAPSHOT.jar app.jar

RUN bash -c "touch /app.jar"
#指定项目暴露的端口号,与项目配置一样,即容器配置的暴露端口
EXPOSE 8021
ENTRYPOINT ["java", "-jar", "app.jar"]

6、运行clean、package

 

 

 

 

 7、创建并运行容器

 

 

 设置容器名、端口映射

 

 

 

 8、在服务器上查看

 

 

 

posted @ 2020-12-29 15:31  阿迈  阅读(312)  评论(0)    收藏  举报