由于近期公司众多项目拖延严重,继续一款在线的项目管理软件,让众多不同部门实现各自不同的项目进度管理,于是开始网上疯狂搜索各种项目管理软件,只是搜到的大多数都是在线的,虽然省去了部署的烦恼,不过由于数据非保存于本地,担心可能会有泄露的风险,于是都没有实际用于生产,还好最后在GitHub上找到了这款免费的开源项目管理软件,Jitamin。

j_0003.gif

由于网上的搭建教程过少.......能找到的也只有GitHub上的官方教学,整个搭建过程遇到了不少小坑,不过幸好最后完美部署成功~乘着还有点记忆,抓紧写份部署详情吧

j_0006.gif

本教程是基于CentOSmini版搭建的,包含了数据库、Nginx、PHP的部署安装,所以整个搭建用到了不少阿里的yum,所以推荐搭建的时候尽量放在有外网的地方吧,搭建完成后再迁移到内网。

该项目GitHub上的路径https://github.com/jitamin/jitamin

【基础系统搭建】

首先由于官方默认yum源属于国外域名,顾先下载按照阿里云的官方yum源

阿里云官方镜像源:http://mirrors.aliyun.com/

mv/etc/yum.repos.d/CentOS-*/tmp//备份本地源
cd/etc/yum.repos.d/
wgethttp://mirrors.aliyun.com/repo/Centos-7.repo//下载阿里CentOSrepo文件到yum目录
yumcleanall//清楚yum缓存
yummakecache//生成yum缓存

安装git、vim、curl等常用软件

yuminstall-ygitvimcurl//使用yum安装软件
mkdir/team//创建项目文件夹
cd/team
yuminstall�Cyautoconfautomakeimakelibxml2-develexpat-develcmakegccgcc-c++libaiolibaio-develbzrbisonlibtoolncurses5-develwget
//安装常用软件包

【安装sql】

参考:http://www.ttlsa.com/

cd/usr/local/src/
wget-chttp://dev.MysqL.com/get/Downloads/mysql-5.6/mysql-5.6.14-linux-glibc2.5-x86_64.tar.gz/from/http://cdn.MysqL.com/-Omysql-5.6.14-linux-glibc2.5-x86_64.tar.gz
//下载sql安装包
tarzxvfmysql-5.6.14-linux-glibc2.5-x86_64.tar.gz-C..///解压MysqL安装包
cd/usr/local/
ln-smysql-5.6.14-linux-glibc2.5-x86_64/MysqL//创建软连接
mkdir-p/data/MysqL_data_3306//创建MysqL用户组和用户,及数据库存放目录
mkdir-p/data/MysqL_log
mkdir-p/data/log-bin
groupaddMysqL
useraddMysqL-gMysqL-M-s/sbin/nologin
chown-RMysqL.MysqL/data/MysqL_data_3306/data/MysqL_log/data/log-bin
chown-RMysqL.MysqL/usr/local/mysql-5.6.14-linux-glibc2.5-x86_64

cp/etc/my.cnf/etc/my.cnf.bak
vim/etc/my.cnf//可将附件提供的sql配置文件复制替换
cp-af/usr/local/MysqL/support-files/MysqL.server/etc/init.d/MysqL_3306

vim/etc/init.d/MysqL_3306//修改以下两处位置
basedir=/usr/local/MysqL
datadir=/data/MysqL_data_3306

chmod755/etc/init.d/MysqL_3306
chkconfig--addMysqL_3306
chkconfig--level345MysqL_3306on

cd/usr/local/MysqL//初始化数据库
./scripts/MysqL_install_db--user=MysqL--defaults-file=/etc/my.cnf
serviceMysqL_3306start//启动数据库进程
serviceMysqL_3306status//查看数据库状态,显示SUCCESS!MysqLrunning(2256)即为正常

wKiom1lmxVuzkfoyAAAKc9miw2Y495.png



【安装Nginx】

