반응형
Bitbucket Pipelines는 기본적으로 Docker 컨테이너에서 실행되기 때문에,
빌드 도구(build tool)가 해당 컨테이너 이미지에 사전 설치되어 있거나, 설치 스크립트를 통해 직접 설치해야만 빌드가 가능합니다.
1. 빌드 도구가 이미 설치된 이미지 사용
예를 들어, Node.js 프로젝트라면 node 이미지에는 npm이나 node가 이미 포함되어 있습니다:
image: node:18
pipelines:
default:
- step:
script:
- npm install
- npm run build
장점: 빠르고 간단
단점: 복잡한 빌드 환경(여러 도구 조합 등)은 부족할 수 있음
2. 필요한 도구를 설치하는 스크립트 작성
빌드 도구가 기본 이미지에 없다면, 명령어로 직접 설치해야 합니다. 예:
image: ubuntu:22.04
pipelines:
default:
- step:
name: Install and Build
script:
- apt-get update && apt-get install -y openjdk-17-jdk maven
- mvn clean package
예시:
- Java + Maven이 필요한 경우 직접 설치 후 사용
- Python 프로젝트에서 pip, poetry, poetry-plugin 등을 설치 가능
3. 커스텀 Docker 이미지 사용
설정 반복을 피하려면 필요한 빌드 도구가 포함된 Docker 이미지를 직접 만들어서 사용할 수 있습니다.
image: your-docker-repo/your-custom-image:latest
이 경우, Dockerfile에는 모든 빌드 툴을 사전 설치해두고
Bitbucket Pipelines는 그 이미지를 바로 사용합니다.
4. services: 섹션으로 외부 도구 연결 (예: DB, Redis 등)
definitions:
services:
postgres:
image: postgres:13
pipelines:
default:
- step:
script:
- ./build.sh
services:
- postgres
빌드 도구는 아니지만, 빌드/테스트 도중 DB 등 외부 서비스가 필요할 경우 services로 함께 사용 가능.
🔒 주의할 점
- Bitbucket Pipelines는 루트 권한(root) 으로 실행되므로 설치 명령어를 자유롭게 실행 가능
- 하지만, 매번 설치는 시간이 오래 걸리므로 커스텀 이미지를 만드는 것이 장기적으로 효율적
반응형
'개발 도구 > Bitbucket' 카테고리의 다른 글
[ Bitbucket ] pipeline 설정시 사용할 수 있는 Trigger 종류 알아보기 (1) | 2025.07.14 |
---|---|
[ Bitbucket ] pipeline 설정하기 (0) | 2025.07.14 |
[ Bitbucket ] git 사용시 SSH key 직접 지정해서 사용하기 (0) | 2025.07.13 |
[ Bitbucket ] Repository 마다 다른 SSH key 사용하기 (0) | 2025.07.13 |
[ Bitbucket ] workspace, project, repository의 의미와 역활 (1) | 2025.07.13 |