Odoo的“开发伴侣”——VscodeOnline

点击上方“神州数码云基地”,查看原文

付天愿

高级后端开发工程师

一枚擅长后端开发的钓鱼爱好者

特点一:跨平台

VSCodeOnline基于浏览器,可以实现跨多平台的访问。可以在任何PC、Pad或移动设备上不限工作环境地进行在线项目的开发。

也就是说,只要你的设备能够联网并且有一个浏览器,就能运行VSCodeOnline来进行需求开发,提升开发体验。

特点二:自定义

你可以通过安装各种VSCode插件将VSCodeOnline配置成适合自己的IDE,也可以配合多插件进行多语言多项目开发。

特点三:安全性

下面我们来看看

配置VSCodeOnline的三种方案

配置方案

方案一

微软官方提供一个VSCodeOnline的收费版本(含azure的服务器费用,属于捆绑销售)

由于微软服务器在国内打开非常卡,费用较贵,不推荐。

方案二

VSCode是基于node的electron框架开发的IDE工具,我们可以下载VSCode源代码,编译以后通过yarnweb来启动。

该方案配置难度大,不支持权限校验。安全性需要自己控制,配置较为繁琐。这个方案我们也不推荐。

方案三

通过Code-Server安装,也是我们推荐的方法。

下面是具体的

配置方法

基本方案:服务器安装

前提条件

需要一台有公网ip的linux服务器,可以使用阿里云或者腾讯云服务器

部署方案

在cdr/code-server的README中,提供了两份部署指南:

一份是用于部署在AWS等云服务的deploy

另一份则是我们要用的用于部署在本地服务器的脚本install.sh安装

首先介绍第一种方案,执行一键安装脚本。

Step1

服务基本配置编辑

code-server服务器安装目录/usr/lib/code-server

使用sh./bin/code-server启动服务。

若安装目录不相同可以用find-namecode-server这个命令找到。

编辑配置文件

vim~/.config/code-server/config.yaml

默认配置内容如下:

bind-addr:127.0.0.1:8080auth:passwordpassword:1a980e91db7a998a2a7c72efcert:false#第一行代表服务器的端口,127.0.0.1代表这是本机的ip,为了能在公网上运行,我们需要改成0.0.0.0。默认端口8080,你也可以改成自己的端口#第二行auth代表是否需要密码来校验权限,#第三行的password是自动生成的密码。这里你可以改成你自己常用的密码。

编辑好配置文件:

bind-addr:0.0.0.0:把中文替换成你自己喜欢的端口,默认8080auth:passwordpassword:把中文替换成你常用的密码cert:false

Step2

通过sh./bin/code-server启动服务,输出一下即可访问VSCodeOnline服务:

Step3

你可以在浏览器上输入你的ip+端口进行访问:

输入配置密码即可访问。

VSCode可以安装配置和运行调试代码,基本功能和桌面版VSCode相同。

/VSCodeOnline

Step4

后台启动服务,使用命令启动。关掉SSH链接服务器即关闭。

简单可以使用自定义启动脚本保持后台运行:

nohup./bin/code-server>nohup.out2>&1&

进阶方案:K8S云服务部署

K8S服务集群搭建好

使用Rancher进行部署

通过Rancher部署工作负载

设置工作负载名称,多人配置使用可以通过自定义规则。

这里我通过公司分配好的itcode进行设置即可:code-server-员工itcode、pullcode-server的官方镜像

网速较慢可以通过国内的镜像源pull,设置好pod资源deploy应用,选择已经创建好的命名空间即可。

端口映射配置

设置端口映射名称,默认容器端口为8080即可。

设置网络模式可根据K8S的集群可用的网络集群进行选择。

我们的方案通过Rancher配置了负载均衡规则,就选择集群IP作为参考,其他的模式可以根据自定义K8S方案自行选择配置即可。

设置环境变量,设置PASSWORD环境变量,即为pod应用的启动访问密码。

数据持久化设置

若还没新建PVC,可以通过添加卷方式或者通过Rancher资源的PVC设置,添加好数据卷。

数据卷容量根据开发使用需求可以分配code-server的持久化数据卷容量大小。

本方案选择已经提前配置好的PVC,挂载到对应pod应用容器默认路径即可,也就是:

/home/coder/project

Step5

其他可选配置

主机调度、健康检查、缩放/升级策略可根据自定义的K8S集群自行设置,配置完毕启动即可。

Step6

访问服务,查看pod资源已经是running状态即可。

即可通过Rancher设置好的集群IP+开放端口访问。Rancher也可以配置SSL也可以开放443端口访问。

通过配置负载均衡添加规则,规则名称保持code-server-员工itcode一致即可。

确保命令空间和工作负载pod应用是一致的,规则选择默认即可。

SSL/TLS证书这里我使用已经导入配置好的证书和对应域名,自定义K8S集群按照自己配置好的证书和域名使用即可。

