Idea+docker通过dockerFile方式往华为云发布项目

一:前置说明

1.1 演示环境

  • JDK8
  • IDEA 2022.2.1
  • 华为云 CentOS 8.2 64bit
  • Docker 26.1.3
    注:华为云上已经安装了docker,能够这次拉取镜像等

二:Idea内的相关配置

2.1 docker插件安装

idea->File->settings 进入setting操作也安装docker插件。

安装插件方便相关的服务器配置及后面的dockerFile文件的编写。

2.2 idea内服务器SSH相关配置

idea->File->settings ->Tools 找到SSH 配置目录,新增对应的服务器信息。

Host:服务器公网ip

Port:默认的端口 22

Username 用户

Password 密码

SSH配置测试:

2.3 Idea内Docker进程配置

docker进程和SSH配置的服务器关联上,才能在后续操作服务器上的docker。

2.4 基础的SpringBoot项目搭建 后编写DockerFile文件

在要部署的springboot项目下创建DockerFile文件

示例中Springboot项目Pom docker相关的核心配置

xml 复制代码
<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 http://maven.apache.org/maven-v4_0_0.xsd">
    <parent>
        <artifactId>dolphin-jinyi</artifactId>
        <groupId>com.dolphin.jinyi</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
    <artifactId>dolphin-jinyi-gateway</artifactId>
    <packaging>jar</packaging>
    <name>dolphin-jinyi-gateway</name>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <spring.boot.version>2.6.11</spring.boot.version>
    </properties>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>${spring.boot.version}</version>
                <configuration>
                    <includeSystemScope>true</includeSystemScope>
                    //指定项目的启动类
                    <mainClass>com.dolphin.jinyi.gateway.DolphinJinyiGatewayApplication</mainClass>
                </configuration>
                <executions>
                    <execution>
                        <id>repackage</id>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.*</include>
                </includes>
            </resource>
        </resources>
    </build>
</project>

2.5 DockerFile文件编写

java 复制代码
#jar包基于jdk,war包基于tomcat
FROM openjdk:8-jdk
# 作者
MAINTAINER hc

#将上下文中名字为dolphin-jinyi-gateway-1.0-SNAPSHOT.jar复制到工作目录,同时修改其名称为dolphin-jinyi-gateway.jar
ADD target/dolphin-jinyi-gateway-1.0-SNAPSHOT.jar /docker-app/dolphin-jinyi-gateway.jar
CMD ["--server.port=8010"]
#暴露当前容器内部暴露的端口 (同项目里的运行端口)
EXPOSE 8010
#启动命令
ENTRYPOINT ["java","-jar","/docker-app/dolphin-jinyi-gateway.jar"]

2.6 项目部署操作

maven 栏将部署的项目package,得到2.5中的target/dolphin-jinyi-gateway-1.0-SNAPSHOT.jar

2.7 idea端配置远程Docker


2.8 Idea 通过dockerFile一键远程部署发布项目



2.9 项目已经正常运行,想要外部访问接口的说,在华为云安全组需要开发对应的端口

相关推荐
zyu675 小时前
03-Docker存储和网络
网络·docker·容器
牛奔5 小时前
Docker Compose 两种安装与使用方式详解(适用于 Docker 19.03 版本)
运维·docker·云原生·容器·eureka
青州从事52111 小时前
20260108【mac】【brew】【docker】安装
macos·docker·eureka
菜鸟思维12 小时前
优化NextJs 项目的Docker 镜像 从3.62G 优化到 296.85M
docker
怣疯knight13 小时前
Docker Desktop 4.55.0版本安装成功教程
windows·docker
东方佑13 小时前
使用Docker Compose一键部署OnlyOffice:完整指南与配置解析
运维·docker·容器
赵文宇(温玉)14 小时前
Docker的价值、特点、创新与关键技术
运维·docker·容器
Coder码匠15 小时前
Docker Compose 部署 Spring Boot 应用完全指南
spring boot·docker·容器
可爱又迷人的反派角色“yang”16 小时前
k8s(二)
linux·运维·docker·云原生·容器·kubernetes·云计算
计算机小手16 小时前
内网穿透系列十六:使用 wg-easy 快速搭建基于 wireguard 的虚拟局域网,支持Docker部署
经验分享·网络协议·docker·开源软件