VKube使用手册

如何购买v-kube服务

注册/登陆v-kube

第一次进入v-kube (opens new window)会定向到注册页面

alt text 一般地,使用系统随机助记词,只需输入设置的密码便可完成用户的注册。

登录

已经有VKube账号的,直接输入密码进行登录

alt text

查看可购服务

如下图所示,点击“Purchase”,出现可以可购买的服务,点击蓝色按钮order进入到购买配置,自行选择配置。

alt text

建立订单

如下图所示,目前有region,持久存储Persitent storage,端口选择Port specification,Resource Unit和购买时长Duration等选择。选择完配置之后点击Create按钮创建一个订单(仅包含一个服务,如需同时购买多个不同配置的服务,可以逐一添加至购物车再进行统一购买)

alt text

如下图所示,可在右上角购物车查看购物清单。此时在左侧打勾选择多个订单数据,然后点击Create按钮就会创建包含多个服务的订单。

alt text

订单详情

点击“My Orders”,查看订单详情,可以看到哪些订单已经付款,哪些订单未付款,点击“Pay”按钮会出现付款弹窗

alt text

付款弹窗

显示该订单价格,支付方式选项(USDV, VSYS),支付余额检查,订单ID等,点击Pay按钮后进入付款确认

alt text

已购服务

点击导航“My Services”可查看已购买的服务:Token(密钥),Refund(退款),Renew(续费)

alt text

如何使用v-kube服务

v-kube控制台

如下第一张图所示,在“My Services”页面点击Token按钮复制token。然后到“Containers”页面下导入token查看container,如下第二张图所示。每个token对应一个Container。需要注意的是,Token只是保存在本地的缓存里面,这些token是以明文的形式存储在浏览器的local storage里面,清空浏览器缓存时这些数据将消失。添加和删除token并不会对后台数据以及Container产生影响,但是点击部署后,Container将会按照用户的配置部署该Container。

my services

my services

Container列表结构

container area 如上图所示,Container菜单栏有三个主要区域。

区域1:

左侧包括一个service搜索框,和一个service status条件筛选框。右侧,有Refresh按钮、Import按钮和Manage按钮。下面详细介绍各个按钮的作用。

  • Refresh按钮:刷新列表中所有container的状态。

  • Import按钮:导入token。

  • Manage按钮:

    • ImageHub按钮:点击ImageHub按钮然后再点击“Save Account”,将会出现下图所示的弹框,点击红色箭头所指的倒三角,将会看到可以选择的选项,为其添加账号和密码信息,这个信息将由系统报错。可以选择不设置,这样以来,你每次部署私有镜像的时候都需要填写一次账号和密码。 imagehub button

    • Synchronize按钮:使用不同的浏览器或者两台不同设备登录同一个账号,通过点击“Containers”左侧菜单栏,你看不到任何数据。这时候需要点击Synchronize按钮进行同步,把远端的数据同步过来。

区域2: 作为一个表头,说明区域3的每一列数据的含义。“Service ID”代表这个订单的服务号,“Container Status”指的是pod的状态,一般有Pending,Running, CrashLoopBackOff等等。 “Service Status”指服务当前的运行的状态(旁边的信息图标是用来打开弹窗显示详细的状态数据)。“Actions”区域提供对于container或者本地token的操作功能按钮。对于区域3中每一条数据的Actions,如果是service处于“Pending”时,用鼠标点击三个点,会展开一个小弹框,显示有DeployAliasContactPolicyDelete按钮。如果是成功部署后的container,可操作的按钮将会变多。

  • Deploy按钮: 如果是未部署的container会显示deploy的按钮。点击deploy将会打开一个弹窗,用于部署container。成功部署过后Container Status将会显示Running,Actions区域也不再显示Deploy按钮,而是其他的操作按钮。

  • Alias按钮:对于某个container,如果想要更新其内部访问端口和访问名。可以使用这个按钮,这样可以再同一个地区(region)内,都可以使用你设置的别名:端口来访问你的这个服务。

  • Contact按钮:对于某个服务,绑定邮箱邮箱之后,当这个服务出现任何异常的情况,会有相关的消息通知。例如服务过期了,或者进行Restart操作等。针对绑定邮箱操作,也可以在用户层面绑定。优先级是服务里面的邮箱优于用户层面的邮箱,例如,你购买有3个服务,其中一个绑定了邮箱A,用户层面绑定了邮箱B,对于绑定了邮箱A的服务,会发送相关通知到邮箱A,而其他2个服务将会发送通知到邮箱B中。如下图,点击用户头像,Account中可以绑定邮箱。 container status

  • Policy按钮:这个网络策略相当一个白名单,具体来说就是在同一个region内,哪一个服务可以访问当前这个服务。点击policy后再点击“Add Rules”,添加serviceID,最后点击Create按钮即可。那么只有添加的这些ServiceID的服务能访问你当前的这个服务。

  • Delete按钮:会将Local Storage内的token删除,不会影响远端container的运行。

