linux虚机配置开发/Server环境全集

Posted Python_ZEN

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux虚机配置开发/Server环境全集相关的知识,希望对你有一定的参考价值。

linux虚机配置开发/Server环境全集

9. centos 升级git
http://www.cnblogs.com/grimm/p/5368777.html
a. 

下载git2.2.1并将git添加到环境变量中

># wget https://github.com/git/git/archive/v2.2.1.tar.gz
># tar zxvf v2.2.1.tar.gz
># cd git-2.2.1># make configure
># ./configure --prefix=/usr/local/git --with-iconv=/usr/local/libiconv
># make all doc
># make install install-doc install-html>
# echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc
># source /etc/bashr

b.

在安装perl的模块时候,出现这个错误:

Can\'t locate ExtUtils/MakeMaker.pm in @INC

解决方法如下:

 
1
2
3
4
5
6
7
cd /root
wget http://files.directadmin.com/services/9.0/ExtUtils-MakeMaker-6.31.tar.gz
tar xvzf ExtUtils-MakeMaker-6.31.tar.gz
cd ExtUtils-MakeMaker-6.31
perl Makefile.PL
make
make install 
 c.
上一步报错的话
yum install perl-ExtUtils-MakeMaker
d.
还会报错,提示超不到curl

CentOS的话,使用yum安装curl开发相关库后:

$ yum install libcurl-devel

 e. 找不到asciidoc , 注意添加路径

wget http://sourceforge.net/projects/asciidoc/files/asciidoc/8.6.9/asciidoc-8.6.9.tar.gz

f. 又又又缺包

yum search  XSLTPROC

然后安装,加环境变量。。。。。。
g.  warning: failed to load external entity "http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl"
提示有一个地址文件没能找到,解决方法:
yum -y install docbook-style-xsl 
h. #yum -y install xmlto 

否则会编译不通过:

/bin/sh: line 1: xmlto: command not found 
i. git init后提示????,而且没有创建成功
chmod 777 使用的文件夹,因为当前用户没有权限
终于Finally。。。。。。。。。。。。。。。。。能用了


8.部署flask

遇到问题1: uwsgi提示无法load configurtion  from XX.ini这个配置文件不能叫uwsgi类的文件名,叫myXX.ini吧 2.提示找不到manager.py,正常的因为就没这个文件,应该叫manage.py流泪 
1、安装nginx

安装nginx之前先要安装gcc编译器和相关工具,使用yum安装,非常方便。

$ sudo yum -y install gcc gcc-c++ make autoconf automake

nginx的一些模块需要第三方库的支持,例如gzip需要zlib,rewrite模块需要pcre库,ssl功能需要openssl库。直接使用yum安装就行了。

$ sudo yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel

前往nginx官网nginx.org下载最新的版本,笔者下载的是1.2.7的版本。

$ wget http://nginx.org/download/nginx-1.2.7.tar.gz

解压安装

$ tar -zxv -f nginx-1.2.7.tar.gz

$ cd nginx-1.2.7

$ ./configure

$ make

$ sudo make install

这里configure使用的都是默认的参数,可以根据自己的需要进行修改。可以使用./configure –help查看帮助说明。

启动nginx服务器

sudo /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

其中/usr/local/nginx/sbin/nginx表示启动程序,这里用全路径更加直观,可以根据自己的习惯做软链接到系统路径。

使用浏览器访问http://127.0.0.1/,如果看到Welcome to nginx!的字样,就表示安装成功了。

2、安装uwsgi

先安装相关依赖python-devel、setuptools,libxml2-devel,直接用yum安装。如果是自行编译安装的python,可以不用安装python-devel。

$ sudo yum -y install python-devel python-setuptools libxml2-devel

前网官网http://projects.unbit.it/uwsgi/下载uwsgi,虽然页面都是英文的,但是不难找到到下载页面。

$ wget http://projects.unbit.it/downloads/uwsgi-1.9.tar.gz

解压安装:

