一、禅道部署

1、下载地址

数据库用户名:root,默认密码:123456。运行时,可以设置MYSQL_ROOT_PASSWORD变量来更改密码。

可挂载目录

/app/zentaopms:该目录为禅道目录,里面包含禅道代码及附件上传目录。

/var/lib/mysql:该目录为数据库的数据目录。

2、安装使用

(1)、准备环境:

注意:需要关闭下selinux

新建禅道目录

# mkdir /home/chandao

创建映射目录

# mkdir /home/chandao/data

# mkdir /home/chandao/www

解压文件

# cd /home/chandao/

# mv /root/docker_zentao.zip .

# unzip docker_zentao.zip

[root@localhost ~]# cd /home/chandao/[root@localhost chandao]#

[root@localhost chandao]# ls

data docker_zentao www

[root@localhost chandao]# cd docker_zentao/[root@localhost docker_zentao]#

[root@localhost docker_zentao]# ls

Dockerfile README.md config docker-entrypoint.sh

[root@localhost docker_zentao]#

(2)、构建镜像

执行命令 docker build -t [镜像名称] [Dockerfile所在目录]

# cd /home/chandao/docker_zentao

# docker build -t chandao .

查看构建的镜像

# docker images

[root@localhost docker_zentao]# docker images

REPOSITORY TAG IMAGE ID CREATED SIZE

chandao latest 98c88f2a109920hours ago 584MB

djltomcat latest d260185f87dc5weeks ago 508MB

ubuntu16.04 7e87e2b3bf7a 6weeks ago 117MB

mysql latest 102816b1ee7d2months ago 486MB

registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g latest 3fa112fd3642 3 years ago 6.85GB

[root@localhost docker_zentao]#

(3)、运行镜像

# docker run --name chandao -p 7075:80 -v /home/chandao/www/:/app/zentaopms -v /home/chandao/data/:/var/lib/mysql -e MUSQL_ROOT_PASSWORD=123456 -d chandao:latest

参数说明:

--name(容器名字)

-v(挂着目录)

-e(设置环境变量)

-d(运行容器后不自动进入容器)

查看正在运行的容器

# docker ps

[root@localhost ~]# docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

0b3bcb6316c4 chandao:latest"/app/docker-entrypo…" 20 hours ago Up 20 hours 0.0.0.0:7075->80/tcp chandao

(4)、安装禅道

浏览器访问:

http://服务器IP地址:端口号

二、迁移

1、迁移MySQL数据库

(1)、首先备份原库

进入MySQL数据库

mysql -uroot -proot123

查看MySQL库

show databases;

只需要对以下两个库进行备份

退出MySQL数据库

quit

执行备份命令

mysqldump -uroot -proot123 zentaopro > D:\mysqlbackup\zentaopro.sql

mysqldump -uroot -proot123 zentao > D:\mysqlbackup\zentao.sql

到D:\mysqlbackup\路径下找备份文件,拷贝到要还原的系统中

(2)、数据还原

进入容器

# docker exec -it chandao bash

进入MySQL数据库

mysql -uroot -p123456

查看MySQL库

show databases;

如没有还原数据库,可先创建

create database 数据库名;

进入库

use 数据库名;

还原数据文件

source /var/lib/mysql/zentaopro.sql

source /var/lib/mysql/zentao.sql

2、由于公司修改了某些PHP文件,所以还需要进行文件替换

注意:根据需求来

原路径

E:\xampp\zentao\module\bug

E:\xampp\zentao\module\bug\lang

docker容器里面的目标路径

root@0b3bcb6316c4:/app/zentaopms/module/bug# pwd

/app/zentaopms/module/bug

root@0b3bcb6316c4:/app/zentaopms/module/bug#

root@0b3bcb6316c4:/app/zentaopms/module/bug# ll

total 212

drwxrwxr-x. 7 www-data www-data 116 Mar 12 01:31 ./

drwxrwxrwx. 55 www-data www-data 4096 Feb 28 08:56 ../

-rw-r--r--. 1 root root 20368 Mar 12 01:16 config.php

-rw-rw-r--. 1 www-data www-data 72027 Feb 28 08:55 control.php

drwxrwxr-x. 2 www-data www-data 273 Feb 28 08:55 css/

drwxrwxrwx. 2 www-data www-data 6 Feb 28 08:56 ext/

drwxrwxr-x. 2 www-data www-data 223 Feb 28 08:55 js/

drwxrwxr-x. 2 www-data www-data 54 Mar 12 01:31 lang/

-rw-r--r--. 1 root root 111985 Mar 12 01:15 model.php