区域3:

对于区域3中每一行代表的是一个contianer,也可称之为一个service。点击每个"Service ID"左侧的箭头图标可以打开折叠面板来查看订单详情,如下图所示。下面详细介绍下每个字段的含义: container status

Service Name:container对应的服务名称

Created Time:订单创建时间

Expired Time:服务到期的时间

Service Duration:可以使用服务的总时长

Address:订单创建人的VSYS coin钱包地址

Recipient:服务供应商用于收款的VSYS coin钱包地址

Service Option: 黑色区域显示container的资源配置信息, 属性名旁边的箭头图标可以用来折叠或打开显示面板。 Number of Port:container可被外部访问的端口数. Ram:container所在服务器分配给container的固定RAM大小, Port Sepcification:container的host端口定义类型,分为User Specified Service Port(即用户自定义,从可用的端口中选择), Ramdomized Port(系统自动分配给container端口号)。

Status :service的状态,Pending代表的是服务可部署,Running代表服务已经成功运行,Deleted代表服务已经过期不可再使用。

Container状态弹窗

如下图所示,点击Container Status状态旁边的绿色按钮,会出现状态弹窗。

  • 显示所有的container的状态信息,其中包含container的历史状态,配置信息和当前状态

  • 弹窗标题处显示container的Service ID,下方区域可以上下左右滑动查看json格式的状态信息

container status operation

container status detail

Container部署弹窗

左侧菜单栏Containers完成Import token之后,会看到有新的一条数据,对应的Service Status显示状态为ServicePending,对应Container的Actions 区域会显示Deploy按钮。

部署前 如下图所示,点击Deploy按钮进入到填写镜像信息页面进行填写。

alt text

部署步骤 1.如下图所示:

alt text

  • 第一步,选择你要部署的镜像属于DockerHub还是Github镜像库;

  • 第二步,是否是私有镜像,如果是,需要在旁边的方框打勾,然后填写账号和密码信息;以下是镜像格式的说明:

    • 公有镜像:Dockerhub公有镜像,推荐使用格式为:镜像名:tag(如:nginx:latest),Github公有镜像,推荐使用格式为:账户名/镜像名:tag
    • 私有镜像:Dockerhub私有镜像格式为:账户名/镜像库:tag,Github私有镜像格式为:账户名/镜像名:tag。对于私有镜像,需要填写对应镜像库用户名和密钥,密钥推荐使用PAT(Personal Access Token)。部署前会到相应仓库地址查询镜像,因此你需要保证对应tag的镜像在镜像仓库里是可读的;如下图所示,左侧红色框内会显示你填写的镜像是否存在。打勾表示存在,否则表示镜像找不到,请检查填写的镜像格式是否正确。 alt text
  • 第三步,填写容器的名字,这个不能乱写,需要符合一定的规则,容器名称可以包含字母(a-z,A-Z)、数字(0-9)和连字符(-),并且不能以连字符开头或结尾。上面图右侧红色会判断你填写的名称是否符合规范。如果部署多个镜像,这里的name不能相同。比如想要部署3个不同的镜像,3个name都不能相同。

