弹性容器ECI实例及实战自动化部署vshell容器

前言:阿里云产品弹性容器ECI实例学习和实战部署vshell容器笔记

参考文章:https://help.aliyun.com/zh/eci/product-overview/what-is-elastic-container-instance
参考文章:https://help.aliyun.com/zh/eci/product-overview/scenarios
参考文章:https://cr.console.aliyun.com/
参考文章:https://help.aliyun.com/zh/eci/user-guide/enable-internet-access

阿里云弹性容器实例ECI

弹性容器实例(简称ECI)是阿里云结合容器和Serverless技术为您提供的容器运行服务。通过使用ECI,在阿里云上部署容器时,您无需购买和管理云服务器ECS,只需提供打包好的Docker镜像,即可在阿里云上运行容器。

从购买配置ECS再部署容器(ECS模式)到直接部署容器(ECI模式),ECI为您省去了底层服务器的运维和管理工作,让您专注于业务开发,提升开发效率。同时,您仅需要为容器实际运行消耗的资源付费,可以节约使用成本。

ECI支持业务对接的方式

ECI与业务系统的对接方式业务方式有4种,分别是如下所示

  • 通过阿里云ACK Serverless集群部署业务,支持基于Kubernetes的容器服务全托管,提供无需运维的Kubernetes集群能力,底层Pod资源全部使用ECI承载(推荐)

  • 通过阿里云ACK集群部署业务,为您的ACK集群提供额外的海量弹性能力(推荐)

  • 通过Virtual Kubelet对接您在ECS上或者线下IDC自建的Kubernetes集群,提供方便快捷的计算资源。

  • 通过OpenAPI对接您的业务系统,您可以根据需要,低成本地随时创建或释放ECI容器,无需担心并发和容量。

ECI支持什么情况下使用

参考文章:https://help.aliyun.com/zh/eci/product-overview/scenarios

弹性容器实例适用于容器形态下大部分业务场景,从弹性及成本角度,特别适用于在线业务的免运维托管、大数据计算任务(Spark、Presto)、事件驱动型业务和Job型业务,以及DevOps、机器学习、在线测试等各类场景。

当然也不局限于下面的这些情况,比如我自己这边的话可能需要搭建一个c2服务来短期运行,那么我这边也可以用到容器弹性实例来进行使用

ECI生命周期

使用ECI部署vshell容器

自定义vshell镜像

因为这边我想部署一个vshell的镜像来使用,当前的vshell目录如下

root@iZj6c9jajols8jtgh66tskZ:~/vshell# tree
.
├── Dockerfile
└── vshell
├── conf
│   ├── server.key
│   ├── server.pem
│   └── setting.conf
├── plugins
│   ├── AddUser.dll
│   ├── fscan.x64.elf
│   ├── gost.x64.exe
│   ├── gost.x64.so
│   └── mimikatz.x64.exe
└── v_linux_amd64

所以这边需要自己先编写Dockerfile打包vshell部署的镜像,如下所示

Dockerfile

# 使用Alpine Linux作为基础镜像
FROM alpine:latest
# 创建所需的目录结构
RUN mkdir -p /app/conf /app/plugins
# 将本地文件复制到容器中的对应位置
COPY vshell /app
# 设置工作目录
WORKDIR /app
# 暴露端口(这是容器内部的端口)
EXPOSE 80
EXPOSE 443
EXPOSE 8082
EXPOSE 8084
# 设置容器启动时执行的命令
ENTRYPOINT ["./v_linux_amd64"]

整体打包完镜像为566MB,如下图所示

本地测试运行docker run -d --name my-vshell-container -p 9002:8082 -p 9004:8084 my-vshell-app

访问和使用是正常的,如下图所示

上传镜像到阿里云镜像仓库ACR

这边创建好自己的镜像仓库,如下图所示

然后将自己的镜像打包上传到阿里云的ACR镜像仓库即可,如下所示

部署ECI

选择好对应的镜像仓库的镜像进行部署即可

公网访问

直接访问对应的外网弹性ip的端口,在vshell中暴露出来的两个端口分别是8082和8084

使用和上线同样正常,如下图所示

posted @   zpchcbd  阅读(39)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示