安装Nginx常用包

yuminstallpcre*//安装依赖包
yuminstallopenssl*
groupaddNginx//创建Nginx组
useradd-gNginxNginx//创建Nginx用户
cd/team/
wget-c//下载Nginx安装包
tar-zxvfNginx-1.12.0.tar.gz//解压安装包
cdNginx-1.12.0
./configure//生成Makefile
make&&makeinstall//编译及安装
whereisNginx
cd/usr/local/Nginx/sbin/
./Nginx
psaux|grepNginx//查看Nginx进程是否启动
vim/etc/rc.local//添加自启动文件
/usr/local/Nginx/sbin/Nginx

关闭防火墙

systemctlstopfirewalld.service
systemctldisablefirewalld.service

关闭SELinux

vim/etc/selinux/config
将SELINUX=permissive修改为SELINUX=disabled
该命令需重启生效
重启后使用sestatus�Cv命令查看输出是否显示为
SELinuxstatus:disabled

wKioL1lmyPjx0SQxAAAHuZ-2nas125.png


此时若是在ip游览器输入该服务器ip地址即可看到Nginx的默认主页面

wKiom1lmycTAq4LYAABVmJJmUoA327.png-wh_50

【安装PHP-fpm】

wget-OPHP7.tar.gzhttp://cn2.PHP.net/get/PHP-7.1.1.tar.gz/from/this/mirror
mvPHP7.tar.gz/team/
cd/team/
tarzxvfPHP7.tar.gz
cdPHP-7.1.1/
yuminstalllibxml2libxml2-developensslopenssl-develbzip2bzip2-devellibcurllibcurl-devellibjpeglibjpeg-devellibpnglibpng-develfreetypefreetype-develgmpgmp-devellibmcryptlibmcrypt-develreadlinereadline-devellibxsltlibxslt-devel
//安装依赖包

安装到一半弹出告警:

mcrypt.h notfound. Please reinstall libmcrypt

经查看是由于版权的原因CentOS源没有自带mcrypt的包,有两种解决方法:

一、安装第三方yum源

wgethttp://www.atomicorp.com/installers/atomic
sh./atomic
yuminstallPHP-mcryptlibmcryptlibmcrypt-devel
输入y即可安装

二、使用源码安装

wget
tar-zxvflibmcrypt-2.5.8.tar.gz
cd/usr/local/src/libmcrypt-2.5.8
./configure--prefix=/usr/local
make&makeinstall



再使用./configure编译PHP源代码

./configure--prefix=/usr/local/PHP--with-config-file-path=/etc--enable-fpm--with-fpm-user=Nginx--with-fpm-group=Nginx--enable-inline-optimization--disable-debug--disable-rpath--enable-shared--enable-soap--with-libxml-dir--with-xmlrpc--with-openssl--with-mcrypt--with-mhash--with-pcre-regex--with-sqlite3--with-zlib--enable-bcmath--with-iconv--with-bz2--enable-calendar--with-curl--with-cdb--enable-dom--enable-exif--enable-fileinfo--enable-filter--with-pcre-dir--enable-ftp--with-gd--with-openssl-dir--with-jpeg-dir--with-png-dir--with-zlib-dir--with-freetype-dir--enable-gd-native-ttf--enable-gd-jis-conv--with-gettext--with-gmp--with-mhash--enable-json--enable-mbstring--enable-mbregex--enable-mbregex-backtrack--with-libmbfl--with-onig--enable-pdo--with-MysqLi=MysqLnd--with-pdo-MysqL=MysqLnd--with-zlib-dir--with-pdo-sqlite--with-readline--enable-session--enable-shmop--enable-simplexml--enable-sockets--enable-sysvmsg--enable-sysvsem--enable-sysvshm--enable-wddx--with-libxml-dir--with-xsl--enable-zip--enable-MysqLnd-compression-support--with-pear--enable-opcache

若无报错即可使用make编译安装

make&&makeinstall
vim/etc/profile

