曾几何时,开发者为编程环境的安装而烦恼。虽然现在很多语言安装开发环境并不难,但是如果我们能有一个运行在云端的编译器,那么我们就可以随时随地通过浏览器来编写和编译我们的代码了!!先来看看我们的最终效果:完美运行Go程序!让我们开始构建整个环境。打包好的镜像配置完成Go+Vue编译+调试环境Docker镜像已经推送到Docker仓库,懒得跟着配置的可以直接拉取我的镜像运行!图片取自code-server官方镜像,具体操作方法见下文code-server部分。准备条件1、一台云服务器(最低配置即可!)以下统称主机。2.一双手...code-servercode-server是VSCode的网页版,是社区开发的一个开源项目。项目地址:https://github.com/cdr/code-s...文档地址:https://coder.com/docs/code-s...我们这次使用Docker,将我们的环境部署在Docker镜像(具体Docker环境的安装请自行查找资料)。1、找到code-server镜像,我们在主机命令行输入:dockersearchcode-server2、拉取镜像,可以看到第一个是code-server的官方镜像codercom/code-server,我们拉取到本地:dockerpullcodercom/code-server3.启动容器接下来,我们需要启动镜像:dockerrun-d-uroot-p5000:8080-p5001:5001--namemy-code-server-v/home/code:/home/codecodercom/code-server-d:后台运行-u:指定用户名-p:指定端口映射,code-server运行在容器中的8080端口,我们需要把8080端口映射到我们的主机A端口,我这里设置为5000。这里预留一个5001端口映射出去,为后续开发vue程序做准备。--name:我们可以将我们容器的名字设置为my-code-server-v:我们需要为我们的容器和宿主机设置数据卷映射(即容器和宿主机共享的文件位置),并设置数据卷映射的好处是:①当我们的容器被删除时,我们的工程文件会保存在宿主机上,保证不会丢失②每次启动一个新的容器,我们可以直接获取对应的工程文件以继续开发。4、进入容器此时,我们已经可以通过浏览器访问我们的code-server,使用主机IP:5000访问(主机为云服务器,记得在防火墙中暴露5000和5001端口),我们可以看到进入到这个界面:我们需要进入容器中提示的位置来查看随机生成的密码,然后输入进入我们的code-server界面。进入容器:dockerexec-itmy-code-server/bin/bash5。修改code-server密码,通过~/.config/code-server/config.yaml文件可以看到随机生成的密码很长,我们不可能一直记住,那我们只需要改这个密码并重新启动我们的容器就可以了。我比较习惯使用vim编辑器,但是code-server的官方镜像中并没有安装vim,所以需要我们自己安装。①由于这个镜像的基础系统镜像是Debian,我们可以使用:apt-getinstallvim②但是我们会发现失败了,因为我们的apt-get包比较老,我们只需要执行apt-getupdate更新包库和然后安装vim。③使用vim修改~/.config/code-server/config.yaml文件中密码字段的值,保存退出完成密码修改。④我们输入exit命令退出容器,然后重启容器使我们修改的密码生效:dockerrestartmy-code-server6。使用自己的密码登录刷新界面,即可使用自己的密码登录code-server!Go环境接下来,我们要在我们的容器中安装Go语言环境,然后我们就可以在code-server中编写Go程序了。1、下载Go安装包我们可以通过linux的wget工具下载Go安装包①首先,老办法,通过apt-getinstallwget获取wget工具②通过wget工具下载安装包:wgethttps://studygolang.com/dl/golang/go1.17.2.linux-amd64.tar.gz③将当前下载的安装包解压到/usr/local文件夹下,这是Go官方推荐的安装位置。tar-C/usr/local-zxvfgo1.17.2.linux-amd64.tar.gz2。设置环境变量上面我们已经安装好了Go环境,如果要在命令行使用,需要通过vim设置环境变量修改/etc/profile文件,在最下面添加两行exportGOROOT=/usr/local/goexportPATH=$PATH:$GOROOT/bin保存退出后,使用source命令刷新环境变量source/etc/profile至此,我们的环境变量已经设置完毕,可以使用goversion命令查看Go语言版本号。3、命令行自刷新环境变量我们设置好环境变量后,在code-server内置的bash命令行中使用go命令仍然无效。在这里我找到了解决方案,我们需要在~/.bashrc中进行配置。使用vim在~/.bashrc的最后两行写:source/etc/profile保存退出,这里我们需要重启容器。容器重启后,我们就可以在任何地方使用go命令了。4.安装Go扩展包我们在code-server中安装Go扩展包,就像VSCode一样5.设置Go依赖库的国内镜像我们在命令行输入:goenv-wGO111MODULE=ongoenv-wGOPROXY=https://goproxy.cn,direct6.安装Go语言工具包①先刷新我们的code-server界面②在code-server中使用快捷键Ctrl+Shift+P③在弹出的输入框中输入go,找到Go:Install/UpdateTools,选择④选择allTools,然后确认,等待安装成功7.新建go程序至此,我们的Go环境就安装完成了,我们新建go程序就可以找到了,智能提示也都有了,就这样和本地用VSCode写代码没什么区别~Vue环境由于博主不是专业的前端开发,对Vue也只是略知一二,所以我们只知道运行Vue程序需要npm依赖管理,所以我们可以安装它首先是npm包管理工具(比较复杂的vue环境,也就是普通的linux环境配置就可以了,智能提示可以使用你喜欢的code-server的扩展包)apt-getinstallnpm安装完成后,我们可以打开Vue的脚手架project执行npminstall和npmrunserve来运行一个简单的Vue项目。PS:记得我们一开始留下的5001端口是暴露给宿主机的,所以我们可以把vue项目的运行端口设置为5001,这样我们只要使用http\://localhost:5001运行DebugVue项目的模式,我们可以使用主机IP:5001在浏览器中调试我们的项目。至此,我们的编程+编译+Debug+打包环境就配置好了,可以随时随地编写我们的前后端分离项目了!(Git包含在code-server的官方镜像中,我们可以使用git来管理我们的代码)