2.可选项说明:

  • 添加Port资源:
    • 这里设置成功后将会完成host和用户container之间的端口映射,用户服务就可以在互联网上通过HostIP:hostPort进行访问了。
    • 点击按钮“+Port”添加container port和host port(必须是一一对应的映射),下方文字1 host port available指可继续添加的host port数量。 port数量由 Service Option中Number Of Port 决定。用户可以使用小等于Number Of Port数量的端口。系统会检测该region中host port资源是否有效,如果所填被占用,用户可填写新的host port。
  • 添加配置文件资源:
    • container服务读取的外部配置文件,避免如果在镜像中使用了配置文件,在需要更改配置文件时对镜像进行重新构建。
    • 点击Add Config按钮,在配置文件的编辑弹窗中,需要填写配置文件的名称(包含文件的绝对路径)Config Path和内容Config Content。点击Confirm按钮,系统会将配置文件内容保存到用户container前面所指定的路径当中。
  • 添加环境变量资源:
    • VKUBE的环境变量和linux的环境变量概念一样,可以设置容器运行时的环境变量。
    • 点击按钮Environment Variables添加container部署的环境变量:名称和值
  • Advance
    • Command,其概念和docker container中的Command概念一样,可以设置容器启动时执行的命令。
    • Argument,其概念和docker container中的Argument的概念一样,可以设置容器启动时执行的参数。

container-deployment

3.点击Deploy按钮部署,提交部署指令前网页会校验每一项的输入,验证成功便可提交部署申请。部署成功弹窗关闭,会弹出一个部署成功的Alert提示框。 否则保持弹窗打开状态,并弹出部署失败的Alert提示框。

部署成功后 如下图所示:可以看到服务的状态由ServicePending变为了ServiceRunningContainer Status的状态由Pending变为了Running,另外Actions操作区的可选择的操作也变多了 alt text

从应用市场部署应用

为了简化部署流程并帮助非专业用户,V-Cloud 提供了一个 应用市场 (App Catalog),其中包含了热门应用的预制配置模板。
用户可以在应用市场页面中浏览各类镜像及其对应的部署配置,直接使用即可。

此图展示了 V-Cloud 的应用市场界面,用户可以浏览热门镜像和预设配置模板,并支持快速部署。

点击任意应用卡片可查看详细信息,包括支持的镜像标签、存储需求以及环境变量等。

此图展示了 V-Cloud 的应用详情面板,用户可以查看镜像来源、所需配置以及部署选项。


快速部署

  1. 点击目标应用镜像旁的 Quick Deploy 按钮;
  2. 选择要部署的镜像标签(Tag);
  3. Containers 页面中选择一个处于 Pending 状态的目标 Pod;
  4. 点击 Deploy 开始部署。

部署完成后,可返回 Containers 页面,在对应的 Pod 中查看已部署的应用镜像及相关配置。


从容器面板中部署

你也可以在容器的 Deploy 面板 中直接部署:

  1. 打开 App Catalog 标签页;
  2. 选择想要的镜像配置;
  3. 点击 Use this configuration 将其应用到当前容器的配置选项中;
  4. 然后点击 Deploy 即可开始部署。

部署完成后,打开容器详情页即可看到刚刚部署的镜像配置。


💡 提示:
如果所选镜像需要持久化存储,请确保目标 Pod 支持持久化卷(Persistent Storage)后再进行部署。


Container相关操作

  1. 如下图所示,部署完成后,Actions区域可以对其containers进行的操作有:Restart,Stop,Config,Redeploy,Domain,Contract,Delete的操作;Notice区域可以看到消息提醒,例如容器发生异常奔溃后,你会收到消息;Containers区域可以对某个容器进行操作,例如更新软件镜像版本,监控某个容器使用的内存,CPU使用的情况等

alt text

Restart

点击Restart操作,重启。执行这个操作,所有属于这个服务的容器都会先关闭,然后再重新启动。重启之后,之前容器的log以及其他的数据将被删除,如果不想数据在重启后删除,应当使用持久化功能对用户指定的某一个路径进行持久化。

Stop

点击Stop操作,相当于把当前的服务里面的container都关闭了,想要再次启动, 可以点击Actions区域,点击Start按钮即可。需要注意的是,Stop操作后,并没有停止计费。例如,你买了一个2小时的服务,8:00部署成功,10:00过期,在9:00你执行了Stop操作,9:30你重新Start,但过期时间并没有延长至10:30,过期时间还是10:00,即下图的End Time不会改变。如下图所示,可以看到,Stop操作过后的Service,Container Status变为Pending,Service Status变为ServiceStop。

alt text

Config

点击Config操作,可以对container的配置文件内容和环境变量进行更改操作。

  • 用户可以选择某一个container中的某一个你想更改或者查看的配置文件。修改配置文件,可以进行手动配置,也可以选择上传文件。需要注意的是,上传文件操作是读取文件到前端,最终配置生效还需要点击Confirm按钮。

  • 环境变量手动配置,点击+,增加配置,点击-,减少配置,也可以选择文件上传,如下图所示: config first

