在线编辑环境开发

简介: 1.我是一名大二本科生,在csdn中看到有人说阿里云有免费的云主机,我就进了他的链接2.以下是我的关于在线编程环境开发的大作业实验报告,供大家参考3.非常感谢阿里云平台提供的免费服务,希望可以继续使用2个月进行更深的学习。谢谢

1、目的
了解云服务器和容器相关概念和理论[
]。
掌握docker,nginx,DevStudio的测试和分析技术。
掌握Gitee代码仓库的创建和应用。
实现理论与实践相结合;培养学生分析和解决实际问题能力。
2、运行环境
硬件要求:阿里云云主机ECS 一台。
软件要求:Linux/ Windows 操作系统
3、研究问题
3.1创建服务器,部署docker容器(其中包含了nginx)
3.2在gitee创建代码仓库,将本机与代码仓库相连
下载git ,用git bash 在本地创建仓库,在gitee创建代码仓库,并在git命令行中相连。实现本地代码更新到代码仓库,仓库代码下载到本机。
3.3调试DevStudio,在DevStudio中与gitee仓库相连,将代码导入DevStudio
3.4配置DevStudio编译环境,实现c++的编译与运行。
3.5将DevStudio的代码下载到本地。
4、研究结果与讨论
4.1创建服务器,部署docker容器(其中包含了nginx)
1.创建一个云服务器实例。

常用的的环境配置,阿里云都有配置教程

什么是Docker
docker是一个用来装应用的容器,就像杯子可以装水,笔筒可以放笔,书包可以放书,可以把hello word放在docker中,可以把网站放入docker中,可以把任何想得到的程序放在docker中。

什么是Nginx
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,专为性能优化而开发,性能是其最重要的考量,实现上非常注重效率,能经受高负载的考验,有报告表名能支持高达50000个并发连接数。

2.配置docker环境
1)安装Docker的依赖库
yum install -y yum-utils device-mapper-persistent-data lvm2

安装完成
2)添加Docker CE的软件源信息。

 3)安装Docker CE。yum makecache fast

4)启动Docker服务。systemctl start docker

5) 查看Docker镜像仓库中Nginx的可用版本。docker search nginx

6)查看本地镜像。docker images

7)  运行容器。docker run --name nginx-test -p 8080:80 -d nginx
命令参数说明:
--name nginx-test:容器名称。
-p 8080:80: 端口进行映射,将本地8080端口映射到容器内部的80端口。
-d nginx: 设置容器在后台一直运行。

4.2在gitee创建代码仓库,将本机与代码仓库相连,在网页进行新文件的创捷的编写

1.安装git要使用gitee,需要先安装git工具。

2.安装git好后,在命令行输入git查看
3.登录gitee
我们先在 gitee上注册账号并登录。

4.配置git

5.和本机用ssh链接
6.使用Git Bash Here创建一个仓库
7.上传文件到仓库

8.在线编辑器Web IDE

9.云端代码下载到了本地
原文件夹新文件夹

10.本地文件更新到仓库(上传EMP文件夹)

4.3部署调试DevStudio,在DevStudio中与gitee仓库相连,将代码导入DevStudio
1.进入DecStudio,新建个人空间

2.选择git仓库

3.与仓库进行配对
4.部署并使用
DevStudio在DevStudio的终端,运行以下命令,克隆Gitee代码平台上的代码。
将代码克隆到/home/admin/workspace目录下。
cd /home/admin/workspace

clone代码

git clone git@github.com:aliyundevstudio/springboot-demo.git

配置开发者账号

cd springboot-demo
git config user.name test001
git config user.email username@example.com

4.4配置DevStudio编译环境,实现c++的编译与运行,且完成域名访问IDE。
1.安装插件
DevStudio本身是一个通用的IDE平台,使用它进行代码的开发,一般需要安装一些语言(例如Java)的VSCode插件,以辅助开发工作。本文以Java语言为例,Java语言依赖的插件一般是Language Support for Java(TM) by Red Hat,该插件会提供Java代码的高亮、语法提示、语法交叉索引、代码运行等能力。目前该插件已经内置在DevStudio中,您可以直接使用。同时,DevStudio对接了VSCode插件市场,您也可以在DevStudio中直接进入VSCode插件市场,搜索并安装所需的插件。
2.编写代码进行测试
3.Preview插件是DevStudio内置的插件,可以将DevStudio中运行的程序的TCP端口,通过一个域名暴露出来,您可以通过该域名对程序进行联调测试。
1)在工作空间中,单击示例代码文件中的README.md。
2)在菜单栏中,选择终端 > 新终端
3)根据README.md文件中的提示,运行以下命令,启动服务。
npm install
node app.js
4)在页面右上角,单击眼睛图标,打开服务预览面板。
5)输入端口号后,单击确认。本示例默认端口号为8080。系统会自动分配一个子域名,并在浏览器的新页签中打开预览页面,等待3~5秒后刷新页面
4.将DevStudio的代码放入仓库

4.5设置端口将DevStudio的代码下载到本地。
1.可以打包所有代码到本地进行下载

