目的和目标
禅道是个不错的开源软件,可以发布任务,bug,管理流程,所以决定自己部署一套服务管理自己,记录业余生活轨迹。为了仿造公司级服务环境,需要将禅道部署到vmware上linux环境下,并且跟主机在同一局域网的机器也可以访问禅道。
部署文档
禅道:https://www.zentao.net/book/zentaopmshelp/90.html
版本说明
vmware: VMware® Workstation 14 Pro centOS: CentOS-6.6-x86_64-bin-DVD1.iso 禅道: ZenTaoPMS.11.4.1.zbox_old.64.tar.gz
IP和端口
说明:自动分配的选项不需要改成固定IP;手动配置的选项一定要改成固定IP,但软件可能帮你配置好,即使这样,你一定要自己再检查一遍
手提电脑: 192.168.1.102(主机,自动分配) 安卓手机: 192.168.1.101(跟主机连同一局域网,自动分配) 主机的vmnet8: 192.168.139.1(手动配置,DNS为8.8.8.8,网关可以不配置) 虚拟机vmnet8子网地址:192.168.139.0(手动配置) 虚拟机vmnet8网关地址:192.168.139.2(手动配置) centos地址:192.168.139.100(手动配置,网关192.168.139.2,DNS为8.8.8.8) 禅道apache端口:8088 禅道mysql端口:3308 虚拟机vmnet8端口转发:主机端口随意,虚拟机IP地址和端口要和实际一致
精华
安装vmware vmware的虚拟网络编辑器中修改NAT配置,并设置端口转发(目的是禅道服务对外由主机发布,本文章中的安卓手机请求的地址看起来像主机的服务)。安装centOS操作系统 如果连接外网,貌似可以不用装DVD2,如果缺少命令或者服务,请继续装DVD2。设置网络 su root ifconfig 找到名字eth0 vi /etc/sysconfig/network-scripts/ifcfg-eth0 修改或者加入: service network restart(可选,后续改完配置一起reboot)防火墙开放端口给主机 vi /etc/sysconfig/iptables service iptables restart(可选,后续改完配置一起reboot)关闭selinux vi /etc/selinux/config reboot按官网文档安装禅道(补充自启动操作) vi /etc/rc.d/rc.local
测试
上述步骤之后,可能就可以访问禅道,最好别用IE,IE需要允许访问的设置。 主机使用非IE浏览器访问如下地址: http://192.168.1.102:8088(主机的IP变化导致不可用) http://192.168.139.100:8088(可加入浏览器收藏夹长期使用) http://localhost:8088(可加入浏览器收藏夹长期使用) 虚拟机访问如下地址: http://192.168.1.102:8088(主机的IP变化导致不可用) http://192.168.139.100:8088(可加入浏览器收藏夹长期使用) http://localhost:8088(可加入浏览器收藏夹长期使用) 安卓手机 http://192.168.1.102:8088(主机域防火墙和专用防火墙同时关闭或匹配防火墙规则才可能访问)
测试点:切换不同的WIFI;重启虚拟机;重启主机
防火墙规则
主机需要在防火墙设置规则允许部分用户访问,但如果局域网IP动态分配或者切换网络,需要修改防火墙规则。
navicat连接mysql
IP写127.0.0.1,不能写虚拟机IP,端口上面配置过,这里是3308,用户名和密码是默认root/123456,用你创建的用户也可以 主机IP配虚拟机的IP,端口没改的话是22,用户名和密码是虚拟机操作系统的。
未完待续
恶心的失败场景频现:
重启电脑之后,虚拟机http://192.168.139.100:8088服务可以访问,主机http://192.168.1.102:8088服务在浏览器不可以访问,但curl可以访问,安卓手机自然也访问不了。 解决办法:打开fiddler工具立刻就好了!我本来想抓包看下curl和浏览器有啥区别,机缘巧合竟然试出来。可是WHY? 我的猜测是fiddler.exe做了什么,希望有大神可以指点下,我觉得禅道算装成功了,耗费2天时间,真的不顺利。