config second

Redeploy

重新部署意味着你可以任意修改部署信息来作为一次新的部署。部署的参数意义和和Deploy一样。例如:第一次部署了nginx服务,redeploy的时候可以部署为redis服务,具体的部署步骤跟第一次一样。需要注意的是,重新部署后,之前部署的containers的Log会被删除。

Bind Domains

VKUBE的域名服务功能需要用户在部署了自己的服务之后,把自己的域名配置(比如A Record)到nodeIP,nodeIP为对应用户服务所在机器上的IP地址。完成这一步之后,就可以使用VKUBE的域名服务功能,来帮助代理用户的服务了。设置信息如下所示,当完成设置后,就可以通过用户域名在Internet上,去访问在VKUBE上所部署的用户服务了。域名绑定功能分为两种模式,一种是Basic,另一种是Advance的模式。

Basic模式 container域名绑定所支持的操作

  1. 新增(支持绑定多域名):新增用户服务和用户域名之间的代理关系,使得用户域名可以在Internet上,去访问在VKUBE上所部署的用户服务了。对同一个用户服务,只要用户配置了多个域名映射(比如A Record),可以支持绑定多个域名。

  2. 'Unbind All'全部解绑:一次性解绑所有绑定在VKUBE的域名,注意这里只会接触在VKUBE中用户服务和用户域名之间的代理关系,不涉及用户域名映射的配置。

  3. 单个解绑

参数解释:

  • Domain:需要绑定到VKUNE的用户域名,例如:www.example.com
  • Container Port:用户容器所监听的端口号,例如:80
  • HTTPS:是否使用VKUBE提供的Letsencrypt生成的免费证书,如果选择了,系统会自动申请并绑定证书。

此图显示 VKube 中的“域名管理”对话框,其中“基本”选项卡处于活动状态,显示“管理域名”表单,用户可以在其中输入域(例如 example.com)、指定容器端口(默认为 80)、切换 HTTPS 证书使用,并执行确认或删除域条目等操作,以及“添加域名”和“全部解除绑定”按钮,以及有关 DNS 配置要求的说明。

Advance模式 container域名绑定目前所支持的域名管理平台有aws的Route53,Cloudflare。 用户需要提供所使用的域名管理平台所对应的 Credentials,以供VKUBE服务进行验证用户是否拥有此域名,并且完成证书的生成操作。 在此模式下的,可以允许用户设置通配符的域名形式,并且在Cloudflare下管理的域名,可以兼容使用Proxy DNS的模式。

所支持的操作:

  1. 新增(支持绑定多域名):新增用户服务和用户域名之间的代理关系,使得用户域名可以在Internet上,去访问在VKUBE上所部署的用户服务了。对同一个用户服务,只要用户配置了多个域名映射(比如A Record),可以支持绑定多个域名。
  2. 删除:删除用户服务和用户域名之间的代理关系。
  3. Delete Provider: 删除该域名管理平台在VKUBE上的所有信息,包括credentials,域名和容器端口之间的映射关系等。 此图显示 VKube 中的“域名管理”对话框,其中选择了“高级”选项卡,显示配置域提供商的选项,例如 Cloudflare(需要 API 令牌)和 Route53(需要 AWS 访问 ID 和访问密钥),每个选项都有一个用于添加和管理域、端口和操作的部分,底部有一个“绑定”按钮以完成提供商配置。

Alias

VKUBE的Alias功能可以给用户服务起别名,在同一个region中,用户的不同服务可以通过这个别名进行通信。

参数解释:

  • Alias: 用户可以填写自己喜欢的或者特别意义的字符,作为服务的别名。
  • Alias Port: 作为用户上面填写别名所配套的端口号,例如:80
  • Container Port: 用户服务程序所监听的端口号
  • Protocol: 用户服务程序所使用的网络协议,有TCP和UDP两种。

例子:

Alias mongo-url
Alias Port 27017
container Port 27017
Protocol TCP

当你完成设置后,在同一个region中,在VKUBE中的服务,就可以使用mongo-url:27017访问该服务了。

注意: 如果用户部署了网页服务,在浏览器中使用别名访问(比如:mongo-url:27017),那是不能访问得到的。

Contact

VKUBEContact功能为该用户服务绑定邮箱,当服务出现异常情况,会有相关的消息通知。目前将会和VKUBENotice信息同步,即Notice有什么新的信息,如果设置了邮箱,会发送给这个邮箱。

