1、vultr可以用微信或支付宝充值,方便。好像推荐别人用还能挣美分,懒得弄了,参加了一个充10刀送50刀的活动,感觉实惠(实际用时感觉有点小贵)。

2、注册登录后,控制面板上billing可查看余额。servers中可部署操作系统,我部署了一个最便宜的Centos7(可以部署多个,我部署完查看余额少了1美分)

3、部署的server名最右边有三个点,点击后的菜单中有View Console,是一个运行在浏览器中的Consol。(点开部署的server,可以找到用户名root和密码),登录View Console后进入了远程的centos7系统中了。

4、输入uname -a 无效;   输入:file /bin/ls 有了x86-64字样  ; 输入cat /etc/os-release,有了centos 7的字样

5、输入yum   或wget 或 rpm 或vi (在vi中用  :q  退出)都有,OK!

6、直接 yum install golang 安装成功。 输入go version 查看go版本。输入whereis go 和whereis golang 查看安装位置

7、从本地windows向centos7传文件,看了下xshell 收费。还是用putty  (https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html),安装运行.

安装putty目录中还有个PuTTygen ,首先用它生成(运行后晃动鼠标生成)SSH key   (https://www.vultr.com/docs/how-do-i-generate-ssh-keys/),

然后点save private key,再将public key的全部内容复制server的SSH key中保存。用putty连接后发现还是不能上传下载文件,还要用安装WinSCP或者Filezilla。感觉putty与View Console没区别。突然发现putty目录中有psftp ,运行后按提示open  ,连接成功,可在远程用ls  cd 等命令查看了。

8、在psftp中,运行 get xxx   就将xxx 从远程下载到psftp所在目录中了。将以下代码保存为main.go,并放到psftp目录中

package main

import (
    "fmt"
    "net/http"
)

func main() {
    http.HandleFunc("/", IndexHandler)
    http.ListenAndServe(":9090", nil)
}

func IndexHandler(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintln(w, "hello world!!!")
}

执行 put main.go,上传到了远程的/usr/bin/main.go;然后执行go run main.go  不行。

9、用liteide将上面的main.go交叉编译为linux64程序,名为gohttphello。再用psftp上传后,用  chmod +x gohttphello 加上执行权限,

用  ./gohttphello 运行,提示Text file busy    , 先用yum install psmisc 来安装 fuser  ,然后 fuser gohttphello   无效果。重新./gohttphello无效

10、重新用psftp上传   put main.go  ,然后在putty中 go build -o gohello main.go ,再./gohello ,看到程序运行了(我在代码中加一句控制台输出),但通过浏览器远程无法访问。

11、通过View Console执行   firewall-cmd --state ,显示防火墙running  ;用systemctl stop firewalld.service #关闭防火墙,然后http://X.X.X.X(远程IP),终于成功显示出hello world!!!

12、最后:用systemctl start firewalld.service 重启防火墙 .用以下命令开放9090端口

输入 nohup gohello &        使程序在后台运行

用 ps a 查看当前终端下的所有进程信息,包括其他用户的进程。

用kill  -9  PID数字          结束进程

firewall-cmd --get-active-zones (无显示,应该是zone为空)

firewall-cmd --zone=/tcp --permanent  (永久开放9090端口)

firewall-cmd --reload (重启防火墙)

firewall-cmd --query-port=/tcp  (查看端口是否开放)

参考:(一并致谢)

https://www.cnblogs.com/lzxianren/p/5518919.html

https://www.cnblogs.com/nucdy/p/5702330.html

https://www.cnblogs.com/pcyy/p/7568820.html

https://blog.csdn.net/bihailan123/article/details/80067663

https://www.cnblogs.com/litifeng/p/6891330.html

https://blog.csdn.net/iw1210/article/details/16862147

https://blog.csdn.net/Evan_QB/article/details/79811949

https://blog.csdn.net/zx110503/article/details/78787483

https://www.ibm.com/developerworks/cn/linux/l-cn-nohup

https://www.cnblogs.com/liutao1122/p/8268932.html

在vultr安装和使用golang的更多相关文章

  1. 转一个集成速锐的ss 回头试试 补充加速一、Vultr安装锐速

    https://liyuans.com/archives/ssr-serverspeeder-onekey.html Debian/Ubuntu 系统 ShadowsocksR 一键安装脚本 (集成锐 ...

  2. vultr安装kali

    前言 很多国内的主机不支持自定义安装系统,且也不方便下载国外资料:),所以需要使用vultr安装kali. 1.上传镜像 镜像地址填这个(我当时的最新版本) https://cdimage.kali. ...

  3. Ubuntu下安装Rabbitmq和golang环境

    安装及配置Rabbitmq 1. 安装: sudo apt-get install rabbitmq-server 2. 启动web管理插件 sudo rabbitmq-plugins enable ...

  4. RabbitMQ安装|使用|概念|Golang开发

    搬砖的陈大师版权所有,转载请注明:http://www.lenggirl.com/tool/RabbitMQ.html 手册:http://www.rabbitmq.com/getstarted.ht ...

  5. golang和vim-go安装配置

    一.Golang安装 1.下载golang安装包http://golangtc.com/download,我这里下载的是go1.6rc2.linux-amd64.tar.gz. 2.解压到安装目录,我 ...

  6. Golang安装与命令

    1. 安装 Windows -  https://golang.org/dl/ 下载msi安装包,点击安装即可.安装后cmd运行go version弹出版本号即安装成功. 2. 命令行 生成exe文件 ...

  7. golang与vscode的安装与配置

    一.golang的下载与安装 以下都是win10的安装与配置 go语言官方下载地址:https://golang.org/dl/ 找到适合你系统的版本下载 傻瓜式安装开始... 二.golang环境变 ...

  8. Win7安装golang开发环境--备忘录

    首次接触golang,非常多东西不熟悉,Git也没有安装. 1 安装golang 1.1 下载golang 我是在Golang中国的下载频道下载的golang1.6.链接例如以下: http://ww ...

  9. Ubuntu 16.04 下简单安装使用golang之备忘

      刚开始学习Go语言,这里记录下我在Ubuntu 16.04下安装使用golang的过程,方便以后查询.   一.安装   1.添加源   如果使用默认的源安装golang的话,版本太低,只到1.6 ...

