Linux上go语言搭建环境
每次想在电脑上搞个Linux环境,没有搞个笔记,很麻烦,于是自己记录一下。
一:先安装虚拟机
1.下载虚拟机
https://www.virtualbox.org/ 下载virtualBox虚拟机。下载最新的吧,免得总会有许多奇怪的问题。
https://download.virtualbox.org/virtualbox/6.0.24/VirtualBox-6.0.24-139119-Win.exe 这次我下载的是这个。
还有我这个虚拟机直接安装再默认目录。之前没安装再默认目录老是出现奇怪的问题。没确认是不是这个原因导致的那些问题。
2.下载centos镜像
去centos官网下载个centos7.
3.安装虚拟机后,再新建一个虚拟电脑。
输入名称后,选择数据文件夹。
类型,版本等都是输入了名称后自动选择的。这里就不改了。
后面就一直下一步下一步。
---------------
4.注意,虚拟机网络设置
这里选择桥接模式,桥接模式:虚拟的centos和宿主window主机相当于通过交换机链接。
界面名称那里选择一个桥接的网卡。因为自己要通过wifi上网,而且centos也要上网,所以桥接了wifi的网卡。
但是这里注意:换wifi时,自己的网段会改变,centos的网络也需要改变。
那么自己就设置centos的配置问dhcp获取,因为我这里网不稳定,一会连酒店,酒店网络差,一会又连手机热点。来回切换。
所以每次切换wifi我就centos中systemctl restart network一下,
然后就能在win上通过xshell,git bash等连上centos,centos也能上网。
其他配置密码,内存,cpu,硬盘等就不介绍了。直接下一步就可以。主要时网络这里。
二:安装go语言的开发环境
这个也很每次搞总会有点头疼,
go 从官网下载wget https://dl.google.com/go/go1.15.2.linux-amd64.tar.gz
tar -xzvf go1.15.2.linux-amd64.tar.gz
mv go /usr/local/
vi /etc/profile 更改goroot和gopath
三:配置安装git
yum install git
git config --global user.name "luoxuandong"
git config --global user.email "[email protected]"
ssh-****** -t rsa -C "[email protected]"
ssh -T [email protected]
vi /root/.ssh/id_rsa.pub
添加到github,
就可以git clone了。
但是git clone github很慢,这时候需要借助码云来clone github上的项目。
需要clone的github上的项目,新建一个仓库,其他信息都可以随便填,在最后选择导入项目,将需要clone的的地址,填上即可。。
同样的,需要在码云上克隆,也需要将公钥添加到码云上。
然后,git clone https://gitee.com/luoxuandong/TTBot.git
输入账号luoxuandong
密码qqmima764374...
就可以了。
四:配置go get
1.13以上的go版本
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.io,direct
# 设置不走 proxy 的私有仓库,多个用逗号相隔(可选)
go env -w GOPRIVATE=*.corp.example.com
1.13以下
# 启用 Go Modules 功能
export GO111MODULE=on
# 配置 GOPROXY 环境变量
export GOPROXY=https://goproxy.io
其他window上啥的可参考
这时就可以用go get顺利的获取包了。
这里如果使用了gomod还需要注意go 的包管理工具go mod的使用方式
五:搭建Mysql
很多开源项目都需要搭建数据库,比如常用的Mysql
rpm -qa | grep mysql检查没有安装MySQL
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install mysql-server
chown mysql:mysql -R /var/lib/mysql
mysqld --initialize
systemctl start mysqld
systemctl status mysqld
mysqladmin --version
mysqladmin -u root password "123456";
mysql -uroot -p123456 ziji的数据库xxxdb < db.sql #这里是在命令行导入已有的数据库。
完事,,,这些特么的很少需要搞,要是不记录起来,每次想验证一下github上的某个项目,却没环境,搭环境要搞老半天。
记录下来节省时间。