参数解释:

  • Your Email address: 用户可以填写自己的邮箱地址,作为服务的联系方式。
  • Verification code: 系统会发送验证码到这个邮箱,用户需要填写验证码,点击Verify Code按钮,绑定邮箱。

alt text

Delete

点击Delete按钮,就会把所操作的服务从当前页面中删除。该操作不会涉及服务器的任何变动,仅仅只是在用户端浏览器进行移除该用户服务的可视信息而已。如果需要恢复,需要重新到My Services中复制Token再到Containers页面进行Import,即重新导入。

Policy

VKUBEPolicy功能提供了一个白名单机制,可以控制不同服务之间的访问权限。一旦创建,除了该白名单中指定的服务,所有访问该服务的请求将会受限。比如创建了一个空白的白名单,那么没有任何服务可以访问该用户服务了。

操作流程:

  1. 点击Policy按钮,然后点击Add Rules按钮,在Add Rules下,有三种选项:
    • Single Service:填写User Service ID,即允许此ID服务访问设置了该Policy的服务
    • Services of Onwer:填写Address,允许一类的服务访问设置了该Policy的服务,此类服务均是由Address所有
    • Specific Service of Owner:填写User Service ID和Address,允许指定的服务ID和Address的服务访问设置了该Policy的服务
  2. 完成上述配置后,点击confirm,在主配置窗口,会看到刚刚所配置的信息,如果还想增加其他规则,可以继续点击Add Rules按钮。如果已经确认无误后,点击Create Policy按钮,完成Policy的创建。
  3. 也可以不添加Rule,直接创建Policy,这样所有服务都被禁止访问该用户服务。

Notice

VKUBENotice功能可以查看用户服务的一些状态的公告,例如:服务Out Of Memory的发生,服务快过期的提醒。如果用户关联了邮箱,系统会自动发送公告到邮箱。如下图所示:

alt text

单个container操作

Containers右边的倒三角中,就会出现弹窗,显示这个服务实际部署的Containers list,针对每个container,有LogMonitorUpgrade这三个操作,如下图所示:

alt text

Log

点击Log按钮,然后可以看到这个container的log,如下图所示:

alt text

  • Tail Lines: 默认为10,将会展示给用户的日志的行数
  • Follow:默认不选中,如果选中,将会持续跟踪日志的变化,此时将不受行数的限制
  • Log time range:默认为空,可以选择展示日志的时间范围
  • Reset:点击Reset按钮,将会清空日志内容
Monitor

点击Monitor按钮可以看到当前container所占用的内存,网络资源等信息。如下图所示:

alt text

Upgrade

点击Upgrade按钮可以对镜像进行更新。 需要注意:

  • 升级会把你的服务重启了,请慎重。
  • 升级镜像是对同一个镜像进行版本升级,比如你刚开始运行的镜像是nginx,你更新的时候必须也是nginx,只是后面版本的不同。
  • 私有镜像还是要填写账号密码,请参考上面的部署步骤。如下图所示: alt text

Tool Injection

该图展示了VKUBE中的工具注入功能,说明了设置界面,用户可以从三个可用工具中选择:sshd、ttyd和rsync。它突出了配置这些工具的选项,包括必要参数的输入字段,如目标容器、SSH公钥、TTYD用户名和TTYD密码,使用户能够设置所需的工具以进行远程访问和同步。Action中点击Tool Injection,就可以进入设置页面,VKUBE将提供注入工具的功能,使用此功能,用户目前可以选择三个工具:

  • sshd:sshd(Secure Shell Daemon)是 OpenSSH 提供的 SSH 服务器进程,允许远程用户通过 SSH 协议安全地连接到 Linux 服务器。

  • ttyd:ttyd 是一个可以将命令行终端(TTY)通过 WebSocket 映射到网页的工具,使得用户可以通过浏览器访问服务器终端。

  • rsync:rsync(Remote Sync)是一个高效的远程同步工具,可用于本地和远程文件同步,支持增量复制和压缩传输。

