当前位置: 首页 > news >正文

vmware虚拟机远程开发

目录

  • 1. 下载vmware
  • 2. 下载ubuntu镜像
  • 3. 安装
  • 4. 做一些设置
    • 4.1 分辨率设置
    • 4.2 语言下载
    • 4.3 输入法设置
    • 4.4 时区设置
  • 5. 直接切换管理员权限
  • 6. 网络
    • 6.1 看ip
    • 6.2 ssh
  • 7. 本地编译器连接远程服务器
    • 7.1 创建远程部署的配置
    • 7.2 文件同步
    • 7.3 远程启动项目
  • 8. ubuntu安装golang环境
    • 8.1 安装golang
    • 8.2 启动golang项目
  • 9. 使用docker部署
    • 9.1 Dockerfile
    • 9.2 执行的命令
    • 9.3 一些参考的命令

参考鱼皮的视频:服务器很贵?搞台虚拟机玩玩!保姆级 Linux 远程开发教程_哔哩哔哩_bilibili

1. 下载vmware

链接:https://www.vmware.com/cn/products/workstation-player.html
image.pngimage.png

2. 下载ubuntu镜像

链接:https://releases.ubuntu.com/
image.png
image.png

3. 安装

安装vmware,并将iso镜像安装完毕,等待完成。

4. 做一些设置

4.1 分辨率设置

按win键输入【resolution】
image.png

4.2 语言下载

按win键输入【language】,按照如下过程安装完毕之后,可以注销登录,重新登录系统就生效了。
image.png
image.png
image.png
image.png

4.3 输入法设置

按win键输入【language】
image.png
image.png

4.4 时区设置

按win键输入【time】
在这里插入图片描述

5. 直接切换管理员权限

sudo su - root

6. 网络

安装命令

# 更新安装包信息
sudo apt update# 比如如果使用ifconfig命令,可以先安装
apt install net-tools# 安装vim
apt install vim# 试试安装docker
apt install docker.io
docker -v
docker run hello-world# 安装java8环境
apt install openjdk-8-jdk
java -version
# 安装maven
apt install maven
mvn -v

6.1 看ip

如果win本地想连接虚拟机,先使用ifconfig查看ip,然后本地看看能不能ping通。
image.png

6.2 ssh

# 安装ssh
sudo apt-get install openssh-server# 使用命令查看ssh服务是否已经开启
ps -ef | grep ssh

image.png
然后远程就可以访问了
image.png

7. 本地编译器连接远程服务器

7.1 创建远程部署的配置

以Goland举例
image.png
image.png
image.png
image.png
image.png

7.2 文件同步


image.png
image.png
image.png
每次手动太麻烦了,点击自动同步
image.png
除此之外,可以做一些同步的设置(例如,可以设置如果删除本地文件,也删除远程文件)
image.png
image.png

7.3 远程启动项目

在本地编译器新建一个远程的终端,就可以直接用命令行启动项目了(注意:服务器需要安装响应的环境才行)
image.png

8. ubuntu安装golang环境

8.1 安装golang

golang安装的包都存在【$HOME/go/pkg】目录下.

# 先更新一下
sudo apt update# 方式1:安装golang,这种方式安装的版本太老了
sudo apt install golang
# 方式2:可以用这种方式,安装指定版本
wget https://golang.org/dl/go1.19.linux-amd64.tar.gz	# 这个连接失败,用下面这个
wget https://golang.google.cn/dl/go1.19.linux-amd64.tar.gz
tar -xvf go*.tar.gz
sudo mv go /usr/local
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.profile
source ~/.profile# 查看版本
go versiongo # 设置代理(重要,不然go get 的时候总是失败)
go env -w GOPROXY=https://goproxy.io,direct# 卸载golang
sudo apt remove golang
sudo apt purge golang-go

8.2 启动golang项目

# build
go build liuyaohui.lyh/remoteProject# 运行
./remoteProject

9. 使用docker部署

9.1 Dockerfile

项目根目录下新建Dockerfile

# 使用官方的 Golang 镜像作为基础镜像
FROM golang:1.19# 镜像作者
MAINTAINER tdfxlyh# 设置工作目录
# 容器内创建 myproject 文件夹
ENV APP_HOME=/home/lyh/code/remoteProject
RUN mkdir -p $APP_HOME
WORKDIR $APP_HOME# 给golang设置代理
RUN go env -w GOPROXY=https://goproxy.io,direct# 将当前目录加入到工作目录中(. 表示当前目录)
ADD . $APP_HOME# 安装 MySQL 客户端
# RUN apt-get update && apt-get install -y mysql-client# 构建 Go 项目
RUN go build -o main# 暴露一个端口(如果你的应用需要)
EXPOSE 8080# 启动应用程序
CMD ["./remoteProject"]

9.2 执行的命令

# 1.进入项目根目录
# 2.打包成镜像
docker build -t remote-project-test .
# 3.登录dockerhub
docker login -u tdfxlyh
# 4.新建一个tag,名字必须跟你注册账号一样
docker tag remote-project-test tdfxlyh/remote-project-test:latest
# 5.推上去
docker push tdfxlyh/remote-project-test:latest# 远程服务器拉取
docker pull tdfxlyh/remote-project-test:latest
docker run -d -p 8080:8080 tdfxlyh/remote-project-test:latest

9.3 一些参考的命令

# 1.列出本地的镜像
docker images [OPTIONS]
# 2.删除某个镜像
docker rmi [-f] 镜像名字
# 3.查看容器
docker ps -n 15
# 4.启动已经停止运行的容器
docker start 容器ID(容器名)
# 5.重启容器
docker restart 容器ID(容器名)
# 6.停止容器
docker stop 容器ID(容器名)
# 7.强制停止容器
docker kill 容器ID(容器名)
# 8.删除已停止的容器
docker rm [-f] 容器ID(容器名)
http://www.lryc.cn/news/150978.html

相关文章:

  • Web安全——穷举爆破上篇(仅供学习)
  • POJ 3045 Cow Acrobats 二分+优先队列
  • 手写实现call() apply() bind()函数,附有详细注释,包含this指向、arguments讲解
  • MySQL中日期、时间直接相减的坑
  • 漏洞发现-web应用发现探针类型利用(43)
  • 专门针对开发人员,攻击者利用Rust获取操作系统信息
  • PHP8的箭头函数-PHP8知识详解
  • 初识PHP编程:探索Web开发的起点
  • Git——Windows平台创建gitee私有仓库详解
  • Git基础教程-常用命令整理:学会Git使用方法和错误解决
  • Ops实践 | 国产化KylinOS系统中快速部署企业内部高性能DNS服务器、时间同步服务器 (精选)...
  • stm32之IIC协议
  • 范式 事务 多表查询
  • 基于白鲸算法优化的BP神经网络(预测应用) - 附代码
  • java并发编程 ReentrantLock详解
  • Java获取文件内容IO流
  • Java后端开发面试题——集合篇
  • 如何允许远程访问MySQL
  • 001图机器学习与图神经网络简介
  • 万级数据优化EasyExcel+mybatis流式查询导出封装
  • Unity——脚本序列化
  • es(Elasticsearch)介绍
  • C++中使用 do…while 循环
  • 开源vue动态表单组件
  • 怎么从0到1创建一个PHP框架-1?
  • Qt无边框青绿色主题
  • 200 套基于Java开发的Java毕业设计实战项目(含源码+说明文档)
  • Ansible学习笔记7
  • Python3 对列表、字典以及二者的嵌套数据(JSON)格式排序
  • 如何在B站进行学习直播