在vultr安装和使用golang
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的更多相关文章
- 转一个集成速锐的ss 回头试试 补充加速一、Vultr安装锐速
https://liyuans.com/archives/ssr-serverspeeder-onekey.html Debian/Ubuntu 系统 ShadowsocksR 一键安装脚本 (集成锐 ...
- vultr安装kali
前言 很多国内的主机不支持自定义安装系统,且也不方便下载国外资料:),所以需要使用vultr安装kali. 1.上传镜像 镜像地址填这个(我当时的最新版本) https://cdimage.kali. ...
- Ubuntu下安装Rabbitmq和golang环境
安装及配置Rabbitmq 1. 安装: sudo apt-get install rabbitmq-server 2. 启动web管理插件 sudo rabbitmq-plugins enable ...
- RabbitMQ安装|使用|概念|Golang开发
搬砖的陈大师版权所有,转载请注明:http://www.lenggirl.com/tool/RabbitMQ.html 手册:http://www.rabbitmq.com/getstarted.ht ...
- golang和vim-go安装配置
一.Golang安装 1.下载golang安装包http://golangtc.com/download,我这里下载的是go1.6rc2.linux-amd64.tar.gz. 2.解压到安装目录,我 ...
- Golang安装与命令
1. 安装 Windows - https://golang.org/dl/ 下载msi安装包,点击安装即可.安装后cmd运行go version弹出版本号即安装成功. 2. 命令行 生成exe文件 ...
- golang与vscode的安装与配置
一.golang的下载与安装 以下都是win10的安装与配置 go语言官方下载地址:https://golang.org/dl/ 找到适合你系统的版本下载 傻瓜式安装开始... 二.golang环境变 ...
- Win7安装golang开发环境--备忘录
首次接触golang,非常多东西不熟悉,Git也没有安装. 1 安装golang 1.1 下载golang 我是在Golang中国的下载频道下载的golang1.6.链接例如以下: http://ww ...
- Ubuntu 16.04 下简单安装使用golang之备忘
刚开始学习Go语言,这里记录下我在Ubuntu 16.04下安装使用golang的过程,方便以后查询. 一.安装 1.添加源 如果使用默认的源安装golang的话,版本太低,只到1.6 ...
随机推荐
- 使用Chrome 中的 ssh 插件登陆 linux 服务器
. 在chrome 商店中搜索 secure shell , 安装 Secure Shell Extension 2. 安装完成后,就可以在应用程式中找到Secure Shell App 3.点击 S ...
- pytest进阶之html测试报告
前言 Pytest系列已经写了几篇文章了,也不知道对多少人有帮助,总之对于我自己来说该掌握的都已经掌握了,那么今天我们再来说说pytest如何生成一个完整的html测试报告,让你在吹牛逼的路上再多一份 ...
- MySQL教程之concat以及group_concat的用法
本文中使用的例子均在下面的数据库表tt2下执行: 一.concat()函数 1.功能:将多个字符串连接成一个字符串. 2.语法:concat(str1, str2,...) 返回结果为连接参数产生的字 ...
- Yii框架基础增删查改
返回一条数据 Country::find()->one(); 返回所有数据 Country::find()->all(); 返回记录的数量 $country =Country::find( ...
- 【视频】Entity Framework Core 2.* 入门教程
视频专辑在B站上:https://www.bilibili.com/video/av34462368/ 内容暂时如下,还在更新中: 1. 简介 & 创建Model,生成数据库 2. 在ASP. ...
- Spring Boot 2.x :通过 spring-boot-starter-hbase 集成 HBase
摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! 本文内容 HBase 简介和应用场景 spring-boot- ...
- SAMBA服务和FTP服务讲解(week3_day1)--技术流ken
samba服务 Smb主要作为网络通信协议; Smb是基于cs架构: 完成Linux与windows之间的共享:linux与linux之间共享用NFS 第一步:安装samba [root@ken ~] ...
- RAC(ReactiveCocoa)介绍(一)
最近在学习RAC,之前在iOS工作中,类之间的传值,无非是block.delegate代理.KVO和Notification等这几种方法.在RAC中,同样具备替代block.delegate代理.KV ...
- Spring Boot 2.X 如何添加拦截器?
最近使用SpringBoot2.X搭建了一个项目,大部分接口都需要做登录校验,所以打算使用注解+拦截器来实现,在此记录下实现过程. 一.实现原理 1. 自定义一个注解@NeedLogin,如果接口需要 ...
- Java 原始模型(Prototype)模式
一.什么是原型模式: 通过给出一个原型对象指明所要创建的对象的类型,然后通过复制这个原型对象来获取的更多的同类型的对象. 在Java语言中,支持原型模式,所有的对象都继承自Object对象,Objec ...