VKUBE将会根据不同的用户选择做出以下的配置:

  • 选择sshd:VKUBE将会帮助用户在指定的某一个container中,下载并运行sshd,sshd只能通过public key/private key的形式进行验证加密,public key将会写入container的环境变量当中。此后,用户容器就会启动sshd,而用户可以通过ssh登录用户所指定的容器。

  • 选择ttyd:VKUBE将会帮助用户在指定的某一个container中,下载并运行ttyd,ttyd将会启动一个web网页形式的程序,可以让用户在网页上连接到对应的container上,用户需要用户填写用户名和密码,并且密码需要满足:至少一个大写字母,至少一个小写字母,至少一个数字,至少一个特殊字符。

  • 选择rsync:需要启用sshd才可以启用,VKUBE将会帮助用户在指定的某一个container中,下载并使用rsync。

VKUBE通过脚本的运行和用户的选择配置来进行下载并运行。

注意:VKUBE会尽力帮助用户下载和运行sshd,但是目前的测试当中比较新版本的ubuntu和apline、Debian为基础的镜像是合适的,其他的linux发行版操作系统有可能会不成功。而在Debian中,ttyd的下载是不行的。

该图展示了VKUBE中工具注入功能的设置页面,用户可以点击启用不同的工具以供其容器使用。该界面允许用户配置其选择,增强了容器化应用程序的功能性和可访问性。 如上图点击进入设置界面可以看到,用户可以选择启用不同的工具。

该图展示了VKUBE中启用sshd、ttyd和rsync工具的配置界面,突出了用户必须填写的必要参数。包括目标容器、SSH公钥、TTYD用户名和TTYD密码的字段,确保用户提供必要的信息以成功为其容器设置这些工具。 以上述配置为例说明,此例子启用了ssh, ttyd, rsync三个工具,此时需要选择和填写参数:

  • Target Container: 本次启动工具所在的container
  • SSH Public Key: 本次ssh通信所使用的public key,此将会通过环境变量VKUBE_SSH_PUB_KEY传入container当中
  • TTYD Username: 本次ttyd需要用户要有账户和密码,所以强制用户填入用户名,如果不存在则会在container中创建用户以及密码,如果以及存在了该用户,则会更新此次的密码。此将会通过环境变量VKUBE_TTYD_USER传入container当中
  • TTYD Password:本次ttyd需要用户要有账户和密码,密码需要符合,至少一个大写字母,至少一个小写字母,至少一个数字,至少一个特殊字符,不少于8个字符的要求。此将会通过环境变量VKUBE_TTYD_PASSWORD传入container当中

配置成功后,用户的服务将会重启并且启用以下的工具,需要等待一段时间服务的重启,并且可以看到此次启用工具的信息如下:

该图展示了在VKUBE中成功配置和启用工具后的信息显示,显示了已激活工具的状态。用户可以查看已启用工具的详细信息,确认服务已重启并准备好使用,以及任何相关的访问信息或说明。

Access Info一栏中,可以看到访问的方法以及限制如下:

该图展示了VKUBE中的访问信息部分,详细说明了用户的各种访问方法和限制。包括SSH和Rsync命令示例,以及如何用用户特定信息替换占位符的解释,还有用于网页访问的TTYD URL,为用户提供必要的指示,以安全地连接到他们的容器。

  • SSH Command: ssh -i $YOUR-PRIVATE-KEY -o ProxyCommand="openssl s_client -quiet -servername %h -connect ssh-67e9f03c2de346d39fe0a35f.europe.vkube.vcloud.systems:443" root@ssh-67e9f03c2de346d39fe0a35f.europe.vkube.vcloud.systems
  • 解释:用户将替换掉自己的$YOUR-PRIVATE-KEY文件路径,按照此命令就可以访问了。
  • Rsync Command:rsync -avz -e "ssh -i $YOUR-PRIVATE-KEY -o ProxyCommand='openssl s_client -quiet -servername %h -connect ssh-67e9f03c2de346d39fe0a35f.europe.vkube.vcloud.systems:443'" /local/path/ root@ssh-67e9f03c2de346d39fe0a35f.europe.vkube.vcloud.systems:/remote/path/
  • 解释:用户将替换掉自己的$YOUR-PRIVATE-KEY文件路径,把/local/path/换成本地的文件路径,/remote/path/替换成container上的文件路径,按照此命令就可以完成从本地传输文件到远端的容器上了。其他的用法可以查看rsync的使用方法。
  • TTYD URL:https://ttyd.europe.vkube.vcloud.systems/67e9f03c2de346d39fe0a35f
  • 解释:点击按钮可以跳转页面访问该链接,需要填写用户名和密码进行登录。

