一、系统环境:

  1. OS:CentOS 6.8 x64 Minimal
  2. HostName:Weblate
  3. IP:192.168.75.153
  4. Python:2.7.13
  5. pip:9.0.1
  6. Weblate:2.11
  7. Nginx:1.10.1
  8. MySQL:5.5.54
  9. Uwsgi:2.0.14
  10. SELinux:关闭
  11. Iptables:关闭

二、系统设置:

修改机器名:

  1. [root@Weblate /]# vim /etc/sysconfig/network

  修改如下项目:

  HOSTNAME=Weblate

关闭SELinux

  1. [root@Weblate /]# vim /etc/selinux/config

  SELINUX=disabled

关闭防火墙:

  1. [root@Weblate /]# service iptables stop
  2. [root@Weblate /]# chkconfig iptables off

重启系统使以上项目生效:

  1. [root@Weblate /]# reboot

三、安装系统支撑软件包:

安装EPEL源:

  1. [root@Weblate /]# yum -y install epel-release
  2. [root@Weblate /]# yum clean all
  3. [root@Weblate /]# yum makecache

安装常用软件:

  1. [root@Weblate /]# yum -y install vim wegt git xz curl telnet

安装基础软件包:

  1. [root@Weblate /]# yum -y install gcc gcc-c++ autoconf automake

安装Nginx所需的软件包:

  1. [root@Weblate /]# yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel

安装Python所需的软件包:

  1. [root@Weblate /]# yum -y install sqlite sqlite-devel bzip2 bzip2-devel readline readline-devel ncurses ncurses-devel gdbm gdbm-devel tk tk-devel tcl tcl-devel

安装Weblate所需的软件包:

  1. [root@Weblate /]# yum -y install libjpeg libjpeg-devel freetype freetype-devel lcms lcms-devel libwebp libwebp-devel

四、安装Python

  1. [root@Weblate /]# wget -P/usr/local/src/ -c https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tar.xz
  2. [root@Weblate src]# tar -xJvf /usr/local/src/Python-2.7.13.tar.xz -C /usr/local/src/
  3. [root@Weblate /]# cd /usr/local/src/Python-2.7.13
  4. [root@Weblate Python-2.7.13]# ./configure --prefix=/usr/local/python
  5. [root@Weblate Python-2.7.13]# make -j 4
  6. [root@Weblate Python-2.7.13]# make install

添加Python命令到环境变量:

  1. [root@Python /]# vim ~/.bash_profile
  2.  
  3. PATH=$PATH:$HOME/bin
  4. 改为:
  5. PATH=$PATH:$HOME/bin:/usr/local/python/bin

 使环境变量生效:

  1. [root@Python /]# source ~/.bash_profile

查看Python版本:

  1. [root@Weblate /]# python2.7 -V
  2. Python 2.7.13

更改系统默认Python版本为Python2.7

  1. [root@Weblate /]# mv /usr/bin/python /usr/bin/python2.6
  2. [root@Weblate /]# ln -s /usr/local/python/bin/python2.7 /usr/bin/python
  3. [root@Weblate /]# python -V
  4. Python 2.7.13

解决python升级后,YUM不能正常工作的问题:

  1. [root@Weblate /]# vi /usr/bin/yum
  2. 将文件头部的
  3. #!/usr/bin/python
  4. 改成
  5. #!/usr/bin/python2.6

安装PIP:

  1. [root@Weblate /]# wget -P/usr/local/src/ -c https://bootstrap.pypa.io/get-pip.py
  2. [root@Weblate /]# python2.7 /usr/local/src/get-pip.py

查看pip版本:

  1. [root@Weblate /]# pip2.7 -V
  2. pip 9.0.1 from /usr/local/python/lib/python2.7/site-packages (python 2.7)

五、安装memcache

  1. (weblate) [root@Weblate /]# yum -y install memcached
  2. (weblate) [root@Weblate /]# service memcached start
  3. (weblate) [root@Weblate /]# chkconfig memcached on
  4. (weblate) [root@Weblate /]# pip2.7 install python-memcached

