在linux上安装taiga
taiga 安装配置
1.简介
本文档介绍了如何部署完整的Taiga服务(每个模块都是Taiga平台的一部分)。
Taiga平台由三个主要组件组成,每个组件在编译时和运行时都有自己的依赖关系:
- taiga-back(backend / api)
- taiga-front-dist(前端)
- taiga-events(websockets网关)(可选)
每个组件都可以在一台独特的机器上运行,或者所有组件都可以安装到不同的机器上。在本教程中,我们将在一台机器上安装所有内容,安装所有三个Taiga组件。这种类型的设置应该足以满足中小型生产环境。
2.概述
本教程假设您使用的是干净的,最近更新的Ubuntu 16.04映像。
由于前端的性质,Taiga通过域/ public-ip使用,因为前端应用程序在您的浏览器中运行。前端必须能够与后端/ API通信,因此前端和后端都必须可以通过域/ public-ip访问。
Taiga的安装必须由“常规”用户完成,而不是root用户。
在本教程中,我们假设以下细节:
- IP: 80.88.23.45主机名:( example.com指向80.88.23.45)
- 用户名: taiga
- 系统ram >=1GB(编译lxml所需)
- 工作目录 /home/taiga/(用户默认taiga)
2.1 系统架构描述
这是一个简短的系统架构描述,可帮助您了解Taiga的构建和工作方式。在进一步安装之前,请务必阅读此说明以获得高级概述。
Taiga由2个核心(mandatory)模块组成:
- taiga-back
- taiga-front
taiga-back用django,python3编写,并为前端提供API端点。
taiga-front主要用angularjs和coffeescript编写,取决于后端。
python后端由gunicorn(端口9001)公开,它是一个Python WSGI HTTP服务器。进程管理器是systemd,它一起运行gunicorn和taiga-back。从技术上讲,后端与数据库(postgresql)通信,通过前端,它允许用户使用Taiga的功能。前端和后端之间的通信使用API完成。
然后后端由nginx公开暴露,nginx充当这种情况的反向代理。前端位于dist文件夹中,并由nginx公开公开,nginx充当此案例的静态Web服务器。
3先决条件
Taiga由三个模块组成,每个模块都需要不同的包和第三方包。本节将收集成功的Taiga安装和配置所需的软件包。在本节中,我们将为所有模块安装所有依赖项,包括可选模块和服务。
基本套餐
该组件taiga-back使用postgresql(> = 9.4)作为数据库:
必须与几个第三方库一起安装Python(3)和virtualenvwrapper pip升级到最新版本
sudo apt-get update
sudo apt-get install -y build-essential binutils-doc autoconf flex bison libjpeg-dev libfreetype6-dev zlib1g-dev libzmq3-dev libgdbm-dev libncurses5-dev automake libtool curl git tmux gettext nginx rabbitmq-server redis-server postgresql-9.5 postgresql-contrib-9.5 postgresql-doc-9.5 postgresql-server-dev-9.5 python3 python3-pip python3-dev virtualenvwrapper libxml2-dev libxslt-dev libssl-dev libffi-dev
在继续安装之前,必须执行此步骤!
创建一个名为的用户taiga,并为其授予root权限
不要不更改为root用户。必须与taiga用户一起完成安装。
sudo adduser taiga
sudo adduser taiga sudo
sudo su taiga
cd ~
3.1配置依赖项
使用初始用户和数据库配置postgresql:
sudo -u postgres createuser taiga
sudo -u postgres createdb taiga -O taiga --encoding='utf-8' --locale=en_US.utf8 --template=template0
创建一个名为的用户taiga,以及RabbitMQ的虚拟主机(taiga-events)
sudo rabbitmqctl add_user taiga PASSWORD_FOR_EVENTS
sudo rabbitmqctl add_vhost taiga
sudo rabbitmqctl set_permissions -p taiga taiga ".*" ".*" ".*"
4.后端配置
本节有助于配置后端(api)Taiga服务及其依赖项。
下载代码
cd ~
git clone https://github.com/taigaio/taiga-back.git taiga-back
cd taiga-back
git checkout stable
创建名为taiga的新virtualenv
mkvirtualenv -p /usr/bin/python3 taiga
安装依赖项
pip install -r requirements.txt
使用初始基本数据填充数据库
python manage.py migrate --noinput
python manage.py loaddata initial_user
python manage.py loaddata initial_project_templates
python manage.py compilemessages
python manage.py collectstatic --noinput
这将创建管理员帐户。登录凭据为admin,密码为123123。
可选: 如果您希望将一些示例数据加载到Taiga中,请执行以下命令,该命令使用示例项目和随机数据填充数据库(对于演示非常有用):
python manage.py sample_data
将以下配置复制粘贴~/taiga-back/settings/local.py并使用您自己的详细信息进行更新:
from .common import *
MEDIA_URL = "http://example.com/media/"STATIC_URL = "http://example.com/static/"SITES["front"]["scheme"] = "http"SITES["front"]["domain"] = "example.com"
SECRET_KEY = "theveryultratopsecretkey"
DEBUG = FalsePUBLIC_REGISTER_ENABLED = True
DEFAULT_FROM_EMAIL = "no-reply@example.com"SERVER_EMAIL = DEFAULT_FROM_EMAIL
#CELERY_ENABLED = True
EVENTS_PUSH_BACKEND = "taiga.events.backends.rabbitmq.EventsPushBackend"EVENTS_PUSH_BACKEND_OPTIONS = {"url": "amqp://taiga:PASSWORD_FOR_EVENTS@localhost:5672/taiga"}
# Uncomment and populate with proper connection parameters# for enable email sending. EMAIL_HOST_USER should end by @domain.tld#EMAIL_BACKEND = "django.core.mail.backends.smtp.EmailBackend"#EMAIL_USE_TLS = False#EMAIL_HOST = "localhost"#EMAIL_HOST_USER = ""#EMAIL_HOST_PASSWORD = ""#EMAIL_PORT = 25
# Uncomment and populate with proper connection parameters# for enable github login/singin.#GITHUB_API_CLIENT_ID = "yourgithubclientid"#GITHUB_API_CLIENT_SECRET = "yourgithubclientsecret"
验证
(可选)要确保一切正常,请发出以下命令以在开发模式下运行后端以进行测试:
workon taiga
python manage.py runserver
然后,您必须能够在URL上看到表示端点列表的json:http:// localhost:8000 / api / v1 /。
在此阶段,后端已成功安装,但要在生产中运行python后端,必须首先配置应用程序服务器。有关详细信息,请参阅本文档后面的内容。
5.前端安装
从Github下载代码:
cd ~
git clone https://github.com/taigaio/taiga-front-dist.git taiga-front-dist
cd taiga-front-dist
git checkout stable
复制示例配置文件:
cp ~/taiga-front-dist/dist/conf.example.json ~/taiga-front-dist/dist/conf.json
按照以下模式编辑示例配置(替换为您自己的详细信息):
{
"api": "http://example.com/api/v1/",
"eventsUrl": "ws://example.com/events",
"debug": "true",
"publicRegisterEnabled": true,
"feedbackEnabled": true,
"privacyPolicyUrl": null,
"termsOfServiceUrl": null,
"GDPRUrl": null,
"maxUploadFileSize": null,
"contribPlugins": []}
小心使用浏览器中的复制粘贴以避免http://重复。
有taiga-front-dist,前-dist的下载和配置是不够的。下一步是在静态文件Web服务器下公开代码(在dist目录中)。在本教程中,我们使用nginx作为静态文件Web服务器和反向代理。稍后将解释nginx的配置。
在linux上安装taiga的更多相关文章
- 在Windows和Linux上安装paramiko模块以及easy_install的安装方法
一.paramiko模块有什么用? paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.由于使用的是python这样的能够跨平台运行的语言 ...
- 在Linux上安装Oracle RAC 12 c(12.1) 虚拟机,一步一步向导
Oracle RAC 12 c(12.1)在Linux上安装虚拟机,一步一步向导 今天我们将看到如何安装 12 c版本1 RAC(真正的应用程序集群)数据库2 Linux 64位的虚拟机 使用VMWa ...
- WINDOWS和Linux上安装php7 alpha 并安装 yaf
WINDOWS和Linux上安装php7 alpha 并安装 yaf PHP技术 widuu 2个月前 (06-15) 126浏览 0评论 windows 1.windows上安装 php7 ...
- 在Windows和Linux上安装paramiko模块
一.paramiko模块有什么用? paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.由于使用的是python这样的能够跨平台运行的语言 ...
- Linux上安装使用boost入门指导
Data Mining Linux上安装使用boost入门指导 获得boost boost分布 只需要头文件的库 使用boost建立一个简单的程序 准备使用boost二进制文件库 把你的程序链接到bo ...
- 如何在Linux上安装Storm
Storm是开源的分布式实时计算系统,能够让数据流处理变得简单.可靠,也因此在大数据领域有广泛的实际 应用.下面介绍一下如何在Linux系统上安装Storm.根据Storm官网介绍,安装Storm软件 ...
- linux上安装Drupal
linux上安装Drupal 前言:国内用drupal的并不太多,网上资料也很少.要注意的是drupal尽量别使用apt来安装,特别是ubuntu平台的drupal做出了一定的更改,会妨碍后期的学习和 ...
- 在Linux上安装Hadoop
先决条件: Hadoop是用JAVA写的,所以首先要安装Java.在Ubuntu上安装JDK见:http://blog.csdn.net/microfhu/article/details/766739 ...
- linux上安装配置samba服务器
linux上安装配置samba服务器 在linux上安装配置samba服务器 在这给大家介绍一个不错的家伙,samba服务.如果您正在犯愁,如何在Windows和Linux之间实现资源共享,就请看看这 ...
随机推荐
- 关于 L3 缓存行 cacheLIne 的研究!还是对程序有举足轻重的作用!
https://www.cnblogs.com/PurpleTide/archive/2010/11/25/1887506.html CLR via C# 读书笔记 2-3 Cache Lines a ...
- Centos下mysql8忘记root密码的解决办法
首先,打开配置文件/etc/my.cnf,在末尾添加一行: skip-grant-tables 然后重启mysql服务: service mysqld restart 然后可以直接登录到mysql,在 ...
- MySQL入门——在Windows下安装MySQL
MySQL入门——在Windows下安装MySQL 摘要:本文主要说明了如何下Windows环境下安装MySQL. 查看电脑上是否安装了MySQL 打开cmd窗口,输入 services.msc 命令 ...
- ubuntu玩坏之后
昨天,安装openssh-server的时候,与openssh-client冲突,故卸载openssh-client然后重装openssh-server解决问题. 今天,想装emacs,发现跟perl ...
- Android RadioButton控件
RadioButton 单选按钮 常用属性: text 文本 checked=“true” 默认选中 一组互斥的单选按钮要放在RadioGroup中.RadioGroup常用属性: orienta ...
- 什么是唯品会JIT业务
以销定采的模式,供应商将商品发给唯品会仓库在由唯品会发给客户:首先在唯品会创建档期绑定PO此时设置的商品库存为虚拟库存,之后供应商根据实际产生的有效订单将订单中的商品发给唯品会,最后再由唯品会发给用户 ...
- Excel数据导入到Sql server
问题:数据库内直接操作导致 错误 0xc020901c: 数据流任务 1: 源 - yndata1$.输出[Excel 源输出] 上的 源 - yndata1$.输出[Excel 源输出].列[ind ...
- HBuilder 云打包生成 .apk 文件所需的安卓证书如何获取以及文件打包前必须的设置
在 HBuilder 云打包功能中,生在 .apk 文件虽然平台提供了免费的 安卓证书,但如果有其它需求,比如想发布,那么就需要自己去申请各种类型的证书了,这里介绍几个工具,方便在线生成证书并配置到打 ...
- Python环境安装与基础语法(4)——内存管理、if分支
Python内存管理 python中有自动清理内存垃圾的功能,当变量的引用计数为0,则可以被有计划的垃圾回收GC 常量会在系统中被多次引用,所以常量的引用计数无法确定 程序控制 顺序:按照先后顺序逐条 ...
- Python环境安装与基础语法(3)——进制、运算符和优先级、原码、补码
进制 转十进制:基本运算方法(权算方式) 0b1111——>1*2**3 + 1*2**2 + 1*2**1 + 1*2**0 0x7F——>7*16**1 + F*16**0 转二进制: ...