taiga 安裝設定
1.簡介
本文檔介紹如何部署完整的Taiga服務(每個模組都是Taiga平台的一部分)。
Taiga平台由三個主要元件組成,每個元件在編譯時和執行時都有自己的依賴關係:
- taiga-back(backend / api )
- taiga-front-dist(前端)
- taiga-events(websockets網關)(可選)
- 本教學假設您使用的是乾淨的,最近更新的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
登入後複製
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 ~
登入後複製
sudo -u postgres createuser taiga sudo -u postgres createdb taiga -O taiga --encoding='utf-8' --locale=en_US.utf8 --template=template0
登入後複製
sudo rabbitmqctl add_user taiga PASSWORD_FOR_EVENTS sudo rabbitmqctl add_vhost taiga sudo rabbitmqctl set_permissions -p taiga taiga ".*" ".*" ".*"
登入後複製
cd ~ git clone https://github.com/taigaio/taiga-back.git taiga-back cd taiga-back git checkout stable
登入後複製
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
登入後複製
python manage.py sample_data
登入後複製
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
登入後複製
在此阶段,后端已成功安装,但要在生产中运行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视频教程》