drwxrwxr-x. 2 www-data www-data 4096 Feb 28 08:55 view/

lang文件夹下

root@0b3bcb6316c4:/app/zentaopms/module/bug# cd lang/root@0b3bcb6316c4:/app/zentaopms/module/bug/lang# pwd/app/zentaopms/module/bug/lang

root@0b3bcb6316c4:/app/zentaopms/module/bug/lang# ll

total60drwxrwxr-x. 2 www-data www-data 54 Mar 12 01:31 ./drwxrwxr-x. 7 www-data www-data 116 Mar 12 01:31 ../

-rw-rw-r--. 1 www-data www-data 20113 Feb 28 08:55en.php-rw-r--r--. 1 root root 20339 Mar 12 01:15 zh-cn.php-rw-rw-r--. 1 www-data www-data 20383 Feb 28 08:56 zh-tw.php

3、禅道数据文件的迁移

原路径

E:\xampp\zentao\www\data\upload

docker容器目标路径

root@0b3bcb6316c4:/app/zentaopms/www/data/upload# pwd/app/zentaopms/www/data/upload

root@0b3bcb6316c4:/app/zentaopms/www/data/upload# ll

total4drwxrwxrwx.3 www-data www-data 15 Mar 12 02:29 ./drwxrwxrwx.5 www-data www-data 50 Feb 28 08:56 ../drwxr-xr-x. 23 root root 4096 Mar 12 02:06 1/

三、映射禅道MySQL数据库的问题

由于业务需求,需要映射禅道MySQL数据库通过客户端访问连接。

注意:映射端口之后需要修改MySQL允许远程登陆连接,确认下mysql服务,是否允许非本机的其他机器访问?

这需要修改/etc/mysql/mariadb.conf.d/50-server.cnf

1、拷贝禅道MySQL配置文件进行外部修改

# docker cp chandao:/etc/mysql/mariadb.conf.d/50-server.cnf /root/

[root@localhost ~]# docker cp chandao:/etc/mysql/mariadb.conf.d/50-server.cnf /root/[root@localhost~]#

[root@localhost~]#

[root@localhost~]# ls

50-server.cnf

[root@localhost~]#

2、修改my.ini中的bind-address参数

# cat 50-server.cnf.bak

删除bind-address参数或者修改为bind-address=0.0.0.0

[root@localhost ~]# cat 50-server.cnf.bak

#

# Thesegroupsare read by MariaDB server.

# Use itforoptions that only the server (but not clients) should see

#

# See the examples of server my.cnf filesin /usr/share/mysql/#

# this is read by the standalone daemon and embedded servers

[server]

# this is onlyforthe mysqld standalone daemon

[mysqld]

#

#*Basic Settings

#

user=mysql

pid-file = /var/run/mysqld/mysqld.pid

socket= /var/run/mysqld/mysqld.sock

port= 3306basedir= /usr

datadir= /var/lib/mysql

tmpdir= /tmp

lc-messages-dir = /usr/share/mysql

skip-external-locking

# Instead of skip-networking the default is now to listen only on

# localhostwhich is more compatible and is not lesssecure.

bind-address = 127.0.0.1#

#*Fine Tuning

#

key_buffer_size=16M

max_allowed_packet=16M

thread_stack=192K

thread_cache_size= 8# This replaces the startup script and checks MyISAM tablesifneeded

# the firsttimethey are touched

myisam-recover =BACKUP

#max_connections= 100#table_cache= 64#thread_concurrency= 10#

#*Query Cache Configuration

#

query_cache_limit=1M

query_cache_size=16M

#

#*Logging and Replication

#

# Both location gets rotated by the cronjob.

# Be aware that this log type is a performance killer.

# As of5.1 you can enable the log at runtime!#general_log_file= /var/log/mysql/mysql.log

#general_log= 1#

# Error log-should be very few entries.

#

log_error= /var/log/mysql/error.log

#

# Enable the slow query log to see queries with especiallylongduration

#slow_query_log_file= /var/log/mysql/mariadb-slow.log

#long_query_time= 10#log_slow_rate_limit= 1000#log_slow_verbosity=query_plan

#log-queries-not-using-indexes

#

# The following can be used as easy to replay backup logs orforreplication.

# note:ifyou are setting up a replication slave, see README.Debian about

# other settings you may need to change.

#server-id = 1#log_bin= /var/log/mysql/mysql-bin.log

expire_logs_days= 10max_binlog_size=100M

#binlog_do_db=include_database_name

#binlog_ignore_db=include_database_name

#

#*InnoDB

#

# InnoDB is enabled by default with a 10MB datafilein /var/lib/mysql/.

