热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

2018829安装Jitamin过程实录

2018-8-29安装Jitamin过程实录新建模板小书匠欢迎走进zozo的学习之旅。简介安装nginx+php+mysql安装composer安装Jitamin简介在考虑用项目管


2018-8-29安装Jitamin过程实录

欢迎走进zozo的学习之旅。

  • 简介
  • 安装 nginx + php + mysql
  • 安装composer
  • 安装Jitamin



简介

在考虑用项目管理软件来提高团队协作的效率,需求项目管理及日常管理,当然有项目文件管理,文档协作那就更加理想,部门其他人有在用Team Foundation Server(TFS),但是这个是和 Visual studio 结合在 Microsoft平台上用的,不是很感冒,所以找了一下开源的轻便型的项目管理软件,看了下知乎上的推荐:有哪些比较好用的开源项目管理工具?

项目名称:开源项目管理系统 Jitami 项目简介:Jitamin
、是一款免费、开源,使用PHP语言开发的项目管理系统。Jitamin灵感来自于Vitamin,并结合了Just In
Time(准时)和敏的拼音min,意指效率和敏捷是项目管理的维他命。项目地址:jitamin/jitamin - 码云 Gitee.com

作者:码云 Gitee
链接:https://www.zhihu.com/question/19684062/answer/293771325 来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

技术分享图片

http://jitamin.com/

官网有个演示版本,看板结合日历和甘特图,可以导入project的项目,所以打算动手在部门的centos7上搭一个,安装参考:
github/jitamin
CentOS7 安装Jitamin的详细过程

很不幸,php+mysql不太熟,最后网站没有运行起来,转投了kanboard,kanboard直接提供 docker 版本,运行起来就比较方便,但还需要加一些插件,等摸熟了再上那个教程.
下面就是入坑记录



安装 nginx + php + mysql