5、总结
通过这次计算机网络大作业,了解了云服务器和容器相关概念和理论,掌握了docker,nginx,DevStudio的测试和分析技术,掌握了Gitee代码仓库的创建和应用,实现了在线编程的功能。在网络上寻找,选择在线编译器时,出现了很多的问题,我们一开始想使用容器化的WebIDE用命令:git clone ,部署但是提示失败,且ping不同这个网页。后面尝试下载到本机用Xftp传到云主机,但是本机也是无法访问。至此就打算换一个WebIDE。
凑巧发现阿里云的有在线编辑器DevStudio,便打算使用这个。但是在链接仓库时,只在DevStudio中加入了仓库的ssh,没有将DevStudio的2048bit SSH KEY 安置到仓库中,导致完全看不懂的错误,且网络上也没参考。
我们只好加入预留的钉钉群,进去反映。群里的研发人员通过日志查出了这个错误,添加好ssh key到仓库就能用了。目前DevStudio在公测阶段,所以问题还是不少。后面有遇到了打不开的问题。一直在和阿里的研发人员进行交流。

相关文章
|
弹性计算 IDE 安全
打造在线编程环境
打造自己的在线编程环境,使用Coding WebIDE来实现在线的IDE,以便我们在不方便使用本地编辑器的时候可以使用在线编辑器来进行我们的在线编辑操作。
打造在线编程环境
|
4月前
|
监控 安全 API
京东 API 接口:打造高效京东店铺订单处理系统
在电商竞争激烈的环境下,京东店铺需提升订单处理效率以优化用户体验与收益。本文介绍如何利用京东开放平台的API接口,构建高效订单处理系统,涵盖订单查询、库存同步、物流跟踪等功能,助力商家实现自动化管理,显著提升运营效率与客户满意度。
267 0
|
弹性计算 应用服务中间件 Linux
阿里云服务器开放端口完整图文教程
笔者近期开发完成的服务端程序部署在阿里云的ECS云服务器上面,一些应用程序配置文件需要设置监听的端口(如Tomcat的8080、443端口等),虽然通过CentOs 7系统的的「防火墙」开放了对应的端口号,任然无法访问端口号对应的应用程序,后面了解到原来还需要设置云服务器的「安全组规则」,开放相应的端口权限,服务端的接口才能真正开放。
4065 1
阿里云服务器开放端口完整图文教程
|
存储 前端开发 测试技术
Android Kotlin中使用 LiveData、ViewModel快速实现MVVM模式
使用Kotlin实现MVVM模式是Android开发的现代实践。该模式分离UI和业务逻辑,借助LiveData、ViewModel和DataBinding增强代码可维护性。步骤包括创建Model层处理数据,ViewModel层作为数据桥梁,以及View层展示UI。添加相关依赖后,Model类存储数据,ViewModel类通过LiveData管理变化,而View层使用DataBinding实时更新UI。这种架构提升代码可测试性和模块化。
627 2
|
网络安全 Docker 容器
VScode远程服务器之远程 远程容器 进行开发(五)
VScode远程服务器之远程 远程容器 进行开发(五)
436 1
|
分布式计算 C语言 Python
基于Python实现MapReduce
一、什么是MapReduce 首先,将这个单词分解为Map、Reduce。 • Map阶段:在这个阶段,输入数据集被分割成小块,并由多个Map任务处理。每个Map任务将输入数据映射为一系列(key, value)对,并生成中间结果。 • Reduce阶段:在这个阶段,中间结果被重新分组和排序,以便相同key的中间结果被传递到同一个Reduce任务。每个Reduce任务将具有相同key的中间结果合并、计算,并生成最终的输出。
|
机器学习/深度学习 数据可视化 PyTorch
TensorFlow与PyTorch框架的深入对比:特性、优势与应用场景
【5月更文挑战第4天】本文对比了深度学习主流框架TensorFlow和PyTorch的特性、优势及应用场景。TensorFlow以其静态计算图、高性能及TensorBoard可视化工具适合大规模数据处理和复杂模型,但学习曲线较陡峭。PyTorch则以动态计算图、易用性和灵活性见长,便于研究和原型开发,但在性能和部署上有局限。选择框架应根据具体需求和场景。
1869 4
|
编解码 Oracle 关系型数据库
【VNC】修改VNC分辨率大小
【VNC】修改VNC分辨率大小 VNC的分辨率过小有可能导致图形化界面操作过程中遇到“确认键或取消键”无法点击,分辨率过高又可能导致低分辨率客户端显示器无法显示。
24430 1
|
运维 IDE Devops
Cloud IDE 大比拼 《在线编辑器》
我们知道目前很多云服务商,在实践 DevOps 能力的过程中,云服务的客户往往会把需求、代码、构建、测试、发布、部署、运维、运营等工作全部从本地转移到云端,享受云服务带来的移动性和便利性。但是一直缺乏有效的上云方式,导致开发人员手中没有良好的工具,无法真正实现 DevOps 运维开发一体化的理念,因此一款云上 Coding 的开发工具,也是很多云服务商的必备神器。
922 0