六、安装MySQL

  1. (weblate) [root@Weblate /]# wget -P/usr/local/src/ -c https://downloads.mysql.com/archives/get/file/MySQL-5.5.53-1.el6.x86_64.rpm-bundle.tar
  2. (weblate) [root@Weblate /]# tar -xvf MySQL-5.5.54-1.el6.x86_64.rpm-bundle.tar -C /usr/local/src/

删除系统自带mysql组件:

  1. (weblate) [root@Weblate /]# rpm -e --nodeps mysql-libs-5.1.73-7.el6.x86_64

安装新版mysql组件:

  1. (weblate) [root@Weblate /]# yum -y install /usr/local/src/MySQL-server-5.5.54-1.el6.x86_64.rpm
  2. (weblate) [root@Weblate /]# yum -y install /usr/local/src/MySQL-devel-5.5.54-1.el6.x86_64.rpm
  3. (weblate) [root@Weblate /]# yum -y install /usr/local/src/MySQL-shared-5.5.54-1.el6.x86_64.rpm
  4. (weblate) [root@Weblate /]# yum -y install /usr/local/src/MySQL-client-5.5.54-1.el6.x86_64.rpm
  5. (weblate) [root@Weblate /]# service mysql start
  6. (weblate) [root@Weblate /]# chkconfig mysql on
  7. (weblate) [root@Weblate /]# pip2.7 install MySQL-python

  注:MySQL-shared这个包一定要装,不然安装MySQL-python会报错,切记!

设置mysql管理员密码:

  1. (weblate) [root@Weblate /]# mysqladmin -u root password 'hui123'

创建weblate数据库:

  1. (weblate) [root@Weblate /]# mysql -uroot -phui123
  2. mysql> CREATE DATABASE weblate CHAR SET UTF8;

七、安装Weblate

  1. [root@Weblate /]# wget -P/usr/local/src/ -c https://dl.cihar.com/weblate/Weblate-2.11.tar.gz
  2. [root@Weblate src]# tar -xzvf /usr/local/src/Weblate-2.11.tar.gz -C /usr/local/src/
  3. [root@Weblate /]# mv /usr/local/src/Weblate-2.11 /usr/local/weblate

安装虚拟环境插件:

  1. [root@Weblate /]# pip2.7 install virtualenv

创建虚拟环境并激活:

  1. [root@Weblate /]# virtualenv --python=/usr/local/python/bin/python2.7 /usr/local/weblate
  2. [root@Weblate /]# source /usr/local/weblate/bin/activate

安装运行weblate 所需的Python组件:

  1. (weblate) [root@Weblate weblate]# cd /usr/local/weblate
  2. (weblate) [root@Weblate weblate]# pip2.7 install -r requirements.txt -i https://pypi.doubanio.com/simple/
  3. (weblate) [root@Weblate weblate]# pip2.7 install -r requirements-optional.txt -i https://pypi.doubanio.com/simple/

  注:https://pypi.doubanio.com/simple/为豆瓣的源,速度比官方的快的不是一点半点!

创建Weblate数据库连接配置文件:

  1. (weblate) [root@Weblate /]# cp /usr/local/weblate/weblate/settings_example.py /usr/local/weblate/weblate/settings.py
  2. (weblate) [root@Weblate /]# vim /usr/local/weblate/weblate/settings.py
  1. 按照如下内容修改内容
  1. DATABASES = {
  2. 'default': {
  3. # Use 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
  4. 'ENGINE': 'django.db.backends.mysql',
  5. # Database name or path to database file if using sqlite3.
  6. 'NAME': 'weblate',
  7. # Database user, not used with sqlite3.
  8. 'USER': 'root',
  9. # Database password, not used with sqlite3.
  10. 'PASSWORD': 'hui123',
  11. # Set to empty string for localhost. Not used with sqlite3.
  12. 'HOST': '127.0.0.1',
  13. # Set to empty string for default. Not used with sqlite3.
  14. 'PORT': '',
  15. }
  16. }

初始化数据库:

  1. (weblate) [root@Weblate /]# python2.7 /usr/local/weblate/manage.py migrate

创建Weblate管理员账号:

  1. (weblate) [root@Weblate /]# python2.7 /usr/local/weblate/manage.py createadmin
  2. Creating user admin with password 3@mSnRUNYljns

  注:这里生成的密码就是用来登录Weblate系统的。

