
#10 yona 셋팅 및 이관
Tasks
yona 설치 (1.14.0 H2 버전 기준)#
선행#
환경변수에 JAVA_HOME 설정
다운로드#
압축 해제 및 기본 설정#
기본 경로 c:\yona\
수정 시 yona-run.bat 파일 수정
:: yona 데이터 경로
SET YONA_DATA=**C:\yona\yona-data**
:: yona 서버 설정(포트, 메모리)
SET JAVA_OPTS=-DapplyEvolutions.default=true -Dhttp.port=7070 -Xmx4096m -Xms4096m
:: 기존 pid 삭제(yona 강제 종료 시 pid가 삭제되지 않아 오류 발생)
del /f /q yona-1.14.0\RUNNING_PID
:: yona.bat 실행
yona-1.14.0\bin\yona.bat
Google Analytics 비 활성화#
yona-data\application.conf 수정 필요
application.send.yona.usage = false
접속 확인 및 관리자 계정 설정(최초 1회)#
프로젝트 이관#
- 프로젝트의 각종 게시판 이관
- svn 소스 이관
1. 게시판 이관#
※ 참고 사이트 (https://github.com/yona-projects/yona-export)
npm 명령어 사용을 위한 nodejs 설치 (https://nodejs.org/en/)#
yona-export 파일 다운로드 및 압축 해제 (예제는 c:\yona-export-master)#
명령 프롬프트(cmd) 실행 이후 명령어 실행#
npm install
Export / Import 프로젝트 설정#
config.json 파일 수정
export default {
EXPORT_BASE_DIR: 'exported', // local pc 디렉터리
ATTACHMENTS_DIR: 'files', // EXPORT_BASE_DIR 아래 첨부파일이 생기는 곳
YONA: {
FROM: { // Export 할 Yona 인스턴스
SERVER: 'http://127.0.0.1:7070',
USER_TOKEN: 'QvF2KXgVVxY+fMDMPHfKwcAB4KjuDDaZO7AOlWIITKI=',
OWNER_NAME: 'jhleem',
PROJECT_NAME: 'ctm',
ROOT_CONTEXT: '' // 따로 application root를 설정한 경우
},
TO: { // Import 시킬 Yona 인스턴스
SERVER: 'http://127.0.0.1:9090',
USER_TOKEN: 'ZDWnWg/1b9Wh53jWAMJbTxaXZKUBFOz1EyhBDeTaaM0=',
OWNER_NAME: 'jhleem', // 관리자 권한 필요
PROJECT_NAME: 'ctm_trans',
ROOT_CONTEXT: ''
}
}
};
USER_TOKEN은 yona 사이트의 사용자 설정 -> 사용자토큰 에서 확인 가능
TO의 OWNER_NAME는 관리자 권한이 필요하며 yona의 관리자로 접속 후 해당 사용자를 사이트 어드민으로 지정 해 준다.
Project Export 실행#
npm start -- export
export 파일 생성 확인
※※※ 완전 중요 ※※※#
export 데이터 중 사용자 데이터(authors, members)는 import될 사용자와 id, 이름, email이 동일해야 중복으로 등록이 안된다.
따라서 (프로젝트명).json 파일을 열어 "authors":[], "members":[] 로 데이터를 수정해야 한다.
혹시 사용자 데이터가 중복으로 들어갔다면 해당 계정은 로그인이 되지 않고 에러가 발생한다. 그럴 경우 관리자로 로그인을 한 뒤 사이트 관리 메뉴에서 추가된 사용자를 삭제 후 razorsql 툴을 사용하여 yona.h2.db파일을 연 뒤 N4USER 테이블에서 해당 사용자를 DELETE해 준다.
import를 완료 한 후 관리자 권한이 있는 계정으로 접속하여 프로젝트의 사용자 권한을 다시 등록 한다.
razorsql9_4_10_windows_x64.zip
Project Import 실행#
npm start -- import
※ 아래와 같이 403 에러 발생 시 config.json 파일의 TO의 OWNER_NAME의 권한을 추가해 준다.
2. svn 소스 이관 (잘 안된다 그냥 소스 다시 커밋하는게 나은듯 정 필요할 시에는 yona-data폴더의 repo안의 db폴더 복사에서 넣자)#
※ 참고 사이트 (https://github.com/yona-projects/yona/issues/78)
svnsync 명령어 사용을 위한 svn 다운로드 (https://sliksvn.com/download/)#
Slik-Subversion-1.14.1-x64.zip
주의 사항#
게시판 이관 작업이 불필요하여 svn 소스만 이관 시에는 import될 yona 서버에 프로젝트를 먼저 생성해야 한다.
게시판 이관 작업 때 프로젝트가 없다면 자동으로 생성해주기 때문이다.
초기화 "svnsync init"#
svnsync init file:///(import될 서버의 svn 폴더 경로) (복사 될 서버의 svn 접속 주소)
svnsync init http://127.0.0.1:9090/svn/jhleem/ctm_trans3 http://127.0.0.1:7070/svn/jhleem/ctm --source-username=jhleem --source-password=1234 --sync-username=jhleem --sync-password=1234
// --source-username=원본서버계정 --source-password=원본서버비밀번호 --sync-username=복사될서버계정 --sync-password=복사될서버비밀번호
저장소 복사 "svnsync sync"#
svnsync sync file:///(import될 서버의 svn 폴더 경로)
svnsync sync http://127.0.0.1:9090/svn/jhleem/ctm_trans3 --source-username=jhleem --source-password=1234 --sync-username=jhleem --sync-password=1234
Comment 0
Add a comment