6 min read

Bamboo 서비스 구성 및 설치 가이드

1. Bamboo 개요

Atlassian Bamboo는 소프트웨어 개발 및 빌드 작업을 자동화하기 위한 지원 플랫폼입니다.
Bamboo는 소프트웨어 개발 및 빌드 작업을 자동화하고 제어하고 보고하고 배포하기 위해 사용할 수 있는 도구를 제공합니다.


2. Bamboo 구성 개요

본 가이드 문서에서는 Bamboo Application 8.2.7 버전을 사용합니다.

Bamboo을 사용하기 위해서 Bamboo에서 사용할 DB 구성을 진행합니다.
이후 Bamboo 인스턴스를 구성하고 Bamboo설치 전 Configuration을 진행 후 웹 UI로 접근하여 설치합니다.

  1. Bamboo DB 구성
    1. DB 생성
    2. DB 유저 및 패스워드 구성
    3. DB - User 권한 매핑
  2. Bamboo 구성
    1. Bamboo Tomcat 설정
    2. Bamboo 설치

본 가이드는 Crowd 서비스 구성 및 설치 가이드에서 생성한 PostgreSQL DB 인스턴스를 사용합니다.
(설치 및 설정 가이드는 여기서도 제공합니다.)


3. Bamboo 설치 환경

OpenStack을 사용한 Private Cloud 환경

Bamboo Instance 구성 정보

  • OS: Linux Ubuntu-jammy-22.04 (Cloud Image)
  • JDK: OpenJDK 11.0.17
  • Bamboo: Bamboo 8.2.7

Bamboo DB Instance 구성 정보

  • OS: Linux Ubuntu-jammy-22.04 (Cloud Image)
  • Database: PostgreSQL 14
💡
Bamboo Server 플랫폼 요구사항은 Atlassian에서 제공하는 Docs를 참고.

4. PostgreSQL 구성

4.1 PostgreSQL 설치

apt update && apt install -y postgresql-14

4.2 PostgreSQL 외부 접속허용 설정

vim /etc/postgresql/14/main/postgresql.conf
  • Listen_addresses을 localhost 에서 * 으로 변경
vim /etc/postgresql/14/main/pg_hba.conf
  • Bitbucket 인스턴스에서 접근 허용할 정보 입력
💡
설정을 위와 같이 변경합니다.
→ Bamboo 서버에서 접속할 때 scram-sha-256 암호화를 사용합니다.
(설정 변경 전 PostgreSQL의 기본 계정인 postgres 계정의 패스워드를 설정 해야합니다.)
→ ADDRESS 부분은 Bitbucket Server IP로 지정합니다.
pg_hba.conf 파일 설정에 대한 부분은 PostgreSQL 공식 Docs에서 확인가능합니다.

4.3 PostgreSQL DB 구성

CREATE ROLE bamdbadmin WITH LOGIN PASSWORD 'bamdamin' VALID UNTIL 'infinity';

CREATE DATABASE bamdb WITH ENCODING='UTF8' OWNER=bamdbadmin CONNECTION LIMIT=-1;
공식 PostgreSQL 설정 가이드는 Atlassian Docs 참고

5. Bamboo 구성

5.1 OpenJDK 11 설치

apt install -y openjdk-11-jdk\

5.2 JAVA_HOME 환경변수 설정

  • OpenJDK 설치 위치를 확인 합니다. (기본적으로 /usr/lib/jvm 에 존재합니다.)
dpkg -L openjdk-11-jdk
echo "export JAVA_HOME='/usr/lib/jvm/java-11-openjdk-amd64'" >> ~/.bashrc

5.3 Bamboo 8.2.7 설치파일 다운로드

https://www.atlassian.com/software/bamboo/download-archives

  • wget으로 다운로드
wget https://www.atlassian.com/software/bamboo/downloads/binary/atlassian-bamboo-8.2.7.tar.gz

5.4 Bamboo 설치

  1. Confluence가 설치될 Confluence 홈디렉터리 생성 및 다운받은 설치파일 압축 해제
mkdir -p /Atlassian/home-dir/bamboo-home && \
tar -xvf atlassian-bamboo-8.2.7.tar.gz -C /Atlassian 
  1. Bamboo user 생성
useradd -d /Atlassian/home-dir/bamboo-home -s /bin/bash bamboo
  1. Bamboo user에게 디렉터리 권한 할당
chown -R bamboo:bamboo /Atlassian/home-dir/bamboo-home /Atlassian/atlassian-bamboo-8.2.7 && \
chmod -R u=rwx,go-rwx /Atlassian/home-dir/bamboo-home /Atlassian/atlassian-bamboo-8.2.7
  1. 설치 전 bamboo-init.properties 수정

(아래 사진과 같이 bamboo.home 지정)

  1. 설치 스크립트 실행
# bamboo 사용자로 설치
su bamboo
bash /Atlassian/atlassian-bamboo-8.2.7/bin/start-bamboo.sh
  1. http://<Bamboo-Server-IP>:8085/ 접속
Atlassian Trial License 발급
방법 Log in with Atlassian accountLog in to Jira, Confluence, and all other Atlassian Cloud products here. Not an Atlassian user? Sign up for free.Atlassian my.atlassian.com에 들어가서 회원가입 또는 로그인 하여 Atlassian 제품군의 Trial License(평가판 라이센스)를 발급할 수 있습니다. 💡모든 Atlassian 제품의 Trial License 발급이

평가판 라이선스 발급 방법

라이선스 입력까지 진행
  1. Bamboo 서버 기본 설정
  1. DB 정보 입력
PostgreSQL 선택
  1. 새로운 Bamboo home 선택
  1. 관리자 계정 정보 입력

(선택사항) Context Path 변경

  • Bamboo 중지
bash /Atlassian/atlassian-bamboo-8.2.7/bin/stop-bamboo.sh
  • server.xml 수정
vim /Atlassian/atlassian-bamboo-8.2.7/conf/server.xml

(Context의 path="" 를 수정합니다.)

  • Bamboo 시작
bash /Atlassian/atlassian-bamboo-8.2.7/bin/start-bamboo.sh
  • Bamboo 설정

(Base URL을 Proxy 주소로 입력합니다.)

System → General configuration

6. Apache Proxy 설정

이전 Apache - Tomcat(Confluence, Jira, Crowd) 연동 가이드 포스트에서 추가한 방식으로 Apache에 Proxy 설정을 추가합니다.

6.1 Bamboo 서버에서 server.xml 수정

vim /Atlassian/atlassian-bamboo-8.2.7/conf/server.xml

(아래 사진과 같이 proxyName과 proxyPort를 추가합니다.)

6.2 Apache 서버에서 001-atlassian.conf 수정

아래 사진과 같이 ProxyPass 와 ProxyPassReverse를 설정합니다.

6.3 정상 적용 확인


Reference