$ tar -zxv -f uwsgi-1.9.tar.gz

$ cd uwsgi-1.9

$ python setup.py install

3、安装flask

前往官网http://flask.pocoo.org/下载flask。

$ wget http://pypi.python.org/packages/source/F/Flask/Flask-0.9.tar.gz

解压安装

$ tar -zxv -f Flask-0.9.tar.gz

$ cd Flask-0.9

$ sudo python setup.py install

新建flask项目,就一个程序文件app.py,内容如下:

from flask import Flask
app = Flask(__name__)
 
@app.route("/")
def hello():
return "Hello World!"
 
if __name__ == "__main__":
app.run()

确保用flask自带的web服务器能够运行。

4、配置nginx和uwsgi

这个步骤是比较麻烦,但是理解原理后也不难。

uwsgi在nginx 1.2.7是标准模块,所以不需要安装。编辑nginx的配置文件,使其加载uwsgi。

location / {
    include uwsgi_params;
    uwsgi_pass 127.0.0.1:3031;
    root  html;
    index  index.html index.htm;
}

修改完成后可以测试下配置文件是否没有错误。

$ sudo /usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf

配置完成之后,重新启动nginx。先找到nginx主进程编号:

$ ps -ef | grep nginx

笔者电脑上是13367,然后重新启动

$ sudo kill -HUP 13367

在flask的项目下新建一个配置文件app_config.xml,用来设置uwsgi相关的参数,一会uwsgi在启动时需要指明这个配置文件,内容如下:

<uwsgi>
<pythonpath>/home/chenjiebin/web/flaskdemo</pythonpath>
<module>app</module>
<callable>app</callable>
<socket>127.0.0.1:3031</socket>
<master/>
<processes>4</processes>
<memory-report/>
</uwsgi>

其中个参数表示:

  • pythonpath表示项目目录
  • module表示项目启动模块,如上例为app.py,这里就为app
  • callable表示flask项目的实例名称,上例代码中app = Flask(__name__),所以这里为app
  • socket表示和nginx通信的地址和端口,和nginx配置里的uwsgi_pass一致。
  • processes表示开启多少个子进程处理请求。

启动uwsgi:

$ sudo /usr/local/bin/uwsgi -x /home/chenjiebin/web/flaskdemo/app_config.xml

其中-x参数表示加载的配置文件路径。

这时候在浏览器里访问http://localhost,看到输出Hello World!就大功告成了。

小提示:如果需要让uwsgi以守护进程的方式运行,使用-d参数并指明日志路径就可以了。

 $ sudo /usr/local/bin/uwsgi -x /home/chenjiebin/web/flaskdemo/app_config.xml -d /var/log/uwsgi/uwsgi.log

小结

nginx和uwsgi之间的通信这里是使用端口进行通信,也可以使用socket文件。uwsgi的配置也可以使用其他的配置文件,不一定要用xml,这里就不再说明了。有什么一问题可以来信交流。

Nginx 的详细介绍请点这里
Nginx 的下载地址请点这里

更多CentOS相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14

本文永久更新链接地址http://www.linuxidc.com/Linux/2014-05/101529.htm



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7.centos  升级python,以及安装pip

1. 安装必要的准备包

        安装过程将用到gcc,方便起见,安装“Development Tools”

yum groupinstall "Development tools"

         另外,Python安装中需要的一些依赖包

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel

2. 下载安装Python2.7

        目前Python2.7的最新版本是2.7.11。可以在下面的网站查询:

        https://www.python.org/ftp/python/

        2.7.11的下载链接是:

        https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz

wget https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz
tar vxf Python-2.7.11.tgz
cd Python-2.7.11.tgz
./configure --prefix=/usr/local --enable-unicode=ucs4 --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib"
make && make altinstall

  安装完成后,通过运行python,可以看到版本

>>> import sys
>>> sys.version\'2.7.11 (default, May 6 2016, 01:38:00) \\n[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)]\'

