ITPub博客

首页 > 自动化运维 > 应用服务器 > Docker部署禅道备忘录

Docker部署禅道备忘录

原创 应用服务器 作者:百联达 时间:2018-09-06 09:38:51 0 删除 编辑

一:简介

禅道,项目管理软件,是国产的开源项目管理软件,专注研发项目管理,内置需求管理、任务管理、bug管理、缺陷管理、用例管理、计划发布等功能,实现了软件的完整生命周期管理。

禅道使用php语言开发,需要运行在安装有php的docker中,目前可以选择两种不同类型的docker,一种安装有apache、 php,一种安装有nginx、php,fpm。本次介绍的是第一种,即使用apache、 php的方式。

在“hub.docker.com”上已经有了php的docker镜像,本次我们选择“7.1.12-apache-jessie”这个版本。

二:Docker部署禅道

1.在主机上创建一个目录用来部署我们的安装包,目录地址为: /var/www/php-html 

2.使用如下命令下载并运行php7.1版本的镜像,镜像中已安装有php7.1和apache。    

docker run -d -p 8001:80 --name apache-php-app -v /var/www/php-html:/var/www/html php:7.1-apache

3.从禅道官网上下载相关版本的安装包并解压到 /var/www/php-html 目录。

源码下载地址为:http://sourceforge.net/projects/zentao/files/9.6.3/ZenTaoPMS.9.6.3.zip/download

解压安装包到  /var/www/php-html 目录

4.在浏览器中输入地址:ip:8001/zentaopms/www/,进入到安装页面。点击“下一步”,进入到“系统检查”页面。     

5.在php容器中安装pdo_mysql扩展以及更新php配置文件

1).进入到容器内部安装pdo_mysql扩展

docker exec -it 容器id /bin/bash

docker-php-ext-install pdo_mysql

2).更新容器内部的php配置文件

通过find / -name "php.ini"查找到服务器上的php.ini文件,设置其中的参数为(配置前的分号去掉)

date.timezone = Asia/Shanghai

session.save_path = "/tmp"

复制php配置文件都容器内部并重启容器

docker cp 主机目录/php.ini 容器id:/usr/local/etc/php/php.ini

docker restart 容器id

6.重新刷新“系统检查”页面,进入到“生成配置文件”页面,输入数据库配置,完成安装

三:Docker部署MySql(Server version: 8.0.12 MySQL Community Server - GPL)

  1. 创建MySql文件目录

    mkdir -p /mnt/mysql/data(数据文件目录)

    mkdir -p /mnt/mysql/conf(mysql配置文件目录)

  2. MySql配置文件

  3. [mysqld]
    pid-file        = /var/run/mysqld/mysqld.pid
    socket          = /var/run/mysqld/mysqld.sock
    datadir         = /var/lib/mysql
    secure-file-priv= NULL
    default_authentication_plugin=mysql_native_password
    wait_timeout= 2880000
    interactive_timeout = 2880000
    max_allowed_packet= 1024M
    

    default_authentication_plugin=mysql_native_password 设置MySql授权验证方式,否则客户端工具无法远程连接MySql


    wait_timeout= 2880000

    interactive_timeout = 2880000

    max_allowed_packet= 1024M

    增加MySql的连接时间,和最大运行执行的packet大小。因为在禅道的数据库配置阶段,会执行大量的SQL脚本生成禅道相关数据表,参数设置过小会报mysql server has gone away 错误

  4. Docker启动MySql容器

    a).docker pull mysql

    b).docker run -d -v /mnt/mysql/data:/var/lib/mysql -v /mnt/mysql/conf/my.cnf:/etc/mysql/my.cnf -e MYSQL_ROOT_PASSWORD=root  -p 3306:3306   --name mysql mysql

四:Centos 安装PHP

如果服务上没有安装PHP,安装禅道的过程中是找不到php.ini文件的,用SCL(Software Collections)软件库安装高版本的PHP:

  1. 安装SCL

    yum install centos-release-scl-rh

  2. 安装 PHP7.0

    yum install rh-php70

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28624388/viewspace-2213632/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
10年以上互联网经验,先后从事过制造业,证券业,物业行业和物流行业信息系统和互联网产品的研发,6年系统架构经验。最近关注Kubernetes微服务架构和Istio微服务治理框架。

注册时间:2013-02-05

  • 博文量
    285
  • 访问量
    912282