Django线上部署系统环搭建

Django线上部署系统环搭建

本文大致分为:系统环境准备Python3安装配置Virtualenv基本使用git基本使用 四部分。

ps: 也可使用virtualenvwrapper代替Virtualenv

系统环境准备:

CentOS6.5

自带Python2.6.6,我们需要编译安装Python3(本文档安装的是Python3.6.1)

建议将yum源配置成阿里的yum源,参考链接:http://blog.csdn.net/chavo0/article/details/51939362

为了调试方便关闭防火墙和httpd(视频教程里环境可以这么搞,生产环境请慎用!)

# service iptables stop

# service httpd stop

Python3安装配置:

为了防止安装Python3之后出现以下错误:

ModuleNotFoundError: No module named ‘_sqlite3‘

我们需要先安装sqlite-devel:

# yum -y install sqlite-devel

因为我们要编译安装 Python3,所以要提前安装编译工具及库文件

# yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

下载Python3

https://www.python.org/downloads/

# wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz

安装python3

我个人习惯安装在/usr/local/python3

创建目录:

# mkdir /usr/local/python3

解压下载好的Python-3.x.x.tgz包(具体包名因你下载的Python具体版本不同而不同,如:我下载的是Python3.6.1.那我这里就是Python-3.6.1.tgz)

# tar -zxvf Python-3.6.1.tgz

进入解压后的目录,编译安装。

# cd Python-3.6.1

# ./configure --prefix=/usr/local/python3

# make

# make install

建立python3的软链

# ln -s /usr/local/python3/bin/python3 /usr/bin/python3

并将/usr/local/python3/bin加入PATH

# vim ~/.bash_profile
# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

    . ~/.bashrc

fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin:/usr/local/python3/bin

export PATH

按ESC,输入:wq回车退出。

修改完记得执行下面的命令,让上一步的修改生效:

# source ~/.bash_profile

检查Python3及pip3是否正常可用:

# python3 -V

Python 3.6.1

# pip3 -V

pip 9.0.1 from /usr/local/python3/lib/python3.6/site-packages (python 3.6)

virtualenv安装和使用

此处因为我想要将virtualenv安装到Python3的环境下,所以使用的是pip3 install virtualenv,如果你想安装到Python2,请执行pip install virtualenv

安装 virtualenv:

# pip3 install virtualenv

Collecting virtualenv

  Downloading virtualenv-15.1.0-py2.py3-none-any.whl (1.8MB)

    100% |################################| 1.8MB 527kB/s

Installing collected packages: virtualenv

Successfully installed virtualenv-15.1.0

创建一个目录(/usr/local/envs)用于存放自己的虚拟环境:

# mkdir envs

创建虚拟环境(此处env_test是你的虚拟环境名):

# cd envs

# virtualenv env_test

启动虚拟环境(注意启用虚拟环境后虚拟环境名会出现在最前面):

# cd env_test

# source bin/activate

(env_test)# 

在虚拟环境中pip安装各种第三方包了,比如安装django:

(env_test)# pip install django

pip的常用命令(记得补充以后补充):

查看当前虚拟环境安装的第三方包信息:

(env_test)# pip freeze

将当前虚拟环境安装的第三包信息导出到文件(当前目录下的requirements.txt文件):

(env_test)# pip freeze > requirements.txt

批量安装requirements.txt文件中的第三方包:

(env_test)# pip install -r requirements.txt

git基本使用:

安装git:

# yum install git

从github拉代码到本地服务器(这里以我的Django教程的代码为例):

# git clone http://github.com/xxxxx.html

从远端仓库拉取最新的代码(在本地项目目录下执行):

# git pull

创建该项目对应的虚拟环境(django_test_env),位置随意,一般与项目文件同级或者在项目内部:

我这里是在trydjango110项目内新建一个django_test_env的环境

# cd django_test_env
# virtualenv django_test_env

批量安装所需扩展包:

# source django_test_env/bin/active

(django_test_env)# pip install -r requirements.txt

时间: 2024-10-11 23:43:14

Django线上部署系统环搭建的相关文章

Django线上部署代码修改失效问题

记一次django项目的线上部署维护问题,django+nginx 关于nginx反向代理服务器的介绍这里有一篇博客介绍的比较好:nginx的相关介绍 以及当一次客户端请求发出后,uwsig以及uWSGI,Nginx之间的大致流程:uWSGI.WSGI和uwsgi 一.问题描述 在将django项目部署到阿里云(nginx作为web服务器)上之后,使用宝塔控制面板修改项目源码,或者使用直接在终端修改,修改之后重启uwsgi和nginx无效. 二.问题分析 1.本地环境 在本地环境的时候,是使用D