随机推荐

  1. Linux 桌面玩家指南:01. 玩转 Linux 系统的方法论

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

  2. GROUP BY你都不会!ROLLUP,CUBE,GROUPPING详解

    Group By Group By 谁不会啊?这不是最简单的吗?越是简单的东西,我们越会忽略掉他,因为我们不愿意再去深入了解它. 1 小时 SQL 极速入门(一) 1 小时 SQL 极速入门(二) 1 ...

  3. chrome谷歌浏览器开发者工具-网络带宽控制

    有时候我们想在本地测试一下图片预加载loading的加载情况,如下图: 可无奈一般网络带宽都比较好,基本上看不到效果,图片一下子就加载出来了, 可能这个时候有些小伙伴想到的办法是用定时器延迟加载 其实 ...

  4. 4. VIM 系列 - 认识VIM的缓冲区、窗口、标签页

    目录 1. 缓冲区 2. 窗口 3. 标签页 4. 设置一下热键 1. 缓冲区 文件和缓冲区的区别 vim 打开一个文件时,其实是从磁盘中读取文件到内存中,vim的一些操作其实是在操作缓冲区, 当使用 ...

  5. python安装第三方库报错visual c++ 14.0 is required

    使用python安装第三方库时报错如下: error: Microsoft Visual C++ 14.0 is required. Get it with “Microsoft Visual C++ ...

  6. .NET Core TDD 前传: 编写易于测试的代码 -- 缝

    有时候不是我们不想做单元测试, 而是这代码写的实在是没法测试.... 举个例子, 如果一辆汽车在产出后没完成测试, 那么没人敢去驾驶它. 代码也是一样的, 如果项目未能进行该做的测试, 那么客户就不敢 ...

  7. 如何在ASP.NET Core中使用JSON Patch

    原文: JSON Patch With ASP.NET Core 作者:.NET Core Tutorials 译文:如何在ASP.NET Core中使用JSON Patch 地址:https://w ...

  8. ResDrawableImgUtil【根据图片名称获取resID值或者Bitmap对象】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 根据图片名称获取项目的res/drawable-xxdhpi中相应资源的ID值以及bitmap值的封装类. 效果图 代码分析 根据图 ...

  9. ArticleRemoveDelDialog【基于AlertDialog的回收删除对话框】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 回收删除对话框,继承AlertDialog. 仿照钉钉的长按弹出的移除置顶对话框. 效果图 代码分析 继承AlertDialog: ...

  10. .net4.5部署到docker容器

    .net4.5部署到docker容器 部署到windows容器 部署到linux容器 部署到windows容器 由于.net本身就是运行在windows平台的,所以它与windows容器也是更加适合, ...