3.安装pip

  pip是python的安装工具,很多python的常用工具,都可以通过pip进行安装。

  要安装pip,首先要安装setuptools。下面的链接可以得到相关信息,最新版本是21.0.0:

  https://pypi.python.org/pypi/setuptools

  下载链接:

  https://pypi.python.org/packages/ff/d4/209f4939c49e31f5524fa0027bf1c8ec3107abaf7c61fdaad704a648c281/setuptools-21.0.0.tar.gz#md5=81964fdb89534118707742e6d1a1ddb4

  同样的,进行安装:

tar vxf setuptools-21.0.0.tar.gz cd setuptools-21.0.0python setup.py install

  安装完成后,下载pip。其信息在如下网站:

  https://pypi.python.org/pypi/pip

  最新版是8.1.1,下载链接:

  https://pypi.python.org/packages/41/27/9a8d24e1b55bd8c85e4d022da2922cb206f183e2d18fee4e320c9547e751/pip-8.1.1.tar.gz#md5=6b86f11841e89c8241d689956ba99ed7

  同样的,进行安装

tar vxf pip-8.1.1.tar.gz cd pip-8.1.1python setup.py install

  安装完成后,运行pip

复制代码
[root@hwthstest08 pip-8.1.1]# pip
不要升级pip,会报错

5.查看版本信息

 

 

[plain] view plain copy
 
 print?
  1. #/usr/local/bin/python2.7 -V  

6.建立软连接,使系统默认的 python指向 python2.7
[plain] view plain copy
 
 print?
  1. #mv /usr/bin/python /usr/bin/python2.6.6  
  2. #ln -s /usr/local/bin/python2.7 /usr/bin/python  

7.重新检验Python 版本

 

 

[plain] view plain copy
 
 print?
  1. #python -V  

8解决系统 Python 软链接指向 Python2.7 版本后,因为yum是不兼容 Python 2.7的,所以yum不能正常工作,我们需要指定 yum 的Python版本

 

 

[plain] view plain copy
 
 print?
  1. #vi /usr/bin/yum  

 

 

将文件头部的
#!/usr/bin/python


改成

#!/usr/bin/python2.6.6
此时运行virtualenv可能报错,找不到命令,需要切换到普通用户,不能用root  

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
****************************************
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
6.
新建项目 托管 建python虚拟环境~~
1. coding.net新建项目   zblog3
2. 本地初始化git
git init
3. 远程仓库
    a. 创建SSH Key(如果需要)
    b. git clone -o myremoteName https://git.coding.net/xiaofeier312/zblog3.git
    
