在centos上搭建go,python,git环境

623 查看

因为公司最近引入了open-falcon,一个小米开源的监控系统。
open-falcon有多个组件构成。架构逻辑由go语言开发,信息展示和用户界面由python开发。
open-falcon全部开源在github上,因此服务器环境最好有git命令。
服务器环境是centos 6.5。

go语言

下载语言包,并不需要编译,直接解压出来文件夹,路径是/usr/local/go。

cd /usr/local/src
wget http://www.golangtc.com/static/go/1.7/go1.7.linux-amd64.tar.gz
tar -zxvf go1.7.linux-amd64.tar.gz
mv go /usr/local/

go语言需要为其设定一个源码,可执行文件,包管理的统一路径,这里我设置为/opt/go-workspace。
将以上新增进环境变量文件。

vim /etc/profile
......
export GOROOT="/usr/local/go"
export GOPATH="/opt/go-workspace"
export PATH="$GOROOT/bin:$PATH"
source /etc/profile

这个时候环境已经搭建好了,可以做个测试,编写helloworld文件。
go语言的源码存放在$GOPATH/src下,源码编译后存放在$GOPATH/bin下,各种包存放在$GOPATH/pkg下。

mkdir -p $GOPATH/bin
mkdir -p $GOPATH/src
mkdir -p $GOPATH/pkg
mkdir -p $GOPATH/src/testProject

创建项目testProject,在其下编写一个helloworld.go的文件。
并对其编译,编译的时候任意路径执行go install testProject或者在$GOPATH/src/testProject下执行go install

vim $GOPATH/src/testProject/helloworld.go
package main
import "fmt"
func main(){
    fmt.Printf("Hello,World!\n")
}
go install testProject
cd $GOPATH/bin
./testProject
Hello,World!

甚至将这个testProject移动其他机器上(windows的不知如何验证),即使没有任何go语言环境。

git命令

下载安装前确保基础环境。

yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

下载和安装。

cd /usr/local/src
wget https://github.com/git/git/archive/v2.9.3.zip
unzip v2.9.3.zip
cd git-2.9.3
make prefix=/usr/local/git all
make prefix=/usr/local/git install

将git命令加入环境变量。

vim /etc/profile
......
export PATH="/usr/local/git:$PATH"
source /etc/profile

这时就可以使用git clone等好用的命令了。

python语言

centos 6.5系统默认是有python的,但是版本是2.6。如果需要更高版本,不能在原基础上升级,或是删除后再下载新的。因为操作系统有很多组件是由python2.6实现,比如yum。
下载2.7版本语言包,并编译安装。然后使用软连接命名2.7版本的python为python2.7,而系统默认的python仍然为python。

cd /usr/local/src
wget https://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz
tar zxvf Python-2.7.8.tgz
cd Python-2.7.8
./configure
make
make install
ln -s /usr/local/bin/python2.7 /usr/bin/

[root@localhost usr]# python2.7
Python 2.7.8 (default, Aug 25 2016, 09:58:20)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

到这一步还不够,python有两个必备包需要安装,pip和virtualenv。一个用于下载安装各种有用的python第三方包,一个用于创建独立的python虚拟环境。
安装pip前需要setuptools,easyinstall支持。

cd /usr/local/src
wget https://bootstrap.pypa.io/ez_setup.py --no-check-certificate
python2.7 ez_setup.py
wget https://pypi.python.org/packages/e7/a8/7556133689add8d1a54c0b14aeff0acb03c64707ce100ecd53934da1aa13/pip-8.1.2.tar.gz#md5=87083c0b9867963b29f7aba3613e8f4a --no-check-certificate
tar -zxvf pip-8.1.2.tar.gz
cd pip-8.1.2
python2.7 setup.py install

使用pip直接下载安装virtualenv。

pip install virtualenv

创建virtualenv虚拟环境,之后在该环境下进行源码,包托管。不需要再在操作系统环境下安装各种python第三方包。

cd /opt
virtualenv py-workspace

./opt/py-workspace/bin/python
Python 2.7.8 (default, Aug 25 2016, 09:58:20)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
./opt/py-workspace/bin/pip -V
pip 8.1.2 from /opt/workspace/lib/python2.7/site-packages (python 2.7)

编写一个helloword程序。

vim /opt/py-workspace/helloworld.py
print 'Hello,World!'
./opt/py-workspace/helloworld.py
Hello,World!

以上,如有错误请指出:)
个人小站 http://hongday.net