Django开发环境准备

发布时间:2019-10-10 09:18:29编辑:auto阅读(2160)

    环境安装

    前戏

    需要了解的基本知识:

    需要的软件&镜像

    • VirtualBox :号称是最强的免费虚拟机软件
    下载地址如下(安装适合自己操作系统的软件):
    https://www.virtualbox.org/wiki/Downloads
    • Vagrant :也就是我们要创建和管理虚拟机的工具
    下载地址如下(安装适合自己操作系统的软件):
    http://downloads.vagrantup.com/
    • 系统镜像:提供给vagrant去创建(我理解这个是专用的,因为文件下载之后的尾缀是.box而不是.iso
    http://www.vagrantbox.es/
    挑选一个自己想要的系统镜像,比方说我用centos7.2纯净版的,然后将如下地址站到迅雷或者直接浏览器下载即可
    https://github.com/CommanderK5/packer-centos-template/releases/download/0.7.2/vagrant-centos-7.2.box

    环境准备

    windows下安装这两个程序:
    vagrant
    virtualbox

    目录准备

    • 软件安装路径
    • 开发环境配置路径
    D:\>cd study
    D:\study>cd devops-8
    D:\study\devops-8>cd data
    D:\study\devops-8\data>vagrant box list
    centos7-dev (virtualbox, 0)
    centosbox (virtualbox, 0)
    D:\study\devops-8\data>vagrant init centos7-dev     #初始化环境路径,并生成Vagrantfile配置文件

    修改Vagrantfile配置文件

    #将端口映射改成8000
    config.vm.network "forwarded_port", guest: 80, host: 8000

    启动虚拟机

    D:\study\devops-8\data>vagrant up
    镜像存在位置:
    C:\Users\wanghui\.vagrant.d\boxes\centos7-dev\0

    登陆虚拟机

    user:vagrant
    pass:vagrant
    host:127.0.0.1
    port:2222

    同步目录

    ==> default: Mounting shared folders...
    default: /vagrant => D:/study/devops-8/data

    软件安装

    django支持版本:1.11

    时间同步

    cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime      ,时区设置;
    timedatectl status                                                ,查看时间同步状态;
    yum install ntp -y
    timedatectl set-ntp true                                      ,开启网络时间同步;

    配置yum

    yum -y install gcc gcc-c++ openssl openssl-devel vim net-tools wget zip unzip lrzsz 
    mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

    安装Python

    yum -y install openssl-devel readline-devel unzip #解决依赖
    wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz 
    tar xf Python3.6.6.tgz
    cd Pyrthon3.6.6
    # configure
    ./configure --enable-optimizations
    # vim Modules/Setup 放开如下的配置
    _ssl _ssl.c \
            -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
            -L$(SSL)/lib -lssl -lcrypto
    #安装
    make altinstall

    修改pip配置

    # tee /etc/pip.conf <<EOF
    [global]
    index-url = http://pypi.douban.com/simple
    trusted-host = pypi.douban.com
    [list]
    format=columns
    EOF

    安装virtualenv并初始化环境

    pip3.6 install virtualenv
    su - vagrant
    cd /home/vagrant
    virtualenv -p /usrlocal/bin/python3.6 venv3
    source venv3/bin/activite
    pip3 install "django>=1.11,<2.0"

    安装&配置数据库

    yum -y install mariadb mariadb-server mariadb-devel
    # vim /etc/my.cnf 配置
    [mysqld]
    port = 3306
    default-storage-engine = innodb
    innodb_file_per_table
    collation-server = utf8_general_ci
    init-connect = 'SET NAMES utf8'
    character-set-server = utf8
    [mysql]
    default-character-set=utf8
    
    -----服务启动-----
    systemctl start mariadb
    systemctl enable mariadb
    
    -----初始化配置-----
    mysql_secure_installation #密码设置成123456
    
    ------安装python-mysql插件------
    [vagrant@localhost ~]$ source /home/vagrant/venv3/bin/activate
    pip3 install mysqlclient
    
    ------创建数据库-------
    mysql -uroot -p123456 -e "create database devops CHARACTER SET utf8;"
    • Django数据库配置
    DATABASES = {
     'default': {
      'ENGINE': 'django.db.backends.mysql',
      'NAME': 'django',
      'USER': 'root',
      'PASSWORD': '123456',
      'HOST': '127.0.0.1',
      'PORT': 3306,
      'OPTIONS':{
       'init_command': 'SET default_storage_engine=INNODB;',
          },
        }
    }

关键字