参考 如何在CentOS 7安装Linux,Nginx,MySQL和PHP(LEMP)


  • 安装Nginx

    sudo yum install epel-release
    sudo yum install nginx
    sudo service nginx start

    验证

    技术分享图片

    Open in browser http://server_domain_name_or_IP


  • 安装MySQL(MariaDB[1]

    sudo yum install mariadb-server mariadb
    sudo systemctl start mariadb
    sudo systemctl enable mariadb

    添加 mysql 默认端口至 firewall

    sudo firewall-cmd --zOne=public --add-port=3306/tcp --permanent
    sudo firewall-cmd --reload

    设置 root 密码

    mysqladmin -u root password "new_password";

    登录

    [root@host]# mysql -u root -p
    Enter password:*******

    建立jitamin数据库

    mysql> create database jitamin;


    MariaDB [(none)]> show databases;
    +--------------------+
    | Database |
    +--------------------+

    | information_schema |
    | jitamin |
    | mysql |
    | performance_
    schema |
    | test |
    +--------------------+

    5 rows in set (0.00 sec)



  • 安装PHP

    sudo yum install php php-mysql php-fpm
    sudo vim /etc/php-fpm.d/www.conf`

    修改

    cgi.fix_pathinfo=0

    配置文件www.conf

    sudo vim /etc/php-fpm.d/www.conf

    修改内容

    listen = /var/run/php-fpm/php-fpm.sock
    user = nginx
    group = nginx

    但是因为在后面 对jitamin 用composer install 依赖关系的时候出现了php版本太低的问题,这里补充下php升级的过程:

    php版本问题 错误信息

    php >=5.6.0 but your PHP version (5.4.16) 升级
    vim composer.json //指定 版本
    php -v //查看当前版本
    PHP 5.4.16 (cli) (built: Apr 12 2018 19:02:01)

    解决思路
    重新安装高版本php

    作者:一指弹风
    链接:https://www.jianshu.com/p/055aca089506
    來源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。


    yum list installed | grep php
    yum remove php.x86_64 php-cli.x86_64 php-common.x86_64 php-gd.x86_64 php-ldap.x86_64 php-mbstring.x86_64 php-mcrypt.x86_64 php-mysql.x86_64 php-pdo.x86_64
    yum list installed | grep php
    sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
    sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
    sudo yum install php56w.x86_64 php56w-cli.x86_64 php56w-common.x86_64 php56w-gd.x86_64 php56w-ldap.x86_64 php56w-mbstring.x86_64 php56w-mcrypt.x86_64 php56w-mysql.x86_64 php56w-pdo.x86_64
    yum list installed | grep php
    php56w.x86_64 5.6.37-1.w7 @webtatic
    php56w-cli.x86_64 5.6.37-1.w7 @webtatic
    php56w-common.x86_64 5.6.37-1.w7 @webtatic
    php56w-gd.x86_64 5.6.37-1.w7 @webtatic
    php56w-ldap.x86_64 5.6.37-1.w7 @webtatic
    php56w-mbstring.x86_64 5.6.37-1.w7 @webtatic
    php56w-mcrypt.x86_64 5.6.37-1.w7 @webtatic
    php56w-mysql.x86_64 5.6.37-1.w7 @webtatic
    php56w-pdo.x86_64 5.6.37-1.w7 @webtatic
    yum install php56w-fpm

    重新安装后出现 权限错误,错误信息如下:

    2002#0: *6 connect() to unix:/var/run/php-fpm/php-fpm.sock failed (13:
    Permission denied) while connecting to upstream, client: 10.1.6.2,
    server: 10.16.10.166, request: "GET /info.php HTTP/1.1", upstream:
    "fastcgi://unix:/var/run/php-fpm/php- fpm.sock:", host: "10.16.10.166"

    解决方案
    参考 https://blog.wu-boy.com/2014/06/ngnix-php5-fpm-sock-failed-permission-denied/

    sudo vim /etc/php-fpm.d/www.conf


    listen.owner = nginx
    listen.group = nginx
    listen.mode = 0666
    user = nginx
    group = nginx



  • 配置Nginx来处理PHP页面

    vim /etc/nginx/conf.d/default.conf

    修改

    server {
    listen 80;
    server_name 10.16.10.166;
    # note that these lines are originally from the "location /" block
    root /var/www/html;
    index index.php index.html index.htm;
    location / {
    try_files $uri $uri/ =404;
    }
    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
    root /var/www/html;
    }
    location ~ \.php$ {
    try_files $uri =404;
    fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    }
    }

    重新启动服务

    systemctl restart php-fpm.service
    systemctl enable nginx.service
    systemctl enable php-fpm.service

    验证

    技术分享图片

    打开 http://10.16.10.166/info.php





安装composer

下载composer.phar

curl -sS https://getcomposer.org/installer | php

可执行

mv composer.phar /usr/local/bin/composer




安装Jitamin

下载源文件https://github.com/jitamin/jitamin

yum install git
cd /var/www/html
sudo git clone https://github.com/jitamin/jitamin.git jitamin

配置 config file 创建 database 设置

cd jitamin
cp .env.example .env
sudo vim .env //修改数据库相关配置

修改为

DB_COnNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=jitamin
DB_USERNAME=root
DB_PASSWORD=xxxxx //root密码
vim config/config.php

修改为

‘mysql‘ => [
‘driver‘ => ‘mysql‘,
‘host‘ => env(‘DB_HOST‘, ‘localhost‘),
‘database‘ => env(‘DB_DATABASE‘, ‘jitamin‘),
‘username‘ => env(‘DB_USERNAME‘, ‘root‘),
‘password‘ => env(‘DB_PASSWORD‘, ‘xxxxx‘),//root 密码
‘port‘ => env(‘DB_PORT‘, ‘3306‘),
‘charset‘ => ‘utf8‘,
],

安装依赖包(出现了php版本问题如前描述)
composer install -o --no-dev //

又出现权限问题

[RuntimeException]
/var/www/html/jitamin/vendor does not exist and could not be created.

解决思路

chmod -R 777 /var/www

成功

> php -r "file_exists(‘.env‘) || copy(‘.env.example‘, ‘.env‘);"
Loading composer repositories with package information
Installing dependencies from lock file
Package operations: 27 installs, 0 updates, 0 removals
- Installing christian-riesen/base32 (1.3.1): Downloading (100%)
- Installing christian-riesen/otp (1.4.3): Downloading (100%)
- Installing eluceo/ical (0.10.1): Downloading (100%)
- Installing erusev/parsedown (1.6.0): Downloading (100%)
- Installing gregwar/captcha (v1.1.1): Downloading (100%)
- Installing jitamin/json-rpc (v1.2.2): Downloading (100%)
- Installing jitamin/picodb (v1.0.15): Downloading (100%)
- Installing jitamin/picofeed (v0.1.25): Downloading (100%)
- Installing jitamin/simple-logger (v1.0.2): Downloading (100%)
- Installing jitamin/simple-queue (v1.0.1): Downloading (100%)
- Installing jitamin/simple-validator (v1.0.2): Downloading (100%)
- Installing symfony/polyfill-mbstring (v1.9.0): Downloading (100%)
- Installing symfony/translation (v3.2.14): Downloading (100%)
- Installing nesbot/carbon (1.33.0): Downloading (100%)
- Installing paragonie/random_compat (v2.0.11): Downloading (100%)
- Installing pimple/pimple (v3.0.2): Downloading (100%)
- Installing symfony/yaml (v2.8.7): Downloading (100%)
- Installing psr/log (1.0.2): Downloading (100%)
- Installing symfony/debug (v3.4.14): Downloading (100%)
- Installing symfony/console (v3.4.14): Downloading (100%)
- Installing symfony/polyfill-ctype (v1.9.0): Downloading (100%)
- Installing symfony/filesystem (v3.4.14): Downloading (100%)
- Installing symfony/config (v3.4.14): Downloading (100%)
- Installing robmorgan/phinx (v0.6.6): Downloading (100%)
- Installing swiftmailer/swiftmailer (v5.4.5): Downloading (100%)
- Installing symfony/event-dispatcher (v3.4.14): Downloading (100%)
- Installing vlucas/phpdotenv (v2.5.1): Downloading (100%)
Generating optimized autoload files

做数据迁移

vendor/bin/phinx migrate
vendor/bin/phinx seed:run

成功后,登录数据库 jitamin 查看 数据表格

mysql -u root -p
MariaDB
[(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| jitamin |
| mysql |
| performance_schema |
| test |
+--------------------+
5 rows in set (0.00 sec)
MariaDB [(none)]> use jitamin
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
MariaDB
[jitamin]> show tables;
+--------------------------------+
| Tables_in_jitamin |
+--------------------------------+
| action_has_params |
| actions |
| column_has_move_restrictions |
| column_has_restrictions |
| columns |
| comments |
| custom_filters |
| group_has_users |
| groups |
| last_logins |
| links |
| migrations |
| password_reset |
| plugin_schema_versions |
| project_activities |
| project_daily_column_stats |
| project_daily_stats |
| project_has_categories |
| project_has_files |
| project_has_groups |
| project_has_metadata |
| project_has_notification_types |
| project_has_roles |
| project_has_stars |
| project_has_users |
| project_role_has_restrictions |
| projects |
| remember_me |
| schema_version |
| settings |
| subtask_time_tracking |
| subtasks |
| swimlanes |
| tags |
| task_has_external_links |
| task_has_files |
| task_has_links |
| task_has_metadata |
| task_has_tags |
| tasks |
| transitions |
| user_has_metadata |
| user_has_notification_types |
| user_has_notifications |
| user_has_unread_notifications |
| users |
+--------------------------------+
46 rows in set (0.00 sec)

设置文件夹权限

$ chmod -R 0777 bootstrap/cache
$ chmod -R 0777 storage
$ php artisan config:cache
Configuration cached successfully!
$ php artisan route:cache
Routes cached successfully!

此时登录 网页查看,失败显示如下:

技术分享图片

/var/www/html/jitamin/public/index.php

看到了 issue里面有这样的描述:
无支持,不活跃,投奔kanboard · Issue #286 · jitamin/jitamin

技术分享图片

kanboard 是更活跃的

技术分享图片

完全满足我的需求,所以就不在折腾了





  1. 现在我们已经开始运行Web服务器,现在是安装MariaDB的时候了,这是一个MySQL插件替换。 MariaDB是MySQL关系数据库管理系统的社区开发的分支。基本上,它将组织并提供对我们的网站可以存储信息的数据库的访问。 ??






推荐阅读
  • egg实现登录鉴权(七):权限管理
    权限管理包含三部分:访问页面的权限,操作功能的权限和获取数据权限。页面权限:登录用户所属角色的可访问页面的权限功能权限:登录用户所属角色的可访问页面的操作权限数据权限:登录用户所属 ... [详细]
  • Docker基础入门与环境配置指南
    本文介绍了Docker——一款用Go语言编写的开源应用程序容器引擎。通过Docker,用户能够将应用及其依赖打包进容器内,实现高效、轻量级的虚拟化。容器之间采用沙箱机制,确保彼此隔离且资源消耗低。 ... [详细]
  • 本文详细介绍了JavaScript中数组的转换方法、栈方法、队列方法、重排序方法及操作方法,包括toLocaleString()、toString()、valueOf()等基本转换方法,以及push()、pop()、shift()、unshift()等用于模拟栈和队列行为的方法。 ... [详细]
  • 探索OpenWrt中的LuCI框架
    本文深入探讨了OpenWrt系统中轻量级HTTP服务器uhttpd的工作原理及其配置,重点介绍了LuCI界面的实现机制。 ... [详细]
  • LoadRunner中的IP欺骗配置与实践
    为了确保服务器能够有效地区分不同的用户请求,避免多人使用同一IP地址造成的访问限制,可以通过配置IP欺骗来解决这一问题。本文将详细介绍IP欺骗的工作原理及其在LoadRunner中的具体配置步骤。 ... [详细]
  • 本文探讨了Java编程语言中常用的两个比较操作符==和equals方法的区别及其应用场景。通过具体示例分析,帮助开发者更好地理解和使用这两个概念,特别是在处理基本数据类型和引用数据类型的比较时。 ... [详细]
  • 本文概述了在GNU/Linux系统中,动态库在链接和运行阶段的搜索路径及其指定方法,包括通过编译时参数、环境变量及系统配置文件等方式来控制动态库的查找路径。 ... [详细]
  • 使用REM和媒体查询实现响应式布局
    本文介绍如何利用REM单位和媒体查询(Media Queries)来创建适应不同屏幕尺寸的网页布局。通过具体示例,展示在不同屏幕宽度下如何调整页面元素的样式。 ... [详细]
  • 本文由公众号【数智物语】(ID: decision_engine)发布,关注获取更多干货。文章探讨了从数据收集到清洗、建模及可视化的全过程,介绍了41款实用工具,旨在帮助数据科学家和分析师提升工作效率。 ... [详细]
  • 本文介绍了用户界面(User Interface, UI)的基本概念,以及在iOS应用程序中UIView及其子类的重要性和使用方式。文章详细探讨了UIView如何作为用户交互的核心组件,以及它与其他UI控件和业务逻辑的关系。 ... [详细]
  • 本文探讨了线性表中元素的删除方法,包括顺序表和链表的不同实现策略,以及这些策略在实际应用中的性能分析。 ... [详细]
  • 实现Win10与Linux服务器的SSH无密码登录
    本文介绍了如何在Windows 10环境下使用Git工具,通过配置SSH密钥对,实现与Linux服务器的无密码登录。主要步骤包括生成本地公钥、上传至服务器以及配置服务器端的信任关系。 ... [详细]
  • 本文由chszs撰写,详细介绍了Apache Mina框架的核心开发流程及自定义协议处理方法。文章涵盖从创建IoService实例到协议编解码的具体步骤,适合希望深入了解Mina框架应用的开发者。 ... [详细]
  • 本文提供了一个关于AC自动机(Aho-Corasick Algorithm)的详细解析与实现方法,特别针对P3796题目进行了深入探讨。文章不仅涵盖了AC自动机的基本概念,还重点讲解了如何通过构建失败指针(fail pointer)来提高字符串匹配效率。 ... [详细]
  • 本报告记录了嵌入式软件设计课程中的第二次实验,主要探讨了使用KEIL V5开发环境和ST固件库进行GPIO控制及按键响应编程的方法。通过实际操作,加深了对嵌入式系统硬件接口编程的理解。 ... [详细]
author-avatar
美娟婉燕6386
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有