반응형
toy 프로젝트를 docker image로 만들어서 배포하고자
배포 시나리오를 생각던 중
docker build 시 소스파일을 git으로 가져오는 방법을 정리합니다.
테스트 환경 : VirtualBox 6.0사용
- Host : Windows 10
- Guest : Ubuntu 16.04
01. Docker 설치
https://basketdeveloper.tistory.com/26?category=798107 를 참고하시면 됩니다.
설치를 확인 하기 위해서는
아래 명령어로 docker version 확인 가능합니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
jckang@jckang:~$ docker version
Client:
Version: 18.09.8
API version: 1.39
Go version: go1.10.8
Git commit: 0dd43dd87f
Built: Wed Jul 17 17:41:19 2019
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 18.09.8
API version: 1.39 (minimum version 1.12)
Go version: go1.10.8
Git commit: 0dd43dd
Built: Wed Jul 17 17:07:25 2019
OS/Arch: linux/amd64
Experimental: false
jckang@jckang:~$
|
cs |
만약 Server 쪽 정보가 뜨지 않는다면
1
|
sudo usermod -aG docker [user명]
|
cs |
권한 주고 로그오프 하시면 될겁니다.
02. Dockerfile 작성
아래와 같이 Dockerfile을 작성해줍니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
FROM ubuntu:16.04
LABEL version='1.0.0'
USER root
# sources.list 교체 후 적용
COPY sources.list /etc/apt/sources.list
RUN apt-get update
RUN apt-get upgrade -y
# container에 git 설치
RUN apt-get install git -y
# app 디렉토리 선정
RUN mkdir /opt/app
RUN git clone [Repository 주소 ex)https://github.com/aaa/bbb.git] /opt/app
|
cs |
ubuntu 16.04 이미지를 base로 하구요.
빌드 시 sources.list를 교체 합니다. apt-get 패키지다운로드 서버를 변경하여 조금이라도 빨리 다운받을 수 있게 하기위함입니다. 생략해도 상관없습니다.
RUN apt-get install git -y 로 container 내에 git을 설치 해줍니다.
app 디렉터리 선정하여 없다면 만들어줍시다. (위 경우 /opt/app 으로...)
이후 git clone 명령어로 소스파일을 받을 수 있습니다.
03. Docker 빌드
아래 명령어로 빌드해봅시다.
1
|
docker build -t test:1.0.0 .
|
cs |
04. Docker 실행
빌드가 성공적으로 완료되었다면 아래 명령어로 이미지 확인 후,
entry point를 bash 쉘로 하여 실행시켜봅시다.
1
2
3
4
5
|
jckang@jckang:~/portfolio_build$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
test 1.0.0 5c233d126367 43 minutes ago 805MB
ubuntu 16.04 13c9f1285025 4 weeks ago 119MB
jckang@jckang:~/portfolio_build$ docker run -it test:1.0.0 /bin/bash
|
cs |
이후 /opt/app경로로 이동하여 소스가 정상적으로 받아졌는지 확인하면 끝~
반응형
'개발 이야기 > Docker' 카테고리의 다른 글
Docker 명령어 정리 (0) | 2019.07.27 |
---|---|
Docker compose로 Nginx + Web앱 띄워보기 (2) | 2019.01.06 |
Docker 권한 일반사용자에게 주기 (0) | 2018.09.08 |
Docker 삭제하기 (0) | 2018.09.08 |
Docker 설치하기 (0) | 2018.09.08 |