Docker 기반 Android Jenkins CI (Mac 환경)
# Docker 기반 Android Jenkins CI (Mac 환경)
1. docker 설치 및 실행
- https://hub.docker.com/editions/community/docker-ce-desktop-mac
2. jenkins docker 이미지 다운로드 및 실행
$ docker pull jenkins/jenkins:lts $ docker run -d -p 8080:8080 --name jenkinsCI jenkins/jenkins:lts |
- "-d" : 데몬으로 실행. 없으면 shell 종료시 같이 꺼짐.
- "-p 8080:8080" : 포트 구성
- "--name jenkinsCI" : 컨테이너 이름
- "jenkins/jenkins:lts" : 받아놓은 lts 버전, 없으면 받아온다. - https://hub.docker.com/r/jenkins/jenkins/
3. jenkins local 접속 및 기본설치
- localhost:8080 으로 접속
- 첫 인증코드를 확인하기 위해 jenkinsCI의 log를 확인
$ docker logs jenkinsCI |
- 플러그인 설치
- 사용자 계정 등록
4. docker 이미지에 Android SDK 설치
4-1. docker shell에 접속
$ docker exec -u 0 -it [Container ID] /bin/bash |
4-2. Android-SDK 기본 설치
$ apt update $ apt install android-sdk |
4-3. 빌드에 필요한 Android-SDK tool 추가설치
4-3-1. sdkmanager 설치
$ wget https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip
$ mv sdk-tools-linux-4333796.zip /usr/lib/android-sdk/sdk-tools-linux-4333796.zip $ unzip sdk-tools-linux-4333796.zip |
4-3-2. sdkmanager로 필요한 tool 설치
$ cd tools/bin $ ./sdkmanager --list $ ./sdkmanager "build-tools;28.0.2" "build-tools;28.0.3" "platforms;android-28" |
5. Jenkins 환경변수에 ANDROID_HOME path 등록
- Jenkins 관리 > 시스템 설정 > Global properties > Environment variables
- 이름: ANDROID_HOME, 값: /usr/lib/android-sdk