Django线上部署样式加载不出来

当我们线上部署时,需要将debug 模式调成 False,但是后台样式就会失效,原因是 django不支持 线上 静态文件, 增加下面这行即可解决. OK 原文地址:https://www.cnblogs.com/wujf-myblog/p/10939414.html

一次线上用于某某中心系统线上所需环境搭建部署weblogic12C过程

source /etc/profile groupadd bea mkdir /data useradd -d /data/weblogic -g bea weblogic echo '[email protected]#$%'|passwd --stdin weblogic JAVA_HOME=/data/weblogic/jdk-7u55-linux-x64 CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar PATH=$JA

vue-router+webpack线上部署时单页项目路由,刷新页面出现404问题

使用vue项目,线上部署的时候,访问首页以及通过路由打开二级页面没有问题,但是一刷新就出现404现象 因为刷新页面时访问的资源在服务端找不到,因为vue-router设置的路由不是真实存在的路径. 解决办法是:在nginx.conf配置修改如下: location / { root html; try_files $uri $uri/ @router; index index.html index.htm; } location @router { rewrite ^.*$ /index.htm

线上部署链路聚合bonding

线上做链路聚合bonding 服务器:联想 x3650 M4    (两台) 链路聚合可以将两块或者多块网卡结合成单一接口,从而增加网络吞吐量.带宽和冗余.如果一块网卡down或者拔出,其他网卡将保持网络通信,增加冗余.容错和负载均衡. 配置时首先做好规划,以服务器联想 x3650 M4为例说明.服务器有2个网络模块,每个模块各有2块网卡,一共4块网卡.为了提高冗余,分别选取物理网卡1和物理网卡3做bonding,对应系统显示网卡为eth0,eth2. 如果安装了图形界面,需要停止Network

redis线上部署规划

一,cpu,内存规划 CPU: CPU不求核数多,但求主频高,Cache大,因为redis主处理模式是单进程的 内存: 一定要设置最大内存maxmemory参数,否则物理内存用爆了就会大量使用Swap 最少预留出55%的内存,在系统极度繁忙时,如果父进程的所有Page在子进程写RDB过程中都被修改过了,就需要两倍内存. mem_fragmentation_ratio为内存碎片率 >内存碎片率稍大于1是合理的,这个值表示内存碎片率比较低,也说明redis没有发生内存交换. >但如果内存碎片率超过

如何利用docker 构建golang线上部署环境

公司最近开发了一个项目是用golang 写的,现在要部署到线上环境去,又不想在服务器上装单独的golang,决定用docker 封装下,直接打到镜像里面,然后就直接在hub.docker.com上面搜了下golang的镜像,直接就docker pull golang 最新的是1.9的版本 然后参考官方的文档弄了下Dockerfile大概是这样: FROM golang MAINTAINER jackluo #指定工作目录 WORKDIR /go/src/ActivitApi COPY . . C

线上部署GlusterFS情况调研结果

还是有不少群友在选择GlusterFS版本时缺乏信心,所以在"GlusterFS技术交流"QQ群(234901333)里调研了一下线上部署GlusterFS情况. 先说明一下GlusterFS的应用场景: 纯基于GlusterFS创业也是可以成功的,著名的有大道行云,结合他们的描述,GlusterFS主要应该于广电.高性能计算.医疗.军工等行业,也会用在桌面虚拟化和超融合,很多互联网公司内部也在使用GlusterFS,用于公司内部的文件共享,或是兼容之前基于文件的应用,通过NAS转换,

Node+mongodb线上部署到阿里云

部署使用的主要工具是pm2+nginx,使用码云的私有仓库,自动部署到服务器,私有仓库和服务器要事先设置好免密码登录.使用DNSPOD进行域名解析.事先准备好阿里云服务器,域名,一个网站.阿里云已经安装好mongodb数据库,node,pm2,git等.将本地网站所用的数据库备份一份,上传到服务器上. 1.先在dbspod添加一条A记录 2.码云上建立私有仓库 3.在项目中添加ecosystem.json 4.在服务器/www目录下创建文件夹 5.上传代码到私人仓库和服务器 一键部署到服务器 p