Tool Compatibility Matrix

Ubuntu-based image Alpine-based image Debian-based image Other
sshd Yes Yes Yes Unknow
rsync Yes Yes Yes Unknow
ttyd Yes Yes No Unknow

如果想关闭本次tool injection的使用,或者想更换配置的container或者配置的参数,需要先关闭本次tool injection,再重新配置和启动,如下图所示:

该图展示了在VKUBE中禁用当前工具注入功能的过程,强调用户在对容器或参数进行任何更改之前,必须首先禁用现有配置的必要步骤。此过程确保用户能够有效管理和重新配置其工具注入设置。

Subdomain Access

子域名访问(Subdomain Access)功能允许您通过自定义的子域名访问部署在平台上的服务。通过简单的配置,您可以为不同的容器端口指定不同的访问路径,使服务更容易、更安全的被访问和管理。该子域名来自于自动分配,因此您无需提供额外的域名,并且均为 HTTPS 进行通信。

在您部署服务时,您可以通过配置Path Routing字段来实现通过域名对服务进行 HTTPS 访问。

Path Routing中,选择Add Routing可以添加新的路由。新的路由包含三个字段需要配置,包括“Container Port”、“Path”和“Rewrite”。

这张图片展示了一个路径路由配置界面,标题为“Path Routing”。界面中有两条路由规则:第一条路由的容器端口为 80,路径为“/”,未启用重写;第二条路由的容器端口同样为 80,路径为“/test”,启用了重写功能。右侧有删除按钮,每条路由规则旁边各有一个。界面右上方有一个“Add Routing”的按钮用于新增路由。

“Container Port”是路由规则转发到 Container 内部的端口号。Container Port 可以重复。多条路由规则可匹配同一端口。

“Path”是指 URL 的路径,将对该路径的访问转发到 Container。在 api 层面下,用户通过该路径来访问服务,转发到 container 中时,如果不配置“rewrite”选项,则不会改变访问的路径。 Path 的配置有以下规则:

  • Path 在转发时是前缀匹配的。也就是说,在访问任何路径时,只要有任意前缀是已配置的 Path,就进行转发。
  • Path 在转发时遵循最长前缀匹配。在满足多条已配置 Path 的转发时,Path 长度越长优先级越高。
  • Path 不能重复,不允许多条规则使用相同的 Path,即使是不同的 container。

“Rewrite”为是否需要删除第一阶路由的选项。当勾选时,会在访问 Path 时,舍弃第一阶后再转发到 container 内。 例如当 Path 被配置为“/api/v1”,用户访问“/api/v1/detail”时,服务将收到对“/v1/detail”的访问。

在配置并成功部署后,进入“view containers”界面会展示该服务的subdomain。

这张图片展示了一个名为 “SubDomain” 的配置项。其下方显示了一个完整的子域名:68aeccc357eb0fc8e383c262.europe.test.vkube.vcloud.systems。子域名右侧有一个复制图标按钮,用于快速复制该子域名。

并在“Path Routing”表格中展示配置的路由规则。通过访问subdomain提供的domain和path的组合,可以通过HTTPS访问您的服务。

这张图片展示了一个标题为“Path Routing (2)”的路径路由配置表格。表格有三列,分别是“Container Port”、“Path”和“Rewrite”。第一行:容器端口为 80,路径为“/”,重写状态为 Off。第二行:容器端口为 80,路径为“/test”,重写状态为 On。

这张图片描述了访问地址“https://68aeccc357eb0fc8e383c262.europe.test.vkube.vcloud.systems/test”的浏览器,并且成功访问并显示“Welcome to nginx!”页面

过期服务

服务过期后,部署信息依然会被保留。可以将部署信息下载备份到本地,或者在部署新服务时,对已过期的服务进行克隆。

在服务过期后,Actions中可选择Export Deployment Data打开“Export Pod Configuration”页面。

这张图片描述了一个过期服务的Actions选项。与Running中的服务不同的是,该Actions为Export Deployment Data,可以用于下载该服务的配置文件

在该页面中,可对token进行复制,或者直接将服务的配置信息进行导出,导出的内容包括服务.yaml格式的文件,用于重新部署,还包括config Files,包含服务使用的configmap及相关路径。

