linux一键安装包内置了XXD、apache, php, mysql这些应用程序,不需要再单独安装部署。
linux一键安装包分为32位和64位两个包,请大家根据操作系统的情况下载相应的包。
一、准备阶段
1、查看操作系统linux版本 #cat /proc/version
查看结果是:操作系统版本 Red Hat 4.8.5,64位(x86_64代表64位)
2、查看服务器已安装了什么?(可忽略)
本服务器已安装Mysql(没有安装Mysql更好哈,这里只是检查环境的一个步骤)。本服务器还安装了其他多个软件服务,如gitlab、git等,所以多个软件共存都是可以的、
已安装了mysql也没关系。禅道可以照样安装(因禅道也使用了Mysql),禅道使用自己携带的数据库即可。
3、下载禅道一键安装包:
在禅道官网选择匹配操作系统的禅道安装版本,如 本次操作系统是 64位的redhat linux,所以下载禅道一键安装包也是64位的,如下图
禅道官网下载地址:https://www.zentao.net/download/80165.html
下载的软件是禅道11.6.1 版(2019-08-26发布的):
二、在linux上部署安装禅道
1、将安装包直接解压到/opt目录下
特别说明: 不要 解压到别的目录再拷贝到/opt/,因为这样会导致文件的所有者和读写权限改变, 也不要解压后把整个目录777权限 。
可以使用命令: sudo tar -zxvf ZenTaoPMS.7.3.stable.zbox_32.tar.gz -C /opt
2. 修改禅道自带apache、mysql端口
为了不占用Server上默认的80、3306端口,我们修改禅道自带的apache、mysql端口。你可以根据自己的喜好来修改端口。其中 -ap参数 可以修改Apache的端口,-mp参数 可以修改Mysql的端口。
例如(apache端口改为9000,mysql端口改为9001):
/opt/zbox/zbox stop
/opt/zbox/zbox -ap 9000 -mp 9001
/opt/zbox/zbox start
可以使用/opt/zbox/zbox -h命令来获取关于zbox命令的帮助。
3、启动禅道服务 Apache和Mysql常用命令
执行/opt/zbox/zbox start 命令开启Apache和Mysql。
执行/opt/zbox/zbox stop 命令停止Apache和Mysql。
执行/opt/zbox/zbox restart 命令重启Apache和Mysql。
执行/opt/zbox/zbox status 命令查看Apache和Mysql状态。
注:如果需要开机自动启动,可以把 /opt/zbox/zbox restart 加到操作系统的自启目录。
4. 设置禅道服务自动启动,以保证每次服务器重启后禅道能够正常运行
1)编辑rc.local文件,在文件末尾添加禅道重启命令,保存后退出
# vim /etc/rc.local
……
/opt/zbox/zbox start
:wq
注:由于默认情况下rc.local文件无执行权限,故必须使用chmod +x /etc/rc.local修改为可执行权限。
5、访问和登录禅道
启动 Apache和Mysql服务后,
浏览器直接访问 http://禅道服务器ip:apache端口 即可访问和登录禅道。
禅道默认管理员帐号是 admin,密码 123456。
登录后,即可使用禅道项目管理功能。
6、如果登录不了,排错如下
1)Start mysql fail.
查看日志,提示3306被占用了。请查看. 修改禅道自带apache、mysql端口 内容
2)是否防火墙问题?
查看防火墙中是否有9000和9001端口
# vim /etc/sysconfig/iptables
如果没有9000和9001,请配置iptables防火墙规则,允许端口访问
# iptables -A INPUT -p tcp --dport 9000 -j ACCEPT
# iptables -A INPUT -p tcp --dport 9001 -j ACCEPT
重启防火墙,使上述规则生效
# service iptables save
# service iptables restart
【执行save命令时报错】:
# service iptables save
The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.
# service iptables restart
Redirecting to /bin/systemctl restart iptables.service
Failed to restart iptables.service: Unit not found.
【解决方案】:用如下命令安装后,即可restart iptables service:
#yum install iptables-services
3) 还是不行?报如下错,启动成功,但是状态不成功?
Apache success 启动成功
Apache is not running 状态又是未运行
查看日志:
[Wed Aug 28 11:07:30.292631 2019] [core:notice] [pid 9387:tid 140262454482688] AH00094: Command line: '/opt/zbox/run/apache/httpd'
[Wed Aug 28 11:07:30.292767 2019] [mpm_event:alert] [pid 9388:tid 140262026643200] (11)Resource temporarily unavailable: AH03104: apr_thread_create: unable to create worker thread
[Wed Aug 28 11:07:30.292816 2019] [mpm_event:alert] [pid 9389:tid 140262454482688] (11)Resource temporarily unavailable: AH00480: apr_thread_create: unable to create worker thread
[Wed Aug 28 11:07:30.293429 2019] [mpm_event:alert] [pid 9391:tid 140262026643200] (11)Resource temporarily unavailable: AH03104: apr_thread_create: unable to create worker thread
[Wed Aug 28 11:07:31.293946 2019] [core:notice] [pid 9387:tid 140262454482688] AH00052: child pid 9388 exit signal Segmentation fault (11)
[Wed Aug 28 11:07:31.294057 2019] [core:notice] [pid 9387:tid 140262454482688] AH00052: child pid 9391 exit signal Segmentation fault (11)
[Wed Aug 28 11:07:32.295079 2019] [mpm_event:alert] [pid 9387:tid 140262454482688] AH02324: A resource shortage or other unrecoverable failure was encountered before any child process initialized successfully... httpd is exiting!
发现 Resource temporarily unavailable 报错, 意思是进程数被限制了,执行命令ulimit -a ,发现最大是20
编辑 vim /etc/security/limits.d/20-nproc.conf
编辑 vim /etc/security/limits.conf
nproc:表示max number of processes
nofile:表示max number of open file descriptorshard/
soft:soft是一个警告值,而hard则是一个真正意义的阀值,超过就会报错。
ssh重新连接,执行ulimit -a 发现 最大用户进程数由20已经修改为200了
再次/opt/zbox/zbox stop
/opt/zbox/zbox start
/opt/zbox/zbox status 启动成功了
7、使用ps命令查看禅道服务是否自动启动
ps aux|grep zbox 说明启动成功
三、如何访问数据库
1、网页登录数据库
禅道数据库管理用的是adminer,但是为了安全,访问adminer的时候需要身份验证,需要(先 cd /opt/zbox/auth/ 然后执行 ./adduser.sh)。
如何操作:网页访问 http://禅道服务的ip:apache端口(9000),点击“数据库管理”按钮有2层验证:
1)弹窗验证是输入运行 addusers.sh添加的用户名和密码。
我加的用户名是root,密码是123456。那么授权页面里用户名和密码就填写root和123456。
注意: 这里添加的用户名和密码是自定义的,你可以根据你的使用习惯来添加。
你添加了什么用户名和密码就填写什么。
2)网页直接显示登录界面:
系 统:默认选择MySQL。
服务器: 127.0.0.1:mysql端口 (mysql端口启用的是3307,那么就填写 127.0.0.1:3307。 注意:ip只能写127.0.0.1)
用户名: root。(禅道默认的数据库用户名是 root)
密 码:123456。( 禅道默认的数据库密码是123456)
数据库:zentao。
导入数据:
附:扩展知识点
1.Linux查看当前操作系统版本信息cat /proc/version
[root@server opt]# cat /proc/version
Linux version 3.10.0-957.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Thu Nov 8 23:39:32 UTC 2018
2.Linux查看版本当前操作系统内核信息uname -a
[root@server opt]# uname -a
Linux server 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
3.linux查看版本当前操作系统发行信息 cat /etc/centos-release
[root@server opt]# cat /etc/centos-release
CentOS Linux release 7.6.1810 (Core)
4、sudo 命令是 linux系统管理指令,允许root让普通用户执行一些货全部的root命令的工具。需要安装:检查是否安装:rpm -q sudo --以后可深究,此处不写了。
5、du -sh [目录名] 返回当前目录的大小 -s, --summarize -h, --human-readable
6、du -sm[目录名]返回该文件夹下总M数? -m like --block-size=1M
7、du -h[目录名]返回该目录下所有文件夹及文件大小
7、df -hl 看磁盘空间