Redmine服务器迁移

2019-04-30  本文已影响0人  roywangt

系统迁移原因:

    为方便各地的测试人员使用 ,所以需要将内网的BUG管理系统(redmine) 移植的阿里云服务器上。

系统迁移环境对比:

原BUG管理系统(redmine)安装环境:内网,Windows Server 2008R2 x64

      目标BUG管理系统(redmine)安装环境:外网,Linux Centos 7 x64

系统迁移方案:

    考虑到BUG管理系统(redmine)在Centos7上部署,需要安装ruby,php ,等多种开发包,怕影响到现有的系统正常运行 ,故采用了现在流行的docker 方式来部署目标系统。Docker 官网也提供了安装Redmine的指导方法(https://docs.docker.com/samples/library/redmine/)。

系统迁移步骤:

从现有系统中导出全部数据。 

1.1 从Redmine配置目录下找到database.yml文件(C:\Bitnami\redmine-4.0.1-1\apps\redmine\htdocs\config\database.yml),获得数据库用户和密码,导出数据库数据。导出数据有两种方案:登录 http://127.0.0.1:8080/phpmyadmin/index.php ,导出数据库数据,或者使用mysqldump命令做导出操作:mysqldump -P 3307 -ubitnami -paa03ebd9ed bitnami_redmine > redmine.sql

1.2 将存放附件的目录

(C:\Bitnami\redmine-4.0.1-1\apps\redmine\htdocs\files) 归档打包(files.tar)。

2. Cenos7 上搭建docker运行环境。

2.1 从https://get.docker.com/ 获得get-docker.sh ,  在root环境下 执行 该脚本 自动安装docker运行环境。启动docker服务:systemctl start docker 。如果需要开机自启动docker服务,则继续执行如下命令:systemctl enable docker 。

2.2 安装 docker-compose :  yum install docker-compose

3. 部署redmine。

3.1 创建 redmine.yml。执行 vi redmine.yml,输入以下内容,并保存。

version: '3.1'

services:

  redmine:

    image: redmine

    restart: always

    ports:

      - 8080:3000

    environment:

      REDMINE_DB_MYSQL: db

      REDMINE_DB_PASSWORD: example

  db:

    image: mysql:5.7

    restart: always

    environment:

      MYSQL_ROOT_PASSWORD: example

      MYSQL_DATABASE: redmine

 来自docker官网文档

  3.2 部署redmine服务     docker-compose -f redmine.yml up

4.  导入数据到目标数据

4.1 将redmine.sql 和files.tar 上传到 阿里云服务器。注意redmine.sql 里面的数据库名称要与sql docker中的数据库名称一致 (redmine)。

4.2  检查运行的容 docker ps 

4.3 导入附件

mkdir tmp

tar xvf files.tar tmp/

cd tmp/

docker cp . [REDMINE CONTAINERID]:/usr/src/redmine/files/

  4.4 导入数据库数据  

docker cp redmine.sql [MYSQL CONTAINERID] :/

进入MYSQL容器  docker exec -it [MYSQL CONTAINERID]  sh

进入 mysql  -uroot -pexample

drop database redmine

source  /redmine.sql

系统迁移完成。 

上一篇下一篇

猜你喜欢

热点阅读