在文件最末尾添加一下内容

PATH=$PATH:/usr/local/PHP/bin
exportPATH
保存退出后输入以下命令将配置立即生效
source/etc/profile

复制PHP-fpm默认配置文件至安装目录,并赋予权限

cpPHP.ini-production/etc/PHP.ini
cp/usr/local/PHP/etc/PHP-fpm.d/www.conf.default/usr/local/PHP/etc/PHP-fpm.d/www.conf
cp/usr/local/PHP/etc/PHP-fpm.conf.default/usr/local/PHP/etc/PHP-fpm.conf
cpsapi/fpm/init.d.PHP-fpm/etc/init.d/PHP-fpm
chmod+x/etc/init.d/PHP-fpm
/etc/init.d/PHP-fpmstart//启动PHP-fpm服务

也可使用以下命令启动PHP-fpm服务

/usr/local/PHP/sbin/PHP-fpm

查询Nginx服务是否开启,返回下图显示即为正常

wKioL1lm0oXD3-HDAAAsJwNjgk0694.png

【搭建jitamin服务】

gitclonehttps://github.com/jitamin/jitamin.git//使用git命令克隆jitamin的版本库
cdjitamin/config/
cpconfig.default.PHPconfig.PHP
vimconfig.PHP//修改配置文件
将'db_driver'=>'sqlite',修改为'db_driver'=>'MysqL',

wKiom1lm2XCB3HrgAAAKTvmjlfw920.png

cd..
curl-sShttps://getcomposer.org/installer|PHP//下载安装composer
PHPcomposer.pharinstall-o--no-dev
/usr/local/MysqL/bin/MysqL-p-uroot-S/data/MysqL_data_3306/MysqL.sock//登录sql,由于未设置密码,在显示输入密码处直接回车空密码进入
CREATEDATABASEjitamin//创建jitamin表
ctrl+c//退出sql
vendor/bin/phinxmigrate//同步数据库

此时如下图告错显示“There was a problem connecting to the database:sqlSTATE[HY000] [2002] No such file or directory”显示无数据库文件

wKioL1lm2mXC4sMdAABFWbsy3yk215.png

这里纠结了很久查过数据库状态写入读取均是正常的。最后发现是jitamin的配置文件写的是localhost将他修改为ip地址后导入文件即正常。

下方贴出配置文件的所有配置。

wKiom1lm2t7A2u1RAABzdYvl_kw322.png

wKioL1lm2t6Tu8ZJAABRctauyDg745.png

其实需要修改的地方只有db_driver及MysqL的host部分,若是数据库有添加过密码,则MysqL的password部分也需做相应的修改。

vendor/bin/phinxmigrate//再次输入即可创建数据表

wKioL1lm3CXBy9l8AABJ6FDRybM662.png

.............

wKioL1lm3CXRzHdTAAAnZQw0LBw643.png

vendor/bin/phinxseed:run//安装初始数据

wKiom1lm3iKSJdKPAAA-K4aHbg8969.png

chmod-R0777bootstrap/cache//确保bootstrap/cache和storage目录可写。
chmod-R0777storage

【启动jitamin】

vim/usr/local/Nginx/conf/Nginx.conf//修改Nginx配置,开启PHP功能修改网站路径

wKiom1lm307SXrUhAAB-1h2NarU725.png

cp-f/usr/share/zoneinfo/Asia/Shanghai/etc/localtime//将系统时区改为亚洲上海
date//查看时间是否正确
服务器重启后需要输入以下命令开启Nginx和PHP服务,也可将以下任务改为开机自启动减少运维
/usr/local/PHP/sbin/PHP-fpm
/usr/local/Nginx/sbin/Nginx

