系統(tǒng)遷移原因:
? ? 為方便各地的測試人員使用 ,所以需要將內(nèi)網(wǎng)的BUG管理系統(tǒng)(redmine) 移植的阿里云服務(wù)器上。
系統(tǒng)遷移環(huán)境對比:
原BUG管理系統(tǒng)(redmine)安裝環(huán)境:內(nèi)網(wǎng),Windows Server 2008R2 x64
? ? ? 目標(biāo)BUG管理系統(tǒng)(redmine)安裝環(huán)境:外網(wǎng)悬槽,Linux Centos 7 x64
系統(tǒng)遷移方案:
? ? 考慮到BUG管理系統(tǒng)(redmine)在Centos7上部署,需要安裝ruby,php ,等多種開發(fā)包,怕影響到現(xiàn)有的系統(tǒng)正常運行 筝家,故采用了現(xiàn)在流行的docker 方式來部署目標(biāo)系統(tǒng)。Docker 官網(wǎng)也提供了安裝Redmine的指導(dǎo)方法(https://docs.docker.com/samples/library/redmine/)邻辉。
系統(tǒng)遷移步驟:
從現(xiàn)有系統(tǒng)中導(dǎo)出全部數(shù)據(jù)溪王。?
1.1 從Redmine配置目錄下找到database.yml文件(C:\Bitnami\redmine-4.0.1-1\apps\redmine\htdocs\config\database.yml),獲得數(shù)據(jù)庫用戶和密碼值骇,導(dǎo)出數(shù)據(jù)庫數(shù)據(jù)莹菱。導(dǎo)出數(shù)據(jù)有兩種方案:登錄 http://127.0.0.1:8080/phpmyadmin/index.php ,導(dǎo)出數(shù)據(jù)庫數(shù)據(jù)吱瘩,或者使用mysqldump命令做導(dǎo)出操作: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運行環(huán)境。
2.1 從https://get.docker.com/ 獲得get-docker.sh 搅裙,? 在root環(huán)境下 執(zhí)行 該腳本 自動安裝docker運行環(huán)境皱卓。啟動docker服務(wù):systemctl start docker 。如果需要開機(jī)自啟動docker服務(wù)部逮,則繼續(xù)執(zhí)行如下命令:systemctl enable docker 娜汁。
2.2 安裝 docker-compose?: ?yum install docker-compose
3. 部署redmine。
3.1 創(chuàng)建 redmine.yml兄朋。執(zhí)行 vi redmine.yml掐禁,輸入以下內(nèi)容,并保存颅和。
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官網(wǎng)文檔
? 3.2 部署redmine服務(wù)??? ?docker-compose -f redmine.yml up
4.? 導(dǎo)入數(shù)據(jù)到目標(biāo)數(shù)據(jù)
4.1 將redmine.sql 和files.tar 上傳到 阿里云服務(wù)器傅事。注意redmine.sql 里面的數(shù)據(jù)庫名稱要與sql docker中的數(shù)據(jù)庫名稱一致 (redmine)。
4.2? 檢查運行的容 docker ps?
4.3 導(dǎo)入附件
mkdir tmp
tar xvf files.tar tmp/
cd tmp/
docker cp . [REDMINE CONTAINERID]:/usr/src/redmine/files/
? 4.4 導(dǎo)入數(shù)據(jù)庫數(shù)據(jù) ?
docker cp redmine.sql [MYSQL CONTAINERID] :/
進(jìn)入MYSQL容器? docker exec -it [MYSQL CONTAINERID] ?sh
進(jìn)入 mysql? -uroot -pexample
drop database redmine
source? /redmine.sql
系統(tǒng)遷移完成峡扩。?