docker 강의 / 기본 명령어
-
노트
-
도커 기본 명령어
docker -v // 도커 다운로드하고 이렇게 하면 확인가능
git clone https://gitlab.com/yalco/practice-docker.git // git clone
docker run -it node // 노드가 깔려서 js를 사용할 수 있음.
// mage가 있으면 container를 몇개든 만들 수 있음.
// -it 명령어는 해당 컨테이너를 만들어서 cli를 사용하겠다는 뜻
docker images // 다운받은 image의 목록을 확인
docker ps // 실행중인 컨테이너를 확인할 수 있음
docker ps -a // 전체 컨테이너 목록을 확인
docker exec -it [NAMES] bash // 해당 컨테이너에서 bash shell 실행하기
- project 내부
frontend/Dockerfile
Dockerfile // 공식 이미지를 튜닝하는 것 (파일)
RUN // 이미지를 생성하는 과정에서 실행할 명령어
WORKDIR // CMD 명령어를 실행할 위치 설정하는 명령어
CMD // 컨테이너 실행시 실행되는 명령어
- 프론트 띄워보기
//cli에서 /frontend 위치에 들어와서
docker build -t frontend-img . // image 생성하기(맨뒤에 .은 Dockerfile 상대경로임)
docker images // frontend-img 이미지 확인가능
docker run --name frontend-con -v $(pwd):/home/node/app -p 8080:8080 frontend-img // 컨테이너 실행
// -v 명령어는 볼륨의 약자. 컨테이너와 특정 폴더를 공유
http://localhost:8080/ // 에 접속하면 화면을 볼 수 있음
// ctrl + c 로 종료 후 컨테이너, 이미지 삭제
- DB 띄워보기
//mysql:5.7 이미지를 개조할 예정
COPY // 해당 이미지 안에 특정 파일을 미리 넣어둠
// cli에서 /database 위치로 들어가서
docker build -t database-img . // image 생성
docker run --name database-con -it -p 3306:3306 database-img // 컨테이너 생성
// mysql workbench 로 연결할 수 있음
// 이렇게 하면 터미널 하나를 쓸 수 없음
// 컨테이너 중지, 삭제 하기
docker run --name database-con -it -p 3306:3306 -d database-img
// -d 옵션 데몬의 약자인데. 다른 곳에 가서 깔고 돌리라는 뜻
docker logs -f database-con // 로그 보고싶으면
프론트엔드 폴더, 데이터베이트 폴더, 백엔드 폴더 안에 각각의 Dockerfile이 있음.
각각 실행하면 네트워크가 분리되어 있어서 백엔드와 데이터베이스는 데이터를 주고받지 못함.
한 번의 띄우기 위해 '거시적'설계도인 docker-compose를 사용한다.
테스트를 위해 여태 테스트한 이미지와 컨테이너 삭제
- docker-compose.yml 살펴보기
// 프로젝트 내부에 해당 파일이 있음.
services:
database: // database가 dbhost가 됨.
docker-compose up // localhost:8000 들어가면 데이터 보임
docker-compost up -d // 터미널 안보고 돌아가게 할 수 있음.
Author And Source
이 문제에 관하여(docker 강의 / 기본 명령어), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@flobeeee/TIL-docker-강의저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)