[개발 환경]
1. OS 설치 및 기본 개발 환경 구축
1) CentOS 6.x 기반
2) 시간 동기화
3) vim 설치 등
2. epel repositories 등록
# yum install epel-release
# yum repolist
3. golang 설치
# yum install golang
4. git client 패치 ( client 2.x 이상 필요)
# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
# yum install gcc perl-ExtUtils-MakeMaker
# yum remove git
# cd
# wget https://www.kernel.org/pub/software/scm/git/git-2.9.1.tar.xz
# tar xvf ./git-2.9.1.tar.xz
# cd git-2.9.1
# make prefix=/usr/local/git all
# make prefix=/usr/local/git install
# git --version
5. go 환경 설정
# mkdir /root/go
# mkdir /root/go/bin
# vi .bash_profile
# User specific environment and startup programs
GOPATH=$HOME/go
export GOPATH
PATH=$PATH:$HOME/bin:$GOPATH/bin
export PATH
# source .bash_profile
6. go 추가 패키지 설치
# go get github.com/lib/pq
# go get gopkg.in/labstack/echo.v1
--------------------------
[개발 소스 Download]
1. /etc/hosts 파일에 장비 정보 등록
211.38.137.34 svc1svn.solbox.com # storage.sd SVN
192.168.0.247 svn.solbox.com # solbox SVN
2. work 폴더 생성
# cd
# mkdir work
# cd work
3. 소스 Download
# svn checkout --username=h http://svn.solbox.com/svn/interactive/trunk/OpenAPI ./OpenAPI.source
--------------------------
[소스 빌드]
1. cd ./OpenAPI.source/api_server
2. 빌드
# go build api_server.go
3. 빌드 결과 확인
- api_server 라는 실행 파일이 생성되면 정상.
--------------------------
[테스트]
1. 로그 폴더 생성
# mkdir -p /user/service/logs/api
2. api_test.sh 설정 수정
- DB 정보 및 Token 정보를 상황에 맞도록 수정
3. 실행
# ./api_test.sh
4. 로그 확인
# tail -f /user/service/logs/api/api_log
> Listening on :13103 로그 있으면 정상
5. 종료
# killall api_server
--------------------------
[실서비스 배포]
1. mkdir /user/service/api
mkdir /user/service/logs/api
2. api_server
- /user/service/api 폴더 하위에 저장 처리 (실행 옵션 처리)
3. api_run.sh
- /user/service/bin 폴더 하위에 저장 처리 (실행 옵션 처리)
4. ISP 별 설정
# vi /user/service/bin/api_run.sh
- 각종 정보를 해당 ISP 에 맞도록 수정 처리
- DATABASE_URL : CCDB 접속 정보
- X_Auth_Token : 인증 Token 정보
5. 서버 기동
# /user/service/bin/api_run.sh