精简CentOS 7.0安装Jitamin项目管理软件的更多相关文章

  1. 详解前端HTML5几种存储方式的总结

    本篇文章主要介绍了前端HTML5几种存储方式的总结 ,主要包括本地存储localstorage,本地存储sessionstorage,离线缓存(application cache),Web SQL,IndexedDB。有兴趣的可以了解一下。

  2. PhoneGap / iOS上的SQLite数据库 – 超过5mb可能

    我误解了什么吗?Phonegap中的sqlitedbs真的有5mb的限制吗?我正在使用Phonegap1.2和iOS5.解决方法您可以使用带有phonegap插件的原生sqliteDB,您将没有任何限制.在iOS5.1中,Websql被认为是可以随时删除的临时数据…

  3. ios – 领域:如何获取数据库的当前大小

    是否有RealmAPI方法使用RealmSwift作为数据存储来获取我的RealmSwift应用程序的当前数据库大小?

  4. ios – Realm – 无法使用现有主键值创建对象

    我有一个对象有许多狗的人.应用程序有单独的页面,它只显示狗和其他页面显示人的狗我的模型如下我有人存储在Realm中.人有详细页面,我们取,并显示他的狗.如果狗已经存在,我会更新该狗的最新信息并将其添加到人的狗列表中,否则创建新狗,保存并将其添加到人员列表中.这适用于coredata.在尝试用他的狗更新人时,领域会抛出异常无法使用现有主键值创建对象解决方法这里的问题是,即使你正在创建一个全新的Rea

  5. ios – UIWebView中的WebSQL / SQLite数据库的最大大小(phonegap)

    我知道一般来说,Web应用程序的本地存储空间有5MB的限制.本地网页浏览应用程式是否也有这个限制?

  6. iOS – 友好的NSDate格式

    我需要在我的应用程序中显示帖子的日期给用户,现在我用这种格式:“5月25日星期五”.如何格式化NSDate以阅读“2小时前”的内容?使其更加用户友好.解决方法NSDateFormatter不能做这样的事情;你将需要建立自己的规则.我想像:所以这是打印’x分钟前’或’x小时前’从日期起24小时,通常是一天.

  7. ios – Firebase离线存储高级 – 手动同步和进度信息

    >我可以提供一个捆绑数据库–安装App后我可以已经离线查询了Firebase数据?然后我有另一个关于Firebase的主要问题:>JSON存储是伟大的–但是这样我们不关心一个独特的结构,我们必须注意这一点插入总是正确的数据集?我从来没有试图显示实际的进展,但是当您从firebase中检索数据时,始终会在成功检索数据时调用onDataChange方法.https://firebase.google.com/docs/database/android/retrieve-data#read_data_onceC

  8. ios – 如何处理多用户数据库

    我的应用程序就像很多应用程序–它有一个用户输入用户名和密码的登录屏幕,以及登录按钮我的应用程序还使用CoreData来保存大多数用户的业务对象,当然也是用户特定的.我也有一个登出按钮来启用切换用户.这不会发生很多,但仍然是必要的).现在如果不同的用户登录,我需要获取他的具体数据.但是我该如何做呢?

  9. ios – Swift从Firebase数据库中获取特定价值

    我正在尝试从Firebase数据库中获取特定值.我看了一些像谷歌这样的文件,但我做不到.这是数据库的JSON文件:SWIFT代码:我想获得用户的电子邮件价值,而不是每个人.我怎样才能做到这一点?解决方法在您的代码中,快照将包含子值的字典.要访问它们,请将snapshot.value转换为Dictionary,然后访问各个子项是一个快照

  10. 从iOS应用程序发送帖子到PHP脚本不工作…简单的解决方案就像

    我之前已经做了好几次了但是由于某些原因我无法通过这个帖子…我尝试了设置为_POST且没有的变量的PHP脚本……当它们未设置为发布时它工作精细.这是我的iOS代码:这里是PHP的一大块,POST变量不在正确的位置?我想这对于更有经验的开发人员来说是一个相当简单的答案,感谢您的帮助!解决方法$_POST是一个数组,而不是一个函数.您需要使用方括号来访问数组索引:

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部