测试服务是否正常启动:

  1. (weblate) [root@Weblate /]# python2.7 /usr/local/weblate/manage.py runserver
  2. Performing system checks...
  3.  
  4. System check identified no issues (0 silenced).
  5. March 01, 2017 - 08:51:12
  6. Django version 1.10.5, using settings 'weblate.settings'
  7. Starting development server at http://127.0.0.1:8000/
  8. Quit the server with CONTROL-C.
  1. [root@Weblate ~]# curl http://127.0.0.1:8000/

八、安装uWSGI

  1. (weblate) [root@Weblate /]# pip2.7 install uwsgi
  2. (weblate) [root@Weblate /]# uwsgi --version
  3. 2.0.14

创建uWSGI配置文件:

  1. (weblate) [root@Weblate /]# vim /etc/uwsgi9090.ini
  2.  
  3. 配置文件内容如下:
  4. [uwsgi]
  5. # plugins = python
  6. master = true
  7. protocol = uwsgi
  8. socket = 127.0.0.1:9090
  9. wsgi-file = /usr/local/weblate/weblate/wsgi.py
  10. python-path = /usr/local/weblate
  11. # Needed for OAuth/OpenID
  12. buffer-size = 8192
  13. # Increase number of workers for heavily loaded sites
  14. # workers = 6
  15. # Needed for background processing
  16. enable-threads = true
  17. chdir = /usr/local/weblate
  18. home = /usr/local/weblate
  19. vhost = true
  20. pidfile = /var/run/uwsgi9090.pid
  21. daemonize = /var/log/uwsgi9090.log

九、安装Nginx:

  1. (weblate) [root@Weblate src]# wget -P/usr/local/src/ -c http://nginx.org/download/nginx-1.10.3.tar.gz
  2. (weblate) [root@Weblate src]# tar -xzvf /usr/local/src/nginx-1.10.1.tar.gz -C /usr/local/src/
  3. (weblate) [root@Weblate src]# cd /usr/local/src/nginx-1.10.1
  4. (weblate) [root@Weblate nginx-1.10.1]# ./configure --prefix=/usr/local/nginx --with-http_ssl_module
  5. (weblate) [root@Weblate nginx-1.10.1]# make -j 2
  6. (weblate) [root@Weblate nginx-1.10.1]# make install

配置Nginx

  1. (weblate) [root@Weblate /]# vim /usr/local/nginx/conf/nginx.conf

将如下代码替换对应的代码:

  1. server {
  2.  
  3. listen 80;
  4. server_name weblate;
  5. root /usr/local/weblate;
  6.  
  7. location /favicon.ico {
  8. alias /usr/local/weblate/weblate/static/favicon.ico;
  9. expires 30d;
  10. }
  11.  
  12. location /static/ {
  13. alias /usr/local/weblate/weblate/static/;
  14. expires 30d;
  15. }
  16.  
  17. location /robots.txt {
  18. alias /usr/loca/weblate/weblate/static/robots.txt;
  19. expires 30d;
  20. }
  21.  
  22. location /static/admin/ {
  23. alias /usr/local/weblate/lib/python2.7/site-packages/django/contrib/admin/static/admin/;
  24. expires 30d;
  25. }
  26.  
  27. location / {
  28. include uwsgi_params;
  29. # Needed for long running operations in admin interface
  30. uwsgi_read_timeout 3600;
  31. uwsgi_pass 127.0.0.1:9090;
  32. }
  33.  
  34. }

检查Nginx的配置文件:

  1. (weblate) [root@Weblate /]# /usr/local/nginx/sbin/nginx -t
  2. nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
  3. nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

十、增加开机启动项:

  1. (weblate) [root@Weblate /]# vim /etc/rc.local

添加如下内容

  1. source /usr/local/weblate/bin/activate
  2. pkill -9 uwsgi
  3. uwsgi /etc/uwsgi9090.ini
  4. pkill -9 nginx
  5. /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

十一、排错:

