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 项目已经正常运行,想要外部访问接口的说,在华为云安全组需要开发对应的端口

相关推荐
阳小江1 小时前
Docker知识点
运维·docker·容器
极客柒2 小时前
RustDesk 开源远程桌面软件 (支持多端) + 中继服务器伺服器搭建 ( docker版本 ) 安装教程
服务器·docker·开源
方渐鸿4 小时前
【2025】快速部署安装docker以及项目搭建所需要的基础环境(mysql、redis、nginx、nacos)
java·运维·docker·持续部署·dockercompse
WCL-JAVA6 小时前
Docker快速安装MongoDB并配置主从同步
mongodb·docker·容器
下一秒_待续7 小时前
.Net8项目使用docker、docker-compose部署步骤
docker·容器·.net
mingyuewu9 小时前
MAC环境给docker换源
docker
GodGump10 小时前
dbgpt7.0 docker部署
运维·docker·容器
维度攻城狮12 小时前
实现在Unity3D中仿真汽车,而且还能使用ros2控制
python·unity·docker·汽车·ros2·rviz2
爱编程的王小美17 小时前
Docker基础详解
运维·docker·容器
白夜易寒17 小时前
Docker学习之容器虚拟化与虚拟机的区别(day11)
学习·docker·容器