当前位置: 首页 > 工具软件 > Taiga > 使用案例 >

Taiga项目管理器安装手册

顾超
2023-12-01

Taiga是一种项目管理器,网络上关于taiga的安装部署资料特别少,本人在安装taiga过程中也碰了不少壁,为方便大家安装taiga,我自己写了份安装手册如下:
(原文是用txt文件写的,放在论坛上可能不太好看)

官方安装手册(英文):http://taigaio.github.io/taiga-doc/dist/setup-production.html

*原文中标注“选装”(optional)的,本文档都没有涉及。
系统环境 Ubuntu 14.04 
*注意:请不要在root用户下进行安装;前台和后端的安装相互独立
一、后端的安装
1.1安装依赖包

sudo apt-get install -y build-essential binutils-doc autoconf flex bison libjpeg-dev
sudo apt-get install -y libfreetype6-dev zlib1g-dev libzmq3-dev libgdbm-dev libncurses5-dev
sudo apt-get install -y automake libtool libffi-dev curl git tmux gettext

1.2安装postgresql(版本不低于9.3)数据库

sudo apt-get install -y postgresql-9.3 postgresql-contrib-9.3
sudo apt-get install -y postgresql-doc-9.3 postgresql-server-dev-9.3

创建数据库及用户

sudo -u postgres createuser [此处填写ubuntu系统用户名]
sudo -u postgres createdb [也是用户名] -O [也是用户名]

例:我的用户名是ubuntu(前面说了不要在root用户下安装) 因此是 sudo -u postgres createuser ubuntu,
例:sudo -u postgres createdb ubuntu -O ubuntu
*注意:上面的“O”是大写的字母O;
1.3安装python环境

sudo apt-get install -y python3 python3-pip python-dev python3-dev python-pip virtualenvwrapper
sudo apt-get install libxml2-dev libxslt-dev

**下面修改数据库配置文件在官方文档中没有

修改配置文件:
sudo vi ~/etc/postgresql/9.3/main/pg_hba.conf
找到
local all postgres peer
改为:
local all postgres trust

下面跟着官方文档
安装到这一步,在进行下一步安装前需要重启操作系统。
下载代码:

cd ~                 ##回目录
git clone <a href="https://github.com/taigaio/taiga-back.git" target="_blank">https://github.com/taigaio/taiga-back.git</a> taiga-back
cd taiga-back
git checkout stable

创建新的虚拟环境并取名taiga(最好取这个名,否则完全按照本文档容易报错):

mkvirtualenv -p /usr/bin/python3.4 taiga

安装依赖包:

pip install -r requirements.txt             #这一步要在目录~/taiga-back 下执行,否则报错

初始化数据库数据:

python manage.py migrate   
python manage.py loaddata initial_user
python manage.py loaddata initial_project_templates
python manage.py loaddata initial_role
python manage.py compilemessages 
python manage.py collectstatic

*此处有大量的安装,请不要敲错代码。如果直接复制粘贴代码,建议找上面提到的官方文档来复制代码。
在~/taiga-back/settings下新建文档local.py               
绝对路径:~/taiga-back/settings/local.py
新建文档中加入:

from .common import *
MEDIA_URL = "<a href="http://localhost/media/" target="_blank">http://localhost/media/</a>"                    ##作者注:请注意官方文档中的example.com(这是官方文档中配置用到的主机名)
STATIC_URL = "<a href="http://localhost/static/" target="_blank">http://localhost/static/</a>"                  ##此处我用localhost代替了,经测试localhost能满足本机或服务器提供服务的情况,用localhost即可
ADMIN_MEDIA_PREFIX = "<a href="http://localhost/static/admin/" target="_blank">http://localhost/static/admin/</a>"   
SITES["front"]["scheme"] = "http"
SITES["front"]["domain"] = "localhost"
SECRET_KEY = "theveryultratopsecretkey"
DEBUG = False
TEMPLATE_DEBUG = False
PUBLIC_REGISTER_ENABLED = True
DEFAULT_FROM_EMAIL = "<a href="mailto:no-reply@example.com" target="_blank">no-reply@example.com</a>"              ##作者注:电邮部分在本文档中没有配置(官方文档中属于选装)
SERVER_EMAIL = DEFAULT_FROM_EMAIL
# 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

在目录~/taiga-back下
执行:

python manage.py runserver 192.168.33.139:8000

*解释下192.168.33.139,是我所用服务器的内网IP,在搭建的时候请改成你们自己机器的IP
*如果只是在本机使用直接用python manage.py runserver 或者是python manage.py runserver 127.0.0.1:8000即可