在浏览器访问,会出现以下错误:

  

  1. [root@Weblate /]# vim /usr/local/weblate/lib/python2.7/site-packages/django/http/request.py

  修改如下项目,添加服务器的IP或者域名信息:

  1. # Allow variants of localhost if ALLOWED_HOSTS is empty and DEBUG=True.
  2. allowed_hosts = settings.ALLOWED_HOSTS
  3. if settings.DEBUG and not allowed_hosts:
  4. allowed_hosts = ['localhost', '127.0.0.1', '192.168.75.153', '[::1]']

附件1Python各插件版本信息:

  1. (weblate) [root@Weblate /]# pip2.7 list --format=columns
  2.  
  3. Package Version
  4. ---------------------- --------
  5. appdirs 1.4.2
  6. Babel 2.3.4
  7. chardet 2.3.0
  8. defusedxml 0.5.0
  9. diff-match-patch 20121119
  10. Django 1.10.5
  11. django-appconf 1.0.2
  12. django-compressor 2.1.1
  13. django-crispy-forms 1.6.1
  14. djangorestframework 3.5.4
  15. lxml 3.7.3
  16. mercurial 4.1
  17. MySQL-python 1.2.5
  18. oauthlib 2.0.1
  19. olefile 0.44
  20. packaging 16.8
  21. Pillow 4.0.0
  22. pip 9.0.1
  23. pydns 2.3.6
  24. PyJWT 1.4.2
  25. pyLibravatar 1.7
  26. pyparsing 2.1.10
  27. python-bidi 0.4.0
  28. python-dateutil 2.6.0
  29. python-memcached 1.58
  30. python-openid 2.2.5
  31. pytz 2016.10
  32. pyuca 1.1.2
  33. PyYAML 3.12
  34. rcssmin 1.0.6
  35. requests 2.13.0
  36. requests-oauthlib 0.8.0
  37. rjsmin 1.0.12
  38. setuptools 34.3.0
  39. six 1.10.0
  40. social-auth-app-django 1.1.0
  41. social-auth-core 1.2.0
  42. translate-toolkit 2.0.0
  43. uWSGI 2.0.14
  44. wheel 0.29.0
  45. Whoosh 2.7.4

附件2:Python各模块功能说明:

Python编译过程中会提示缺少模块,下表为各模块功能说明:

  1. Python build finished, but the necessary bits to build these modules were not found:
  2.  
  3. _bsddb _curses _curses_panel
  4. _sqlite3 _tkinter bsddb185
  5. bz2 dbm dl
  6. gdbm imageop readline
  7. sunaudiodev
  8.  
  9. To find the necessary bits, look in setup.py in detect_modules() for the module's name.

模块

依赖

说明

_bsddb

bsddb

Interface to Berkeley DB library。Berkeley数据库的接口

_curses

ncurses-devel

Terminal handling for character-cell displays。

_curses_panel

ncurses-devel

A panel stack extension for curses。

_sqlite3

sqlite-devel

DB-API 2.0 interface for SQLite databases。SqlLite,CentOS可以安装sqlite-devel

_ssl

openssl-devel

TLS/SSL wrapper for socket objects。

_tkinter

tk-devel tcl-devel

a thin object-oriented layer on top of Tcl/Tk。如果不使用桌面程序可以忽略TKinter

bsddb185

old bsddb module

老的bsddb模块,可忽略。

bz2

bzip2-devel

Compression compatible with bzip2。bzip2-devel

dbm

gdbm-devel

Simple “database” interface。

dl

N/A

Call C functions in shared objects.Python2.6开始,已经弃用。

gdbm

gdbm-devel

GNU’s reinterpretation of dbm

imageop

N/A

Manipulate raw image data。已经弃用。

readline

readline-devel

GNU readline interface

sunaudiodev

N/A

Access to Sun audio hardware。这个是针对Sun平台的,CentOS下可以忽略

zlib

Zlib-devel

Compression compatible with gzip

[THE END]