# Read the manualfor more InnoDB related options. There are many!#

#*Security Features

#

# Read the manual, too,if you want chroot!#chroot = /var/lib/mysql/#

# For generating SSL certificates I recommend the OpenSSL GUI"tinyca".

#

# ssl-ca=/etc/mysql/cacert.pem

# ssl-cert=/etc/mysql/server-cert.pem

# ssl-key=/etc/mysql/server-key.pem

#

#*Character sets

#

# MySQL/MariaDB default is Latin1, but inDebian we rather default to the full

# utf84-bytecharacter set. See also client.cnf

#

character-set-server =utf8mb4

collation-server =utf8mb4_general_ci

#

#* Unix socket authentication plugin is built-in since 10.0.22-6#

# Needed so the root database user can authenticate without a password but

# only when running as the unix root user.

#

# Also availablefor other users ifrequired.

# See https://mariadb.com/kb/en/unix_socket-authentication-plugin/

# this is onlyforembedded server

[embedded]

# This group is only read by MariaDB servers, not by MySQL.

# If you use the same .cnffile forMySQL and MariaDB,

# you can put MariaDB-only options here

[mariadb]

# This group is only read by MariaDB-10.0servers.

# If you use the same .cnffile forMariaDB of different versions,

# use this groupfor options that older servers don't understand

[mariadb-10.0]

[root@localhost~]#

停止禅道容器

# docker stop chandao

[root@localhost ~]# docker stop chandao

chandao

[root@localhost~]#

删除禅道容器

# docker rm chandao

[root@localhost ~]# docker rmchandao

chandao

[root@localhost~]#

3、重新创建禅道容器,增加MySQL端口

# docker run --name chandao -p 7075:80 -p 3307:3306 -v /home/chandao/www/:/app/zentaopms -v /home/chandao/data/:/var/lib/mysql -e MUSQL_ROOT_PASSWORD=123456 -d chandao:latest

[root@localhost ~]# docker run --name chandao -p 7075:80 -p 3307:3306 -v /home/chandao/www/:/app/zentaopms -v /home/chandao/data/:/var/lib/mysql -e MUSQL_ROOT_PASSWORD=123456 -d chandao:latest

1b97eee2741749a286c8b40791f7bfd1ee0e687e8c414edaf5e95cfa218f7883

[root@localhost~]#

[root@localhost~]#

[root@localhost~]# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

1b97eee27417 chandao:latest"/app/docker-entrypo…" 9 seconds ago Up 9 seconds 0.0.0.0:7075->80/tcp, 0.0.0.0:3307->3306/tcp chandao

4、替换禅道容器中的数据库配置文件

# docker cp /root/50-server.cnf chandao:/etc/mysql/mariadb.conf.d/

5、重新启动禅道容器

# docker restart chandao

[root@localhost ~]# docker cp /root/50-server.cnf chandao:/etc/mysql/mariadb.conf.d/[root@localhost~]#

[root@localhost~]# docker restart chandao

chandao

[root@localhost~]#

[root@localhost~]#

[root@localhost~]#

[root@localhost~]# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

1b97eee27417 chandao:latest"/app/docker-entrypo…" About a minute ago Up 3 seconds 0.0.0.0:7075->80/tcp, 0.0.0.0:3307->3306/tcp chandao

四、升级

1、重新构建镜像

重新修改Dockerfile,重新运行构建镜像命令

# docker build -t chandao:v2 .

2、备份数据库(zentao)和data数据

3、用新镜像运行容器

如果升级失败需要如下操作

4、删除所有表 然后再还原备份

5、然后重新升级一下禅道

升级时会提示验证操作,按照提示要求,在 [主机代码目录] 的 www 目录创建 ok.txt。

创建后,点击 继续更新即可。

参考网站:

https://www.zentao.net/download/80098.html

请先阅读官网文档,多数使用问题都可以在文档内找到答案

http://www.zentao.net/book/zentaopmshelp.html

技术支持:

http://www.zentao.net/book/zentaopmshelp/70.html