这张照片描述了一个窗口,标题为Export Pod Configuration。标题下的提示说明了配置文件的保存时限以及目前配置文件是否可下载。第二部分有一个按钮,用于复制服务的Token,最下面有两个按钮,其中一个是Cancel,用于退出窗口,另一个是Export Zip,用于导出Zip格式的配置文件压缩包。

在部署新服务时,点击clone,可以利用已过期的服务进行克隆,从而快速部署。也可以进入Clone Service by Token界面,粘贴已过期服务的token进行克隆。

这张照片描述了一个窗口,标题为Clone Container Settings from other Pod。该窗口用于通过clone服务的配置实现快速部署。 第一行有一个按钮,用于切换选择模式到输入token模式,下面有一个搜索框,可通过输入label或者id来搜索服务。下面有一个列表,用于快速选择服务,其中红色框框中了一个过期服务,表示过期服务也可以被选择并进行克隆。

回滚

回滚功能允许将服务的配置信息记录,并在之后快速部署之前记录的配置信息。

记录方式分为两种,首先在部署时,可以勾选Record选项框。勾选后,出现tag的文本框,可输入tag区分不同的记录。勾选Record选项框后,点击部署后,该次部署使用的部署配置将会被记录。

这是一张配置界面的截图,顶部的标签页显示“test”。界面包含多个配置项:Ram Unit(内存单元)设置为 1 Gi;Name(名称)设置为 test;Image(镜像)设置为 docker.io/nginx:latest。Port Mapping(端口映射)旁边有“+ Add Mapping”链接。Path Routing (1)(路径路由)旁边有“+ Add Routing”链接,下方配置项显示 Container Port(容器端口)为 80,Path(路径)为 /,并有一个可勾选的 Rewrite(重写)选项和删除按钮。Config(配置)部分显示“No config file”(无配置文件),旁边有“+ Add Config”链接。Environment Variables(环境变量)部分显示“No variables”(无变量)。Commands & Arguments(命令与参数)是一个开关。界面底部是一个红色方框突出显示的操作区域,包含一个文本框(显示 testRecord),一个进度指示 10/20,一个带有勾选标记的“Record”(记录)按钮,以及一个蓝色的“Deploy”(部署)按钮和“Cancel”(取消)按钮。

对于已经处于运行中的服务,可以在Actions中选择Record Deployment,可记录这个服务的配置信息。

这是一张操作下拉菜单的局部截图,标题为“Actions”(操作)。菜单顶部有三个图标:一个暂停/播放图标、一个垃圾桶/删除图标和三个点/更多选项图标。下拉菜单分为几个主要部分:Service(服务),包含 Restart(重启)、Redeploy(重新部署)、Deploy History(部署历史)和用红色方框突出显示的带列表图标的 Record Deployment(记录部署);Containers(容器),包含 View Containers(查看容器)、Tool Injection(工具注入)、View Pod Status(查看 Pod 状态)和 Edit Container's Config(编辑容器配置);Networking(网络),包含 Bind Domains(绑定域)、Create Alias(创建别名)、Set up Policy(设置策略)和 Bind Email(绑定邮件);以及最后的 Export(导出)部分,包含 Backup Config(备份配置)。

记录了部署信息之后,在Redeploy时,可以点击右上角的Record打开已经记录的配置信息。

这是一张模态窗口(弹窗)的截图,其标题是“Deployment History - 68f6fb394f8b31cb848abead”(部署历史)。弹窗背景能看到一些表格信息,如 Service ID、Region 等。弹窗内部顶部有一个搜索框(Search by History ID or Tag),右侧显示一个进度条和文本 1/10。下方是一个部署历史记录表,包含 Record(记录)、ID、Recorded At(记录时间)、Last Used(最后使用)和 Actions(操作)列。第一条记录的 Record 是“testRecord”并带有一个铅笔编辑图标和一个时钟图标。ID 是 68f6fb394f8b31cb848abead,记录时间是 2025-10-21 11:17,最后使用时间是 2025-10-21 11:17。Actions 列显示了三个用红色方框突出显示的图标按钮:一个带有眼睛/查看图标的蓝色按钮,一个带有循环箭头/恢复图标的橙色按钮,以及一个带有垃圾桶/删除图标的红色按钮。

在Record窗口中,可以对记录进行管理,点击Actions中Preview对配置信息进行预览,或点击Apply来应用该配置信息,或点击Remove进行删除。

上次更新: 2025/10/21 上午7:42:52