由于近期公司众多项目拖延严重,继续一款在线的项目管理软件,让众多不同部门实现各自不同的项目进度管理,于是开始网上疯狂搜索各种项目管理软件,只是搜到的大多数都是在线的,虽然省去了部署的烦恼,不过由于数据非保存于本地,担心可能会有泄露的风险,于是都没有实际用于生产,还好最后在GitHub上找到了这款免费的开源项目管理软件,Jitamin。
由于网上的搭建教程过少.......能找到的也只有GitHub上的官方教学,整个搭建过程遇到了不少小坑,不过幸好最后完美部署成功~乘着还有点记忆,抓紧写份部署详情吧
本教程是基于CentOSmini版搭建的,包含了数据库、Nginx、PHP的部署安装,所以整个搭建用到了不少阿里的yum,所以推荐搭建的时候尽量放在有外网的地方吧,搭建完成后再迁移到内网。
该项目GitHub上的路径https://github.com/jitamin/jitamin
【基础系统搭建】
首先由于官方默认yum源属于国外域名,顾先下载按照阿里云的官方yum源
阿里云官方镜像源:http://mirrors.aliyun.com/
安装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)即为正常
【安装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
此时若是在ip游览器输入该服务器ip地址即可看到Nginx的默认主页面
【安装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源
输入y即可安装
- wgethttp://www.atomicorp.com/installers/atomic
- sh./atomic
- yuminstallPHP-mcryptlibmcryptlibmcrypt-devel
二、使用源码安装
- wget
- tar-zxvflibmcrypt-2.5.8.tar.gz
- cd/usr/local/src/libmcrypt-2.5.8
- ./configure--prefix=/usr/local
- make&makeinstall
- ./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服务
【搭建jitamin服务】
此时如下图告错显示“There was a problem connecting to the database:sqlSTATE[HY000] [2002] No such file or directory”显示无数据库文件
这里纠结了很久查过数据库状态写入读取均是正常的。最后发现是jitamin的配置文件写的是localhost将他修改为ip地址后导入文件即正常。
下方贴出配置文件的所有配置。
其实需要修改的地方只有db_driver及MysqL的host部分,若是数据库有添加过密码,则MysqL的password部分也需做相应的修改。
- vendor/bin/phinxmigrate//再次输入即可创建数据表
.............
- vendor/bin/phinxseed:run//安装初始数据
- chmod-R0777bootstrap/cache//确保bootstrap/cache和storage目录可写。
- chmod-R0777storage
【启动jitamin】
服务器重启后需要输入以下命令开启Nginx和PHP服务,也可将以下任务改为开机自启动减少运维
- cp-f/usr/share/zoneinfo/Asia/Shanghai/etc/localtime//将系统时区改为亚洲上海
- date//查看时间是否正确