Saleor 03: 入门 - 在 Linux 上安装


如果你偏向于使用容器服务或者是对配置 PostgreSQL, Redis and Elasticsearch 存在问题,可以尝试 Using Docker for Development 相关教程。

准备工作

在正式运行 Saleor 之前,需要在电脑上安装一些额外软件。

Python 3

Saleor 建议使用 Python 3.4 或者更高版本。大多数 Linux 系统都有一个内置已经安装好的版本,但是如果不是,那就要去了解下如何安装 Python 3.6.

Node.js

建议是 Version 8 或更高版本。

查看 installation instructions.

Note

Debian 和 Ubuntu 用户使用系统安装包进行安装 Node.js 的话依然还需要安装 nodejs-legacy

PostgreSQL

运行 Saleor 需要 PostgreSQL version 9.4 或更高版本。

PostgreSQL download page

你一定要记住在安装的时候所设定的管理员密码。

GTK+

有一些功能,比如“创建 PDF”,需要额外的系统库支持。

Debian / Ubuntu

Debian 9.0 Stretch 或以上, Ubuntu 16.04 Xenial 或以上:

$ sudo apt-get install build-essential python3-dev python3-pip python3-cffi libcairo2 libpango-1.0-0 libpangocairo-1.0-0 libgdk-pixbuf2.0-0 libffi-dev shared-mime-info

Fedora

$ sudo yum install redhat-rpm-config python-devel python-pip python-cffi libffi-devel cairo pango gdk-pixbuf2

Archlinux

$ sudo pacman -S python-pip cairo pango gdk-pixbuf2 libffi pkg-config

Gentoo

$ emerge pip cairo pango gdk-pixbuf cffi

安装

  1. 克隆这个仓库 (或是使用你自己的副本):

    $ git clone https://github.com/mirumee/saleor.git
    
  2. 进入目录:

    $ cd saleor/
    
  3. 安装依赖库:

    在安装任何 Python 包之前,我们强烈推荐先创建一个虚拟环境。

    creating a virtual environment

    $ pip install -r requirements.txt
    
  4. 设置一个环境变量 SECRET_KEY :

    我们有想过设一个默认值,但是我们最终决定不设默认值,因为怕有人直接用这个默认值上了生产环境,所以还是由你自己来设一个。

    $ export SECRET_KEY='<mysecretkey>'
    

    Warning

    秘钥(Secret key)应该是一个只有你们团队自己知道的独一无二的字符串,使用一个别人可能知道的 SECRET_KEY 会破坏 Django 的许多安全性保护,并可能导致特权升级和远程代码执行漏洞。

    参考:Django’s documentation

  5. 创建一个 PostgreSQL 用户:

    查看详情 PostgreSQL’s createuser command

    Note

    你需要为你的项目创建一个用户, 用户名和密码可以在 DATABASE_URL 这个环境变量中找到。如果没有设置过的话那默认就都是 saleor

    Warning

    当创建数据库时,Django 需要创建一些 PostgreSQL 扩展,如果数据库里面没有的话,这个操作需要管理员权限。

    对于本地开发,你可以给你的数据库使用管理员权限。但是如果是在外部正式环境的话,建议专门设立一个管理员用户去做数据库操作。

  6. 准备数据库:

    $ python manage.py migrate
    

    Warning

    这个命令需要有创建数据库和数据库扩展的权限,如果你收到了与 CREATE EXTENSION 相关的错误,请确认你在创建用户的时候是否分配了 SUPERUSER 权限。

  7. 安装前端依赖库:

    $ npm install
    

    Note

    如果这一步安装失败请回到上面去确认下使用的 Node.js 版本是不是足够新。

  8. 准备前端资源文件:

    $ npm run build-assets
    
  9. 编译电子邮件:

    $ npm run build-emails
    
  10. 启动开发服务器:

$ python manage.py runserver