docker의 dockerfile과 docker-compse를 사용해서 서버를 띄워보자
sudo su
apt-get update && apt-get upgrade
apt install docker.io
docker 붙여넣기
docker images
docker run
docker exit
sudo su
apt-get update && apt-get upgrade
docker ps
apt install docker.io
cd /
ls
mkdir 폴더이름
ex) mkdir test
cd 폴더이름/
ex) cd test/
vi Dockerfile
Dockerfile안에 내용 작성을 위한 명령어
Dockerfile 작성 명령어
FROM : 베이스 이미지 지정
RUN : 이미지를 지정하면서 실행할 명령 지정
ENTRYPOINT : 컨테이너 어플 지정 ( 컨테이너 시작 시 실행할 명령어 )
EXPOSE : 컨테이너의 포트 지정
ADD : 이미지 생성 시 파일 추가
CMD : 컨테이너 어플 지정 (컨테이너 시작 시 명령어 지정)
cd 폴더명 /
ls
docker build -t 이름(버전)
ex) docker build -t test:1.0 .
docker images
docker run
ex) docker run —entrypoint “/bin/bash” -it —name test -p 8080:8080 test:1.0
exec -it test /bin/bash
ls
cd build
cd libs
jar 실행
만약 Dockerfile에 build까지만 작성했다면 exec 명령어 다음에 위의 jar 파일을 실행하는 명령어를 입력해 줘야 한다.
서버까지 자동으로 띄우기
exit
docker ps
docker stop
docker rm 파일이름(=test)
docker ps
vi Dockerfile
docker build -t 파일이름
ex) docker build -t test .
docker run —name test -p 8080:8080 test
Dokcerfile이 해당 컨테이너의 실행 순서를 자동으로 동작하게 하기위함이었다면,
docker-compose는 이런 컨테이너 여러개를 자동으로 관리하기 위한 기능이다.
전체적인 순서
docker -compose -version
apt install docker-compose
docker-compose -version
vi docker-compose.yml
version : 'X'
services:
build: .
expose:
- 8080
docker-compose build
docker-compose up -d
docker-compose down