Weblate 2.11安装配置文档的更多相关文章

  1. azkaban编译安装配置文档

    azkaban编译安装配置文档 参考官方文档: http://azkaban.github.io/azkaban/docs/latest/ azkaban的配置文件说明:http://azkaban. ...

  2. Oracle12C安装配置文档

    Oracle12C安装配置文档   Oracle12C安装配置文档 准备软件: 开始安装: 打开从官网下载下来的两个压缩包,进行解压 打开解压好的后缀为2of2的文件夹找到路径为database下的“ ...

  3. IDEA2018.1安装配置文档

    一.软件安装 1. 下载地址: https://www.jetbrains.com/idea/download/#section=windows 2. 安装: 点击.exe,选择安装路径,点击next ...

  4. ELK6.x_Kafka 安装配置文档

    1. 环境描述 1.1.   环境拓扑 如上图所示:Kafka为3节点集群负责提供消息队列,ES为3节点集群.日志通过logstash或者filebeat传送至Kafka集群,再通过logstash发 ...

  5. MySQL5.6.36 linux rpm包安装配置文档

    一.卸载自带mysql,删除MySQL的lib库,服务文件 [root@localhost ~]#rpm -qa|grep mysql qt-mysql-4.6.2-26.el6_4.x86_64 m ...

  6. ELK7.3实战安装配置文档

    整体架构   一:环境准备 1.环境规划准备 192.168.43.16 jdk,elasticsearch-master ,logstash,kibana 192.168.43.17 jdk,ela ...

  7. RHEL6-HA集群在VMware虚拟机环境安装配置文档

    (一)系统环境描述 本文档基于RHEL6u5 系统安装,配置为2节点高可用集群,节点为两台VMware虚拟机. 也可参考http://blog.51cto.com/ty1992/1325327 (二) ...

  8. ganlia安装配置文档

    gangliaz在ubuntu中安装和配置很简单 1.  服务器端安装 sudo apt-get install ganglia-monitor ganglia-webfrontend rrdtool ...

  9. WebLogic12C安装配置文档

    jdk版本:1.8; jdk安装路径不准有空格 JDK安装: jdk版本:1.8; jdk安装路径不准有空格 WebLogic安装: 解压安装包 解压JAR 找到fmw_12.2.1.3.0_wls\ ...

随机推荐

  1. hive JDBC客户端启动

    JDBC客户端操作步骤

  2. socket FTP-1

    基于socket实现文件的传输以及md5验证 server: import socket import os import hashlib server=socket.socket() server. ...

  3. Spring4 MVC Hibernate4 maven集成

    http://www.cnblogs.com/leiOOlei/p/3727859.html

  4. Vue学习目录

    前面的话 近年来,前端框架发展火热,新的框架和名词不停地出现在开发者眼前,而且开发模式也产生了一定的变化.目前来看,前端MVVM框架的出现给开发者带来了不小的便利,其中的代表就有Angular.js. ...

  5. NotBacon

    What's It Do? The application consists of two components: A Custom Vision Service project that allow ...

  6. Xamarin + MvvmCross 安装 Part 1

    前言 最近,由于工作需要,公司准备开发移动端APP.临近年底,公司不准备大面招人,由于公司一直基于.net平台进行开发,本人自告奋勇,准备先用xamarin做下移动开发.开始了在网上不停的google ...

  7. U68641 划水(swim.pas/c/cpp)

    U68641 划水(swim.pas/c/cpp) 题目背景 小小迪带你划水. 题目描述 原题 输入输出格式 输入格式: 第一行一个数 T. 接下来 T 行每行一个数表示 n 输出格式: 输出 T 行 ...

  8. Go For It ,一个灵活的待办事项列表程序

    导读 Go For It,是我们开源工具系列中的第十个工具,它将使你在 2019 年更高效,它在 Todo.txt 系统的基础上构建,以帮助你完成更多工作. 每年年初似乎都有疯狂的冲动想提高工作效率. ...

  9. windows电脑连接蓝牙耳机的正确步骤

    前言 我使用的是小米运动蓝牙耳机,操作系统为win7,废话少说直接上教程 是否支持蓝牙功能 按住win+R,打开[运行],输入devmgmt.msc,回车. 只要有Bluetooth 无线电收发器,那 ...

  10. Django 下载和初识

    Django Django官网下载页面 安装(安装最新LTS版): pip3 install django==1.11.9 创建一个django项目: 下面的命令创建了一个名为"mysite ...