zoukankan      html  css  js  c++  java
  • 快速部署阿里云WebIDE(DevStudio)并参与开源项目开发

    引言:轻量应用服务器提供了DevStudio 1.12应用镜像,可以通过该镜像快速部署并使用DevStudio。DevStudio是阿里云云效推出的WebIDE产品,内部预置了Node.js、Python、Go、Java等多种主流的技术栈,同时已预安装好各开发环境所需的软件包和插件,支持智能编码助手,方便用户快速地编辑、调试、运行、部署云端代码。

     

    本文将以开源项目Ethereum为例进行介绍。Ethereum是下一代智能合约和去中心化应用平台,Go Ethereum是Ethereum协议的三个原始实现之一(另外两个是C++和Python ),用Go语言编写,代码完全开源。

     

    在正式开始部署前,请确保已注册并登录GitHub。

     

    步骤1:部署DevStudio

     

    1.登录轻量应用服务器管理控制台

    2.在左侧导航栏,单击服务器列表

    3.在轻量应用服务器售卖页,完成资源配置

    ◾创建轻量应用服务器的具体操作,见以下文档:

        https://help.aliyun.com/document_detail/223757.htm

    ◾其中,需要在镜像区域,选择应用镜像为DevStudio 1.12。

    补充.png

     

    ◾创建完成后,返回服务器列表,可以查看到DevStudio服务器的卡片信息。

    1.png

     

    步骤2:打开DevStudio

     

    1.登录DevStudio云端开发平台

    • 以阿里云账号登录轻量应用服务器管理控制台。
    • 在左侧导航栏,单击服务器列表。
    • 在服务器列表页面,找到通过DevStudio镜像创建的轻量应用服务器,然后单击服务器卡片。
    • 在左侧导航栏,选择应用管理 > 应用详情。
    • 在DevStudio使用步骤区域,单击访问您的Devstudio云端开发平台。

    说明: 只有阿里云账号能够访问DevStudio云端开发平台,RAM用户无法访问。

    2.png

     

    2.在DevStudio中,可查看默认创建的工作空间

    3.png

     

    步骤3:开发代码

     

    本文以某个人的GitHub账号ruopuzi为例。

    1.Fork开源项目Go Ethereum到自己的GitHub主页

    • 在GitHub中打开开源项目Go Ethereum
    • 在页面右上角,单击Fork

    4.png

    复制后代码库如下图所示。

    5.png

     

    2.将公钥配置到GitHub。

    i. 在DevStudio工作空间的菜单栏中,选择终端 > 新终端。

    6.png

     

    ii. 运行以下命令,生成密钥对。

    •  
    ssh-keygen

    生成密钥对的过程中,系统会提示输入密钥对存放目录和密钥对密码,你可以手动输入,也可以按Enter键保持默认。回显信息类似如下所示。

    $ssh-keygen
    Generating public/private rsa key pair.
    Enter file in which to save the key (/home/admin/.ssh/id_rsa):
    Enter passphrase (empty for no passphrase):
    Enter same passphrase again:
    Your identification has been saved in /home/admin/.ssh/id_rsa.
    Your public key has been saved in /home/admin/.ssh/id_rsa.pub.
    The key fingerprint is:
    b6:66:5d:8b:2f:9b:78:bf:d2:17:94:1f:af:*:*:* admin@iZbp1d0y7cs0n99m1o7****
    The key's randomart image is:
    +--[ RSA 2048]----+
    |                 |
    |                 |
    |               . |
    |              o. |
    |        S   .. .o|
    |       . o o ...o|
    |        + o... oE|
    |       o .+o. ++ |
    |        ..****...|
    +-----------------+

    iii. 运行以下命令,查看并复制公钥文本。

    •  
    cat /home/admin/.ssh/id_rsa.pub

    iv. 将公钥配置到代码平台。

    • 打开GitHub的SSH Key 配置页面
      链接地址:https://github.com/settings/keys
    • 在页面右上角,单击New SSH Key
    • 在弹出的对话框中,输入复制的公钥文本,并单击Add SSH Key

    3.在DevStudio的终端,运行以下命令,克隆GitHub代码平台上的代码。

    本示例将代码克隆到/home/admin/workspace目录下。

    cd /home/admin/workspace
    # clone代码
    git clone git@github.com:ruopuzi/go-ethereum.git --depth=1
    # 配置开发者账号
    cd go-ethereum
    git config user.name ruopuzi
    git config user.email goodyfx****@163.com

    参数说明

    ◾ ruopuzi/go-ethereum:为复制后的工程名称,需替换为实际的工程名称。

    ◾ user.name:用户名,需替换为实际的用户名,例如:ruopuzi。

    ◾ user.email:用户邮箱,需替换为实际的邮箱,例如:goodyfx****@163.com。

     

    4.添加代码文件到工作区。

    i. 在左侧的文件导航栏,选择... > 将文件夹添加到工作区。

    7.png

     

    ii. 在弹出的对话框,单击workspace,选择go-ethereum文件夹,并单击Open

    8.png

     

    iii. 在左侧文件导航栏中,可以查看已加入的代码工程。

    9.png

     

    5.创建代码分支。

    i. 在菜单栏中,选择终端 > 新终端。

    ii. 选择添加的代码工程。

    10.png

     

    iii. 运行以下命令,创建特性分支。

    本示例创建的分支为feature/testme。

    •  
    git checkout -b feature/testme

     

    6.开发代码并查看更改的代码。

    i. 根据业务需求编辑代码,并在菜单栏选择文件 > 保存。

    ii. 在页面左上角,单击10.1.png图标,查看更改的代码。

     

    7.提交代码。

    i. 在更改区域,单击文件后的+,将文件加入暂存区。

    11.png

     

    ii. 在输入框中输入提交信息,并单击全部提交。

     

    8.推送代码。

    i. 在源代码管理:GIT区域,选择... > 推送到。

    12.png

     

    ii. 选择远程代码仓库地址。

    13.png

     

    9.创建代码合并请求。

     i. 在GitHub中打开Fork的go-ethereum代码库。

        本示例中为: https://github.com/ruopuzi/go-ethereum/

    ii. 单击Pull Requests。

    iii. 单击New pull request。

    14.png

     

    iv. 选择自己开发的分支后,单击Create pull request。

    15.png

     

    等待开源社区的其他开发者对你的代码评审与评论,最终完成代码合并即可。

    通过以上3个步骤的部署,就可以在轻量应用服务器上使用DevStudio进行代码的开发了,是不是步骤清晰、简单易懂?马上试一试吧~

    如果你想了解更多关于轻量应用服务器和DevStudio的相关知识,可以访问下面文档链接:

    轻量应用服务器

    DevStudio

  • 相关阅读:
    CentOS iftop和nethogs安装配置
    sfcapd服务新增nfdump安装
    CentOS 7.0手工解压安装Java JDK1.8环境
    华为USG防火墙CPU超高因NGE引擎占用率超过60%解决方法
    centos7快速安装smokeping
    华为USG防火墙常用SNMP OID
    Oracle物理结构和逻辑结构是怎样的?
    解决Windows Server 2008磁盘脱机状态
    Zabbix监控华为交换机CPU、温度并显示到拓扑图
    Object.defineProperty的理解
  • 原文地址:https://www.cnblogs.com/tanxingjisuan/p/15704791.html
Copyright © 2011-2022 走看看