通过Rancher的集群部署之后,

再配合公司内部的集群IP设置,

分配给员工个人专属的VscodeOnline开发环境,

提升员工项目开发体验,

下面以Odoo在线开发为例。

通过git克隆odoo项目:

安装Odoo项目依赖库:

pipinstall-rrequirements.txt

配置工作区启动debuglaunch.json文件。

pythonPath:配置容器的python环境路径

program:配置Odoo启动路径

args:配置Odoo启动参数,默认只需要加上conf项目配置路径即可,若第一次启动可以添加"-ibase"参数强制初始化数据库

通过VScode配置好启动文件,启动Odoo服务,即可断点调试开发项目

THE END
1.java多人协作文档开源mob64ca12d9b014的技术博客如何实现一个Java多人协作文档开源项目 作为一名新手开发者,创建一个Java多人协作文档的开源项目可能听起来有点复杂。但是,通过循序渐进的方式,我们可以把这个项目拆分为几个简单的步骤。本文将带你了解该项目的不同阶段,以及每一步所需的代码及其注释。 https://blog.51cto.com/u_16213338/13230058
2.codeserver多用户工具,实现多人在线vscode编辑器code为code-server实现了多用户和管理(测试平台:Ubuntu) 项目地址: https://gitee.com/xiaojiang0208/Code-serverManager https://github.com/xiaojiang0208/Code-serverManager 本项目还待完善慎重使用 安装教程-视频教程 根据这个教程安装code-server 创建一个用户和目录来供示例使用 https://blog.csdn.net/qq_41108184/article/details/132451655
3.codeVisual Studio Code(简称 vscode)是一款由微软开发且跨平台的免费源代码编辑器,结合插件能够用于多种语言程序开发(如 python, java, javascript, go 等)。但是其属于一款客户端软件,在远程服务器上使用不如 code-server,code-server 是一款能够在网页上使用的 vscode,极大的方便程序开发人员快速访问与编码。本篇介绍https://xujinzh.github.io/2024/04/10/install-code-server/
4.云风的BLOG:技术Archives昨天做内部晋升评审时听到候选人介绍他即将开始的一个项目。大致是我们公司从韩国买过来一个游戏(有全部源码)打算自己运营。该游戏服务器全部用 C++ 编写,使用 SQL Server 做数据库。我们这个项目,除了需要根据市场做二次开发外,还希望把 SQL Server 迁移到 MySQL 上。成本是最主要的原因,如果可以迁移成功,成本将减https://blog.codingnow.com/eo/
5.code比如joplin 虽然多端同步和移动端支持做的非常好,但是界面真的丑 现在使用code-server当替代方案,感觉除了移动端的支持弱一些,其他方面简直完美 code-server 就是vscode在云端运行,可以在浏览器使用vscode,试用后发现体验和本地运行基本没啥太大差距。 https://www.jianshu.com/p/e4237be19ce0
6.VSCode在线运行:codeserver部署(系列一)铁皮鸭子部署方式有多种,这里我们选择下载安装包进行部署,下载地址; https://github.com/coder/code-server/releases/download/v4.0.2/code-server-4.0.2-linux-amd64.tar.gz 解压安装包 tar -zxvf code-server-4.0.2-linux-amd64.tar.gz 创建启动脚本 在解压目录内执行./code-server --help可以查看启动相关的命令 https://www.cnblogs.com/barros/p/15934894.html
7.悄悄学习Doris,偷偷惊艳所有人ApacheDoris四万字小总结Palo 于 2017 年正式在 GitHub 上开源,并且在 2018 年贡献给 Apache 社区,并将名字改为 Apache Doris(incubating)进行正式孵化。随着开源,Doris 已经在京东、美团、搜狐、小米等公司的生产环境中正式使用,也有越来越多的 Contributor 加入到 Doris 大家庭中。 https://xie.infoq.cn/article/b2250c2d887f69d8519a3f50b
8.unix大杂烩基础型一服务器知识学堂二、 操作系统 UNIX安装与维护、Windows主要特性和一般使用方法。 1、 操作系统检查方法:检查系统出错报告、检查系统日志、检查登录用户、检查异常进程、CPU工作情况。 2、 安装SCO OpenServer 5 所必需的硬件基本配置如何? CPU:80486DX或以上 系统内存:32MB https://server.zol.com.cn/127/1272059.html
9.vscode支持GoVisualStudioCode教程根据每年Go相关的 Survey 和官方数据,Go 社区的新晋用户更倾向于使用VS Code来进行 Go 的编程。于是 Go 团队决定亲自书写一套 Go 的 Language Server,以提升VS Code上 Go 的书写体验。上面我提到的 Language Server 是 SourceGraph 团队实现的,Go 团队可能不会基于它们的代码进行修改,而是重起炉灶。对于官方团队的https://m.w3cschool.cn/vscode/vscode-for-go.html
10.VSCodeWebIDECoder安装及使用其它综合Coder是VS Code的Web IDE,分Code Server 和 Coder,Code Server安装在服务器上,通过浏览器打开地址后可以使用一个web版的VS Code,也就是Coder,但VS Code的插件无法使用。 VSCode:https://code.visualstudio.com/ Code-Server说明:https://coder.com/docs/code-server/latest Coder说明:https://coder.com/docs/https://www.jb51.net/article/231012.htm
11.OneCode一路走来OneCode 第一个版本,以V5版本的引擎为核心,将平台全部600余组件的2/3贡献到社区版本,同时为方便大家构建自身的工程体系,还会同步开源 OneCode V3版本的支持环境VFS(JAVA开发)虚拟存储系统,以及配合V3 部署使用的 OneCode Server 和相关的部署管理插件。V4及V5部分由https://developer.aliyun.com/article/1198565
12.codeserver:codeMIT Code of conduct 保存更改 取消 发行版 暂无发行版 贡献者 (265) 全部 近期动态 1年多前同步了仓库 4年前评论了仓库 4年多前评论了仓库 加载更多 不能加载更多了 马建仓 AI 助手 TypeScript 1 https://gitee.com/mirrors/code-server.git git@gitee.com:mirrors/code-server.git mirrorhttps://gitee.com/mirrors/code-server/
13.在codeserver中使用rootlessdocker腾讯云开发者社区然后就可以在code server中使用docker 了 image-20220427215239438 问题 除了上面提到的问题 $DOCKER_HOST、$XDG_RUNTIME_DIR在 code server terminal中为空 还有一个问题: 在code server terminal中为空无法使用systemctl --user restart|start|status docker.service命令 https://cloud.tencent.com/developer/article/1989164
14.codecode-server在wsl2下使用docker安装 === 第一大步骤:检查wsl本身,并更新到wsl2去 结果我发现我还是1? PSC:\Users\Administrator>wsl-l-v NAMESTATEVERSION *UbuntuRunning1 PSC:\Users\Administrator> PSC:\Users\Administrator> PSC:\Users\Administrator> PSC:\Usershttps://www.douban.com/note/855651222/
15.SpringCloud微服务实战——搭建企业级开发框架(二十三):Gateway+前端登录页面增加判断,默认采用password方式登录,当错误达到一定次数时,必须使用验证码登录 requestFailed (err) { this.isLoginError = true if (err && err.code === 427) { // 密码错误次数超过最大限值,请选择验证码模式登录 if (this.customActiveKey === 'tab_account') { this.grantType = 'captchhttps://www.tulingxueyuan.cn/tlzx/jsp/5102.html
16.把VSCode带到安卓code-server 在 github 发布的版本中是有 arm64 架构的,整个下载后,开终端解压执行就挂了,这个虽然是 arm64,并且带有一个 arm64 的 node,但是是为完整 linux 准备的。也就是说,node 中硬编码了 /usr /lib 等这些路径,并且附带的 node_modules 中也有大量的使用到 linux 特有节点的路径,这些安卓上都没有https://juejin.cn/post/7032548034638675982
17.开始通过WSL使用VSCodeMicrosoftLearn如果计划与其他人协作,或是在开放源代码站点(如 GitHub)上托管项目,则 VS Code 支持使用 Git 进行版本控制。 VS Code 中的“源代码管理”选项卡可跟踪所有更改,并直接在 UI 中内置了常见 Git 命令(add、commit、push、pull)。 若要安装 Git,请参阅设置 Git 以与适用于 Linux 的 Windows 子系统一起使用。https://docs.microsoft.com/zh-cn/windows/wsl/tutorials/wsl-vscode
18.稻草人安装code-server 分享 2022-02-27 vscode online what is vscode online vscode onlie 是在服务器中搭建vscode环境,然后在任何带有浏览器的设备中通过浏览器使用vscode requirements 一台具有公网ip云服务器,服务器最低配置是 内存:1GB, cpu: 2核 使用软件 https://www.bingxl.cn/
19.codeserveradministratorguide快速入门we多开发者? 当前部署方案默认只有一个 code-server,由于它并不支持多用户,所以不合适多开发协同工作的场景。 那么如何才能支持多开发者协作使用 code-server 呢?从宏观上设计,需多开发者使用,每一名开发者分配如下资源即可实现此需求: 单独分配一个宿主机的端口 https://support.websoft9.com/docs/codeserver
20.im客户端使用微信mars连接库,野火IM可能是最适应中国网络国情的即时通讯服务。 支持加速点加速,即可用于全球应用,也可用于政企内外双网复杂的网络环境。 支持阅读回执和在线状态功能,适用于办公环境。 音视频多种解决方案,丰俭由人,可自由选择。 高级音视频功能强大,支持9人以上的群组视频通话,支持1080P视频,支持会议模https://toscode.mulanos.cn/wfchat/im-server