• vmware虚拟机(ubuntu)&远程开发&golang、python环境安装


    参考鱼皮的视频:服务器很贵?搞台虚拟机玩玩!保姆级 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
    
    • 1

    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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    6.1 看ip

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

    6.2 ssh

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

    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 version
    
    # 设置代理(重要,不然go get 的时候总是失败)
    go env -w GOPROXY=https://goproxy.io,direct
    
    
    
    # 卸载golang
    sudo apt remove golang
    sudo apt purge golang-go
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    8.2 启动golang项目

    # build
    go build liuyaohui.lyh/remoteProject
    
    # 运行
    ./remoteProject
    
    • 1
    • 2
    • 3
    • 4
    • 5

    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"]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29

    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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    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(容器名)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    10. 安装python虚拟环境

    10.1 安装虚拟环境与生成requirements.txt

    sudo apt update
    # 安装环境
    sudo apt install python3
    # 安装pip
    sudo apt install python3-pip
    # 安装虚拟环境
    sudo apt install python3-venv
    
    # 创建一个虚拟环境并激活 (尽量在项目的根目录下执行下面的命令)
    sudo python3 -m venv venv
    source venv/bin/activate
    # 在有管理员权限的地方执行
    pip install -r requirements.txt
    
    
    # 项目生成requirements.txt文件
    # 方式一:在有git和虚拟环境的命令行下执行
    pip freeze > requirements.txt
    # 方式二:推荐使用这个,需要在虚拟环境下执行
    pip install pipreqs
    pipreqs . --encoding=utf8 --force
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    10.2 部署flask项目bug解决

    问题:使用 flask run运行项目之后,项目在虚拟机上可以访问,但是在windows上不能访问。
    解决:使用如下命令进行启动,指定host为"0.0.0.0",而不是默认的"127.0.0.1".

    flask run --host=0.0.0.0 --port=5000
    
    • 1
  • 相关阅读:
    内存马概念
    SSM框架整合
    Docker下的SqlServer发布订阅启用
    【springboot进阶】优雅使用 MapStruct 进行类复制
    虚函数(覆盖、隐藏、多态)
    解析Html Canvas的卓越性能与高效渲染策略
    拓展了个新业务枚举类型,资损了
    17.电话号码的字母组合
    处理Exception的几种实践
    单元格法近似求解多边形最大内接矩形问题【思路讲解+java实现】
  • 原文地址:https://blog.csdn.net/qq_43279324/article/details/132643009