IDEA连接Docker部署微服务项目至阿里云服务器流程

IDEA连接Docker部署微服务项目至阿里云服务器流程

背景:阿里云服务器,使用IDEA,并且配置好docker-maven插件

  1. 服务器安装Docker,并开放连接端口

  2. 阿里云开放安全组2375端口,并设置ip限制

  3. IDEA首先需要连接Docker,file -> settings -> 搜索Docker
    在这里插入图片描述

  4. parent工程配置pom插件

        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>${java.version}</source>
                    <target>${java.version}</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.19.1</version>
                <configuration>
                    <!-- 默认关掉单元测试,不用手动关闭了 -->
                    <skipTests>true</skipTests>
                </configuration>
            </plugin>
        </plugins>
  1. 子项目服务配置插件和docker连接,只需要修改ip和端口
<plugins>
    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <configuration>
            <!-- 指定该 Main Class 为全局的唯一入口 -->
            <mainClass>com.dorking.eureka.EurekaApplication</mainClass>
            <layout>ZIP</layout>
        </configuration>
        <executions>
            <execution>
                <goals>
                    <!-- 将依赖到的包都放进去 -->
                    <goal>repackage</goal>
                </goals>
            </execution>
        </executions>
    </plugin>


    <plugin>
        <groupId>com.spotify</groupId>
        <artifactId>docker-maven-plugin</artifactId>
        <version>0.4.13</version>
        <configuration>
            <imageName>${project.artifactId}</imageName>
            <baseImage>openjdk:8-jdk-alpine</baseImage>
            <entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint>
            <resources>
                <resource>
                    <targetPath>/</targetPath>
                    <directory>${project.build.directory}
                    </directory>
                    <include>${project.build.finalName}.jar</include>
                </resource>
            </resources>
            <dockerHost>http://<!--ip-->:<!--port--></dockerHost>
        </configuration>
    </plugin>
</plugins>

  1. 点击右边maven 的parent 执行clean命令 然后执行package,将所有微服务打包
  2. 分别对每一个微服务点击右侧插件栏创建镜像

在这里插入图片描述

  1. 下载Docker for windows 用于执行docker-compose.yml文件,远程推送镜像

  2. 在服务的父工程目录下新建docker-compose.yml文件,并对服务进行线上的配置

# compose版本
version: '3' 

# 定义服务
services:

# 服务名称
  redis:
  	# 镜像名称
    image: redis
    # 容器名称
    container_name: redis
    # 需要映射的端口,多个往下排列
    ports:
      - 6379:6379
      - xxxx:xxxx
     # 需要在容器运行后,内部执行的命令
    command: redis-server --requirepass 123456
  eureka:
    image: eureka
    container_name: eureka
    # 当容器意外停止时,总是重启
    restart: always
    # 指定时区
    environment:
      TZ: Asia/Shanghai
    ports:
      - '6868:6868'
    deploy:
      resources:
        limits:
          # 容器内存上限400M
          memory: 400M
    # 从属网络
    networks:
      - back
# 自定义一个网络,使它们在同一网络
networks:
  back:
    driver: bridge

  1. 定义完之后,会出现按钮,点击即可(前提配置)启动创建好的镜像

  2. 使用Docker命令 docker ps 可以查看服务已经运行中

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值