docker helowin 迁移_禅道在docker上部署与迁移相关推荐

  1. Docker 安装最新版禅道16.5版本 原创

    Docker 安装最新版禅道16.5版本 原创 1下载禅道 2运行镜像 3.查看启动日志,可以看到启动成功: 下载禅道 docker pull idoop/zentao; 2.运行镜像 docker ...

  2. docker内存阀值_网易蜂巢的Docker容器中数据库的创建和迁移教程

    创建数据库实例RDS 服务管理入口位于蜂巢首页的数据库服务选项.点击「数据库」,即可显示你的所有 RDS 实例列表,包括普通实例和只读实例.你可以在该界面进行实例创建.安全组管理等操作,此外还可以对具 ...

  3. 禅道备份功能_禅道数据库备份

    1.产品2.UI3.CSS4.JS5.后端(Java/php/python)6.DBA(mysql/oracle)7.运维(OP) 8.测试(QA)9.算法(分类/聚类/关系抽取/实体识别)10.搜索 ...

  4. 禅道项目管理_禅道项目管理软件 v12.5.1 开源版

    禅道项目管理软件简介禅道是第一款国产的开源项目管理软件.它集产品管理.项目管理.质量管理.文档管理.组织管理和事务管理于一体,是一款专业的研发项目管理软件,完整地覆盖了项目管理的核心流程.注重实效的管 ...

  5. 禅道项目管理_禅道 11.6.1 版本发布,完善细节,修复 Bug

    禅道项目管理软件集产品管理.项目管理.质量管理.文档管理.组织管理和事务管理于一体,是一款功能完备的项目管理软件,完美地覆盖了项目管理的核心流程.禅道官网:www.zentao.net. 大家好,禅道 ...

  6. docker 厂商 容器_疫情期间,Docker让运维人员雪上加霜

    2020疫情原因,公司业绩下滑严重,于是决定给团队瘦身,经过激烈的讨论,最终决定先从运维人员开始.原因是我们引入了Docker.它部署项目相比之前要简单许多.运维的工作完全可以被开发替代.当然我们小公 ...

  7. python 智禅_禅道是什么意思:非禅不智,非智不禅

    "四禅八定"是佛家中常用的一种入定方式,那就是禅.那些寺庙中的和尚修习的佛教文化就是禅道文化. "僧侣所修之道.亦特指禅定之道."你知道禅道是什么意思吗?那么, ...

  8. linux mysql搭建禅道详细教程_如何在Linux服务器上部署禅道

    目前较受欢迎的开源项目管理软件:禅道. 这是一款国产的优秀开源项目管理软件,基于敏捷项目管理理念开发而成,操作简洁,能够很好地满足目前团队中的产品.开发.测试等人员的使用. 下面详细介绍如何在Linu ...

  9. 禅道设置bug模板_禅道项目管理软件bug过滤剧本

    新公司运用禅道作bug治理体系.每次产物上线的时刻,一切的测试职员测试出bug之就就提在禅道上. 由于我们公司现在的测试只要一个,就把许多产物拉来充数.他们分不清bug和需求.所以每每涌现的状况是一大 ...

最新文章

  1. BZOJ1702: [Usaco2007 Mar]Gold Balanced Lineup 平衡的队列
  2. 使用 ale.js 制作一个小而美的表格编辑器(3)
  3. 记录一个班级的成绩练习一维数组
  4. 北斗导航 | RDSS短报文之数据解压缩算法:LZ77
  5. /usr/lib/sudo/sudoers.so must be only be writable by owner
  6. 小程序登录本地服务器,微信小程序实现用户登录模块服务器搭建
  7. 反向代理服务器的工作原理 (转)
  8. 计算机二级宏相关例题,计算机等级考试二级Access练习题
  9. 零基础自学用Python 3开发网络爬虫(二): 用到的数据结构简介以及爬虫Ver1.0 alpha...
  10. Android微信搜索,微信搜索APP
  11. javacc jjtree 写法 以及 jj写法 基本语法 以及应用
  12. 福利!网络工程师H3CNE认证GB0-191 考试试题库超详细解读-01。持续更新~
  13. boy模拟器 my_myboy模拟器中文下载
  14. 数据库笔试——查出各部门超出部门平均薪资的员工的姓名,薪资,所在部门名称及部门平均薪水...
  15. echarts设置label添加下划线
  16. WIN7电脑防火墙如何设置?
  17. 19美亚个人赛复盘2(手机取证)
  18. 单片机编程中,如何用串口调试助手直接打印出十进制数
  19. HOG特征提取matlab代码
  20. 单片机课设:基于MSP430F249的电子时钟设计

热门文章

  1. 人脸识别的三个评测标准
  2. pylon 内存泄露的问题
  3. 设计模式之观察者模式(c++)
  4. 动态创建TXMLDocument--使用IXMLDocument接口
  5. 常见面试题思想方法整理
  6. java 动态重载_Java中是否可以实现动态重载解析?
  7. python编程(巧用装饰器)
  8. 随想录(objc的编译)
  9. 神奇的go语言(网页下载)
  10. css 文字可选,在HTML5中如何使用CSS建立不可选的文字