virtualbox+宝塔+vscode+ssh远程开发插件,搭建前后端开发环境

懒得在windows下安装各种环境,
打算windows系统下开发,环境运行在linux虚拟机,宝塔面板管理各种环境,减少搭建成本.

1.瞎折腾的失败过程,可跳过

一开始考虑用windows10下的子系统虚拟机共享文件夹方式开发,
本地运行vscode,代码运行在虚拟机上, 两边代码同步.
但是宝塔环境在子系统下mysql不能用.于是换个方案.
后来就用virtualbox安装了Ubuntu虚拟机, 继续打算用文件夹共享开发,文件删除同步会卡死,不能用,
经过测试,宝塔面板和virtualbox对ubuntu系统的兼容性都有问题,不能用
virtualbox 安装了ubuntu20.4 serve版本, 磁盘是配置的20g ,但是在宝塔里面根目录只显示10g 而且占用100%,好像是在删除node_modules目录卡死后,强制关机导致的
共享文件开发不好用,删除大文件夹会卡死.
既然对ubuntu适配不太好,还是用centos吧.
virtualbox和宝塔都是对centos匹配度更好, ubuntu多少都会有问题.
windows10 WSL下ubuntu的宝塔不能运行mysql

2.搭建环境

为了解决问题不断搜索,发现了vscode远程开发插件Remote-SSH, 觉得真好用
之前某大公司某部门就是全部用 ssh 登录公司的开发机, 用vim做的一套类似IDE的东西进行开发.
这个vscode的远程开发和那个类似,但是好用多了.

在vscode里面安装Remote-SSH插件后就能加载虚拟机中的项目文件,像在本地开发一样.
还省去了配置共享目录的麻烦,避免了共享目录删除文件卡死问题.

虚拟机centos安装

先安装virtualbox,然后安装centos.

centos 最小化安装不能上网 ,网卡默认没启动

安装包下载用的网易或者阿里的镜像站里面的. 自己搜索吧
不想折腾的不要安装最小化的包.

我采用centos最小化包不到1g,网卡还要设置一下才能上网.
用vi编辑器,系统没有带vim编辑器
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
将 ONBOOT=no 改为 ONBOOT=yes
保存后重启网卡: service network restart
联网后可运行命令:
yum install net-tools
yum install wget
yum 安装ssh服务,并开启服务

开启root ssh登录
如果不能用root和密码进行ssh登录
开启root密码ssh登录

https://trycoding.fun/Centos/centos-enable-root-password-login/

安装宝塔面板.

去宝塔官网复制安装命令进行安装,
然后安装php,nginx,mysql等
我需要前端开发,
宝塔内,不要安装pm2管理器,支持的不好,
要用Node.js版本管理器 这个插件替代.更稳定.
里面带了pm2 模块 ,node和 yarn
本地向虚拟机上传文件,下载文件,用宝塔的文件管理功能,直接上传下载

node命令不存在
解决方案: nodejs 版本管理器,勾选上命令行版本
在这里插入图片描述

windows10 环境配置

配置公钥,免密登录linux

https://blog.csdn.net/u010456602/article/details/128073440

安装vscode的Remote-SSH扩展
安装和使用方法见最下边的链接.

修改hosts文件

想自定义一些网址,需要修改host
1左下角搜索栏 输入下面的地址,点击进入
C:\Windows\System32\drivers\etc
2点击菜单栏的"文件" , 点击power shell 管理员身份运行power shell
3输入
notepad hosts

本文来自csdn,禁止随意抓取

其他问题

  1. 通过SSH 连接 linux服务器提示 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

上次ssh登录127.0.0.1的服务器保存的秘钥信息和这个次不一致,因为这次虚拟机系统是新安装的,和上次肯定不一样, 要删掉本地 .ssh/known_hsots文件

  1. 解决在虚拟机的无法复制的问题,
    用ssh工具连接虚拟机, 在ssh工具里面复制粘贴就行了. vscode内的终端就非常好用.

  2. 最小化部署,启用固定ip
    https://blog.csdn.net/XiaoYunKuaiFei/article/details/109431128

  3. vscode 使用远程开发参考
    https://blog.csdn.net/whahu1989/article/details/115829459

你可能感兴趣的:(vscode,ssh,linux)