Intellij IDEA 部署应用到容器服务 Kubernetes

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: Intellij IDEA 部署应用到容器服务 Kubernetes

image

前言

在之前的一篇文章中,我们介绍了 如何将一个本地的 Java 应用程序直接部署到阿里云 ECS ,有不少读者反馈,如果目前已经在使用阿里云容器服务 Kubernetes 了,那该如何配合这个插件部署应用呢?在本文中,我们来介绍 部署应用程序到阿里云容器服务 Kubernetes 。

关于容器服务 Kubernetes

容器服务 Kubernetes 版提供高性能可伸缩的容器应用管理能力,支持企业级 Kubernetes 容器化应用的全生命周期管理。容器服务 Kubernetes 版简化集群的搭建和扩容等工作,整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳的 Kubernetes 容器化应用运行环境。(摘自阿里云容器服务 Kubernetes 官网

本地开发

本文采用一个极其基础的样例《在 Web 页面打印 HelloWorld 的 Java Servlet 》为例,做代码工程的参考。

image

public class IndexServlet extends HttpServlet {
    private static final long serialVersionUID = -112210702214857712L;

    @Override
    public void doGet( HttpServletRequest req, HttpServletResponse resp ) throws ServletException, IOException {
        PrintWriter writer = resp.getWriter();
        //Demo:通过 Cloud Toolkit ,高效的将本地应用程序代码修改,部署到云上。
        writer.write("Deploy from Alibaba Cloud Toolkit. 2018-12-17");
        return;
    }
    @Override
    protected void doPost( HttpServletRequest req, HttpServletResponse resp ) throws ServletException, IOException {
        return;
    }}

源代码下载

上述代码就是一个标准的 Java 工程,用于在 Web 页面上打印一串“Hello World”的文案。

编写一个 Dockerfile 文件(下载),放置于工程根目录下

FROM tomcat:8.5.34-jre8
COPY target/javademo.war /usr/local/tomcat/webapps/

安装插件

阿里云提供了基于 Intellij IDEA 的插件,以方便开发人员能够高效的将本地 IDE 中编写的应用程序,极速部署到 容器服务 Kubernetes 中去。
插件主页:https://www.aliyun.com/product/cloudtoolkit

阿里云的这个 Intellij IDEA 插件的安装过程,和普通的插件大同小异,这里不再赘述,读者请自行安装。

配置插件首选项

安装完插件之后,按照如下路径进行首选项配置

顶部菜单 - Tools - Alibaba Cloud Toolkit - Preferences

出现如下界面,配置阿里云账号的 AK 和 SK,即可完成首选项配置。(如果是子账号,则填写子账号的 AK 和 SK)

image

设置本地 Docker 镜像打包
顶部菜单 - Tools - Alibaba Cloud Toolkit - Preferences - Alibaba Cloud Toolkit - Docker

image

部署

image

在 Intellij IDEA 中,鼠标右键项目工程名,在出现的菜单中点击 Alibaba Cloud - Deploy to CS Kubernetes...,可会出现如下部署窗口:

第 1 步

image

在 Image 标签页中,选择本地应用程序的 Context Directory 和 Dockerfile (通常会根据您本地的应用工程自动识别并设置);

选择容器镜像服务的地域、命名空间和镜像仓库,然后单击 Container 标签页。

说明:如果您还没有镜像仓库,在对话框右上角单击 Create a new repository 跳转到容器镜像仓库创建镜像仓库。创建步骤请参考容器镜像仓库文档

第 2 步

image

在 Container 标签页,选择容器服务 Kubernetes 的 Clusters(集群)、Namespace(命名空间)和 Deployment(部署),以及其中指定的 Container(容器)。

说明:如果您还没有创建容器服务 Kubernetes 的 Deployment,在对话框右上角单击 Create a new Kubernetes deployment,跳转到容器服务-Kubernetes 控制台创建 Deployment。创建步骤请参考容器服务 Kubernetes 版文档

点击 Run 按钮之后,即可完成本地应用程序向容器服务 Kubernetes 的部署。

image

开发者交流群

5685e931e06cd61faa41dee0ad46bf251fe56837

阿里云开发者工具交流 钉钉群




相关实践学习
通过容器镜像仓库与容器服务快速部署spring-hello应用
本教程主要讲述如何将本地Java代码程序上传并在云端以容器化的构建、传输和运行。
Kubernetes极速入门
Kubernetes(K8S)是Google在2014年发布的一个开源项目,用于自动化容器化应用程序的部署、扩展和管理。Kubernetes通常结合docker容器工作,并且整合多个运行着docker容器的主机集群。 本课程从Kubernetes的简介、功能、架构,集群的概念、工具及部署等各个方面进行了详细的讲解及展示,通过对本课程的学习,可以对Kubernetes有一个较为全面的认识,并初步掌握Kubernetes相关的安装部署及使用技巧。本课程由黑马程序员提供。   相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
7天前
|
Kubernetes Cloud Native API
深入理解Kubernetes——容器编排的王者之道
深入理解Kubernetes——容器编排的王者之道
25 1
|
11天前
|
存储 安全 Java
Java多线程编程中的并发容器:深入解析与实战应用####
在本文中,我们将探讨Java多线程编程中的一个核心话题——并发容器。不同于传统单一线程环境下的数据结构,并发容器专为多线程场景设计,确保数据访问的线程安全性和高效性。我们将从基础概念出发,逐步深入到`java.util.concurrent`包下的核心并发容器实现,如`ConcurrentHashMap`、`CopyOnWriteArrayList`以及`BlockingQueue`等,通过实例代码演示其使用方法,并分析它们背后的设计原理与适用场景。无论你是Java并发编程的初学者还是希望深化理解的开发者,本文都将为你提供有价值的见解与实践指导。 --- ####
|
18天前
|
监控 持续交付 Docker
Docker 容器化部署在微服务架构中的应用有哪些?
Docker 容器化部署在微服务架构中的应用有哪些?
|
18天前
|
监控 持续交付 Docker
Docker容器化部署在微服务架构中的应用
Docker容器化部署在微服务架构中的应用
|
5天前
|
Kubernetes Linux 开发者
深入探索容器化技术——Docker 的实战应用
深入探索容器化技术——Docker 的实战应用
31 0
|
7天前
|
JavaScript Linux 持续交付
深入探索容器化技术——Docker 的实战应用
深入探索容器化技术——Docker 的实战应用
32 0
|
13天前
|
Kubernetes 监控 安全
容器化技术:Docker与Kubernetes的实战应用
容器化技术:Docker与Kubernetes的实战应用
|
18天前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
59 2
|
8天前
|
Kubernetes Linux 开发者
深入探索容器化技术——Docker 的实战应用
深入探索容器化技术——Docker 的实战应用
36 5
|
11天前
|
运维 Cloud Native 云计算
云原生之旅:Docker容器化实战
本文将带你走进云原生的世界,深入理解Docker技术如何改变应用部署与运维。我们将通过实际案例,展示如何利用Docker简化开发流程,提升应用的可移植性和伸缩性。文章不仅介绍基础概念,还提供操作指南和最佳实践,帮助你快速上手Docker,开启云原生的第一步。

相关产品

  • 容器计算服务
  • 容器服务Kubernetes版