执行后打开http://192.168.33.139:8000/api/v1/(同样192.168.33.139换成自己的IP)成功证明安装完成。
打开[url=http://[IP]:8000/admin/]http://[IP]:8000/admin/[/url]后 用户名:Admin 密码:123123 可登陆后台。
二、前端安装
下载代码:

cd ~
git clone <a href="https://github.com/taigaio/taiga-front-dist.git" target="_blank">https://github.com/taigaio/taiga-front-dist.git</a> taiga-front-dist
cd taiga-front-dist
git checkout stable

然后复制文件conf.example.json到conf.json

cp ~/taiga-front-dist/dist/conf.example.json ~/taiga-front-dist/dist/conf.json

打开conf.json更改配置:

sudo vi ~/taiga-front-dist/dist/conf.json

修改为如下:

{
     "api": "<a href="http://example.com/api/v1/" target="_blank">http://example.com/api/v1/</a>",                      ##example.com改为你想提供服务的ip,要和上面的一样
     "eventsUrl": "ws://example.com/events",     ##同样改掉example.com
     "debug": "true",
     "publicRegisterEnabled": true,
     "feedbackEnabled": true,
     "privacyPolicyUrl": null,
     "termsOfServiceUrl": null,
     "maxUploadFileSize": null,
     "contribPlugins": []
}

至此,前端配置完成。
三、最后一步
Circus安装:
sudo pip2 install circus
如果文件~/conf/不存在就创建它:(cd ~/conf/报错才执行这一步)
mkdir -p ~/conf/
初始配置文件~/conf/circus.ini
sudo vi  ~/conf/circus.ini 
如下:

[circus]
check_delay = 5
endpoint = tcp://127.0.0.1:5555
pubsub_endpoint = tcp://127.0.0.1:5556
statsd = true
[watcher:taiga]
working_dir = /home/taiga/taiga-back                           ##/home/taiga taiga是文档中安装的用户名,要改为自己的
#作者注:我的是working_dir = /home/ubuntu/taiga-back 下面的注释也是如此  
cmd = gunicorn
args = -w 3 -t 60 --pythonpath=. -b 127.0.0.1:8001 taiga.wsgi
uid = taiga
numprocesses = 1
autostart = true
send_hup = true
stdout_stream.class = FileStream
stdout_stream.filename = /home/taiga/logs/gunicorn.stdout.log
##改掉,我的是stdout_stream.filename = /home/ubuntu/logs/gunicorn.stdout.log
stdout_stream.max_bytes = 10485760
stdout_stream.backup_count = 4
stderr_stream.class = FileStream
stderr_stream.filename = /home/taiga/logs/gunicorn.stderr.log
##改掉,我的是stderr_stream.filename = /home/ubuntu/logs/gunicorn.stderr.log
stderr_stream.max_bytes = 10485760
stderr_stream.backup_count = 4
[env:taiga]
PATH = /home/taiga/.virtualenvs/taiga/bin:$PATH
##改掉,我的是PATH = /home/ubuntu/.virtualenvs/taiga/bin:$PATH
TERM=rxvt-256color
SHELL=/bin/bash
USER=taiga
LANG=en_US.UTF-8
HOME=/home/taiga
PYTHONPATH=/home/taiga/.virtualenvs/taiga/lib/python3.4/site-packages
##改掉,我的是PYTHONPATH=/home/ubuntu/.virtualenvs/taiga/lib/python3.4/site-packages

修改初始化文件:
sudo vi /etc/init/circus.conf
写为如下内容:

start on filesystem and net-device-up IFACE=lo
stop on runlevel [016]
respawn
exec /usr/local/bin/circusd /home/taiga/conf/circus.ini ##/home/taiga又出现了,请改掉

启动circus服务:
sudo service circus start

安装Nginx:
sudo apt-get install -y nginx
配置文件:/etc/nginx/sites-available/taiga
sudo vi /etc/nginx/sites-available/taiga
写入如下内容:
**注意文件中所有的/home/taiga改为/home/[你的用户名]
**127.0.0.1这一IPA改成你上面用到的IP

server {
      listen 80 default_server;
      server_name _;
      large_client_header_buffers 4 32k;
      client_max_body_size 50M;
      charset utf-8;
      access_log /home/taiga/logs/nginx.access.log;
      error_log /home/taiga/logs/nginx.error.log;

      # Frontend
      location / {
          root /home/taiga/taiga-front-dist/dist/;
          try_files $uri $uri/ /index.html;
    }
      # Backend
      location /api {
          proxy_set_header Host $http_host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Scheme $scheme;
          proxy_set_header X-Forwarded-Proto $scheme;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_pass <a href="http://127.0.0.1:8001/api" target="_blank">http://127.0.0.1:8001/api</a>;
          proxy_redirect off;
     }
      # Django admin access (/admin/)
      location /admin {
          proxy_set_header Host $http_host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Scheme $scheme;
          proxy_set_header X-Forwarded-Proto $scheme;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_pass <a href="http://127.0.0.1:8001$request_uri" target="_blank">http://127.0.0.1:8001$request_uri</a>;
          proxy_redirect off;
     }
      # Static files
      location /static {
          alias /home/taiga/taiga-back/static;
     }
      # Media files
      location /media {
          alias /home/taiga/taiga-back/media;
     }

移除默认配置文件:
sudo rm /etc/nginx/sites-enabled/default
再执行:
sudo ln -s /etc/nginx/sites-available/taiga /etc/nginx/sites-enabled/taiga
使虚拟主机能够工作
可用 sudo nginx -t 检查出错情况
再执行
sudo service nginx restart
进行服务重启
提供服务的代码步骤是:

sudo service nginx restart
workon taiga
cd ~/taiga-back
python manage.py runserver 192.168.33.139:8000

然后在http://192.168.33.139/上登录(当然这是我的IP,改成你主机的),成功后的界面与taiga官网界面一样。
官网地址:https://taiga.io/

**安装中出错,大多数是在配置文件中,请检查配置文件
**安装软件包出错的可能性小

 类似资料: