nexus를 이용한 library deploy 하는 방법에 대한 간략하게 설명한다.
설명에 앞서 간략한 소개이다.

  • nexus란?
    Nexus는 maven에서 사용할 수 있는 가장 널리 사용되는 무료 repository 중의 하나이다

  • nexus를 사용하게된 계기
    프로젝트는 여러 컴포넌트로 구성되는데, 공통으로 사용하는 라이브러리 등이 존재하기때문에 nexus를 이용해 repository에 올리는 작업을 진행한다.
    nexus를 이용하면 빠르게 라이브러리를 끌어올 수 도 있고, 반대로 개발팀내에서 사용하는 공통 라이브러리들을 nexus에 배포해서 팀간의 공유가 가능하기 때문에 편리하게 사용할 수 있다.

  • nexus 저장소의 구성
    group : nexus에 설정되어 있는 다른 저장소들을 하나로 묶은 저장소로 생각하면 되는데 그렇게 해야 메이븐의 저장소 설정을 간추릴 수 있다.
    proxy: 다른곳에 있는 기존의 메이븐 저장소를 등록하는 것. jboss와 spring 저장소를 proxy 형태로 등록해두면 이 Nexus에서 필요한 의존성을 jboss와 spring 저장소에서 받아올 수 있다.
    hosted: 다른 저장소에 없는 파일 또는 proxy를 통해 제공받을 수 없는 파일인 경우에 직접 메이븐 저장소에 올려줘야 하는데 그럴 때 사용하는 저장소 형태가 바로 hosted 이다.
    admin 계정으로 로그인을 하면 repository 정보들을 확인할 수 있다.

  • 기타 설정 관련 URL
    http://free4pm.tistory.com/11 등 참조.

  • pom.xml 파일 설정
    배포 대상 레파지토리 설정하기

<distributionManagement>
    <repository>
      <id>레파지토리 release 아이디</id>
      <url>레파지토리 주소</url>
    </repository>
    <snapshotRepository>
      <id>레파지토리 snapshot 아이디</id>
      <url>레파지토리 주소</url>
    </snapshotRepository>
  </distributionManagement>

빌드 시 레파지토리 정보

<repositories>
		<repository>
			<id>release 아이디</id>
			<url>nexus 경로(release)</url>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</repository>

		<repository>
			<id>snapshot id</id>
			<url>nexus 경로(snapshot)</url>
			<snapshots>
				<updatePolicy>always</updatePolicy>
			</snapshots>
		</repository>
	</repositories>
  • ** nexus에 deploy하는 방법**
    deploy 하는 방식은 프로젝트 우클릭 > run As > run configuration (eclipse 기준) deploy 하면 된다.

deploy 하고, URL로 접속하면 실시간으로 반영된 정보를 확인할 수 있다.

 

리눅스 서버 메모리 확인 및 java option 설정

  • jenkins를 다운받아, 빌드서버로 사용하는 과정에서 java option 설정을 하지 않아 permGen 영역의 OOM이 발생한 계기로 글을 작성한다.
  1.              cat /proc/meminfo를 실행하면, 현재 메모리 용량을 확인할 수 있다. 상세는 http://egloos.zum.com/pacemaker/v/3949343참조
  2. /home1/irteam/apps/tomcat/bin/catalina.sh 또는 catalina.bat 파일에서 java option 설정이 가능하다.
    메모리 사이즈 등을 고려하여, 옵션을 설정한다. JAVA_OPTS="-server -Xms2048m -Xmx2048m -XX:PermSize=512m -XX:MaxPermSize=512m"
  3. ps -ef | grep 'java'를 통해 java 메모리 영역이 잘 설정되어있는지 확인한다. 

 

git ssh 설정하기

  • github ssh 등록하기. 최초 repository 생성 시 ssh key 등록이 되어있지 않게된다. jenkins 등 연동을 위해 ssh key 등록이 필요한데 그 과정에 대해 설명한다.
  1. ssh-keygen 을 git bash에 입력하면 ssh key가 생성된다.

 

2.    다음과 같은 경로에 ssh key파일이 생성되며 공개키와, 개인키가 생성된다.

 

3. 공개키를 github에 복사해서 아래 항목에 넣는다. 경로는 프로젝트 > settings > deploy keys 

4. 개인키를 연동하고자 하는 곳에 붙여넣는다.

통신이 정상적으로 완료되면, deploy keys에 파란불이 들어오는 것을 확인할 수 있다.

 

 

* 참조 https://mylko72.gitbooks.io/git/content/remote/repository.html

 

'개발노트 > git' 카테고리의 다른 글

git 저장소 올리기  (0) 2018.05.31
git to git migration  (0) 2017.08.07

+ Recent posts