4. 本地virtualenv zblog3env
5. 导出、导入 环境版本(待定)
pip freeze >requirements.txt
pip install -r requirements.txt
6. git操作(http://www.ruanyifeng.com/blog/2014/06/git_remote.html
    git add XX.X
    git commit -m "commentXXX"
    git push myremoteName master/banrch
    git pull myremoteName master/...
    git add . //这个可以把所以文件和文件夹都放入提交缓存中,"."表示全部



5.PYCHARM激活方法二个:
一: 
0x1 ,安装
 
0x2 , 调整时间到2038年。
 
0x3 ,申请30天试用
 
0x4, 退出pycharm
 
0x5, 时间调整回来。
二:激活码如下: 

43B4A73YYJ-eyJsaWNlbnNlSWQiOiI0M0I0QTczWVlKIiwibGljZW5zZWVOYW1lIjoibGFuIHl1IiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IkZvciBlZHVjYXRpb25hbCB1c2Ugb25seSIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiSUkiLCJwYWlkVXBUbyI6IjIwMTctMDItMjUifSx7ImNvZGUiOiJBQyIsInBhaWRVcFRvIjoiMjAxNy0wMi0yNSJ9LHsiY29kZSI6IkRQTiIsInBhaWRVcFRvIjoiMjAxNy0wMi0yNSJ9LHsiY29kZSI6IlBTIiwicGFpZFVwVG8iOiIyMDE3LTAyLTI1In0seyJjb2RlIjoiRE0iLCJwYWlkVXBUbyI6IjIwMTctMDItMjUifSx7ImNvZGUiOiJDTCIsInBhaWRVcFRvIjoiMjAxNy0wMi0yNSJ9LHsiY29kZSI6IlJTMCIsInBhaWRVcFRvIjoiMjAxNy0wMi0yNSJ9LHsiY29kZSI6IlJDIiwicGFpZFVwVG8iOiIyMDE3LTAyLTI1In0seyJjb2RlIjoiUEMiLCJwYWlkVXBUbyI6IjIwMTctMDItMjUifSx7ImNvZGUiOiJSTSIsInBhaWRVcFRvIjoiMjAxNy0wMi0yNSJ9LHsiY29kZSI6IldTIiwicGFpZFVwVG8iOiIyMDE3LTAyLTI1In0seyJjb2RlIjoiREIiLCJwYWlkVXBUbyI6IjIwMTctMDItMjUifSx7ImNvZGUiOiJEQyIsInBhaWRVcFRvIjoiMjAxNy0wMi0yNSJ9XSwiaGFzaCI6IjMzOTgyOTkvMCIsImdyYWNlUGVyaW9kRGF5cyI6MCwiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-keaxIkRgXPKE4BR/ZTs7s7UkP92LBxRe57HvWamu1EHVXTcV1B4f/KNQIrpOpN6dgpjig5eMVMPmo7yMPl+bmwQ8pTZaCGFuLqCHD1ngo6ywHKIQy0nR249sAUVaCl2wGJwaO4JeOh1opUx8chzSBVRZBMz0/MGyygi7duYAff9JQqfH3p/BhDTNM8eKl6z5tnneZ8ZG5bG1XvqFTqWk4FhGsEWdK7B+He44hPjBxKQl2gmZAodb6g9YxfTHhVRKQY5hQ7KPXNvh3ikerHkoaL5apgsVBZJOTDE2KdYTnGLmqxghFx6L0ofqKI6hMr48ergMyflDk6wLNGWJvYHLWw==-MIIEPjCCAiagAwIBAgIBBTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTE1MTEwMjA4MjE0OFoXDTE4MTEwMTA4MjE0OFowETEPMA0GA1UEAwwGcHJvZDN5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxcQkq+zdxlR2mmRYBPzGbUNdMN6OaXiXzxIWtMEkrJMO/5oUfQJbLLuMSMK0QHFmaI37WShyxZcfRCidwXjot4zmNBKnlyHodDij/78TmVqFl8nOeD5+07B8VEaIu7c3E1N+e1doC6wht4I4+IEmtsPAdoaj5WCQVQbrI8KeT8M9VcBIWX7fD0fhexfg3ZRt0xqwMcXGNp3DdJHiO0rCdU+Itv7EmtnSVq9jBG1usMSFvMowR25mju2JcPFp1+I4ZI+FqgR8gyG8oiNDyNEoAbsR3lOpI7grUYSvkB/xVy/VoklPCK2h0f0GJxFjnye8NT1PAywoyl7RmiAVRE/EKwIDAQABo4GZMIGWMAkGA1UdEwQCMAAwHQYDVR0OBBYEFGEpG9oZGcfLMGNBkY7SgHiMGgTcMEgGA1UdIwRBMD+AFKOetkhnQhI2Qb1t4Lm0oFKLl/GzoRykGjAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBggkA0myxg7KDeeEwEwYDVR0lBAwwCgYIKwYBBQUHAwEwCwYDVR0PBAQDAgWgMA0GCSqGSIb3DQEBCwUAA4ICAQC9WZuYgQedSuOc5TOUSrRigMw4/+wuC5EtZBfvdl4HT/8vzMW/oUlIP4YCvA0XKyBaCJ2iX+ZCDKoPfiYXiaSiH+HxAPV6J79vvouxKrWg2XV6ShFtPLP+0gPdGq3x9R3+kJbmAm8w+FOdlWqAfJrLvpzMGNeDU14YGXiZ9bVzmIQbwrBA+c/F4tlK/DV07dsNExihqFoibnqDiVNTGombaU2dDup2gwKdL81ua8EIcGNExHe82kjF4zwfadHk3bQVvbfdAwxcDy4xBjs3L4raPLU3yenSzr/OEur1+jfOxnQSmEcMXKXgrAQ9U55gwjcOFKrgOxEdek/Sk1VfOjvS+nuM4eyEruFMfaZHzoQiuw4IqgGc45ohFH0UUyjYcuFxxDSU9lMCv8qdHKm+wnPRb0l9l5vXsCBDuhAGYD6ss+Ga+aDY6f/qXZuUCEUOH3QUNbbCUlviSz6+GiRnt1kA9N2Qachl+2yBfaqUqr8h7Z2gsx5LcIf5kYNsqJ0GavXTVyWh7PYiKX4bs354ZQLUwwa/cG++2+wNWP+HtBhVxMRNTdVhSm38AknZlD+PTAsWGu9GyLmhti2EnVwGybSD2Dxmhxk3IPCkhKAK+pl0eWYGZWG3tJ9mZ7SowcXLWDFAk0lRJnKGFMTggrWjV8GYpw5bq23VmIqqDLgkNzuoog==


4. 
安装 mac字体
 cp  字体文件MONACO.TTF  /usr/share/fonts/truetype/custom/

sudo fc-cache -f -v 




1.

安装mysql

1. 允许root远程访问

use mysql; 
mysql> update user set host = \'%\' where user = \'root\'; 
mysql> select host, user from user; 
mysql> flush privileges;

必须刷新权限

[打开 /etc/conf/在[mysqld]的段中加上一句:skip-grant-tables,可以看到user库]
有时候,没权限加密码,或者,不能用带密码的用户登录,或者直接mysql就能登录
需要删除表中的user(name)为空的项,
记得刷新权限
还得 service mysqld restart

2. 开放端口

打开防火墙配置文件

1
vi  /etc/sysconfig/iptables
2、增加下面一行
1
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
3、重启防火墙
1
service  iptables restart

必须重启防火墙


2.


虚拟机安装linux/python3.4等之坑

VM player不好用

VM workstations 12需要自己设定网卡(编辑菜单>虚拟机网络设定)

vituralBOX 目前不能安装新版centos

虚拟机工具需要重启linux,才能起作用

选硬盘的时候,可以自定义,也可以"USE ALL Space"

自动分 

python用3.4 自带pip等

python3.5不好装pip等工具

python3.4安装

http://www.jianshu.com/p/6199b5c26725

3.
 安装apache  httpd

安装mod_wsgi

yum install mod_wsgi 

 安裝完後沒有 apxs 文件

(自己找最新版)
自己用 yum list "httpd*" 這樣,可以找到 httpd-devel 該套件包,該套件包提供編譯軟件所需要相關的項目

#添加mod_wsgi.so 模块
#LoadModule wsgi_module modules/mod_wsgi.so

#指定myweb项目的wsgi.py配置文件路径
WSGIScriptAlias / /usr/local/projects/send/send/wsgi.py

#指定项目路径
WSGIPythonPath /usr/local/projects/send/send/


4.

 (13)Permission denied: mod_wsgi (pid=6026, process=\'\', application=\'localhost.localdomain|\'): Call to fopen() failed for \'/usr/l

用下面的代替  Require all granted

1
2
Order deny,allow
Allow from all 

 

以上是关于linux虚机配置开发/Server环境全集的主要内容,如果未能解决你的问题,请参考以下文章

Azure Linux 虚机图像化配置之一:CentOS配置

Azure Linux 虚机图像化配置之四:配置问题汇总

linux怎么配置php开发环境

Linux里面网卡配置仅主机模式是啥意思?

开发环境:vs2017+samba+gdb server

Vite 完整版详解