도커

신상우·2023년 12월 19일

쿠버네티스

목록 보기
8/26

docker --version
: 버전 확인

docker ps
: 실행중인 컨테이너 목록 확인

docker ps -a
: 전체 컨테이너 목록 확인

docker container ls -a
: 전체 컨테이너 목록 확인

docker start 컨테이너ID
: 컨테이너 시작

docker attach 컨테이너ID
: 컨테이너 접속

docker stop 컨테이너ID
: 컨테이너 멈춤

docker run 컨테이너ID
: 컨테이너 생성 및 시작

docker run -it 컨테이너ID
: 컨테이너 생성 및 시작 및 접속

docker rm 컨테이너ID
: 컨테이너 삭제

docker exec -it 컨테이너ID /bin/bash, sh
: 실행되고 있던 컨테이너 접속

exit, ctrl+D
: 컨테이너 빠져나오기

레디스
docker run redis
docker exec -it 컨테이너ID redis-cli

-it 가없으면 들어갔다 나옴 (-i, -t 따로따로임)
-a 도 없으면 들어갔다 그냥 나오기떄문에 조회한걸 붙여줌

도커 이미지 만들기
docker build ./

이름 정해주기
docker build -t (나의도커아이디) / (저장소/프로젝트 이름) : 버전

실행예제
docker run -it shinsang97/hello:lastest

docker run -p 접속할포트:컨테이너안포트 이미지이름
ex) docker run -p 5000:8080 shinsang97/nodejs:test

Dockerfile

FROM node:10
COPY ./ ./ 모든 파일 복사
RUN npm install
CMD ["node", "server.js"]

위 문제점 파일이 막들어감 그래서 디렉터리 하나 만들어넣어야함

FROM node:10
WORKDIR /usr/src/app
COPY ./ ./
RUN npm install
CMD ["node", "server.js"]

$env:DOCKER_BUILDKIT=0
docker build -t shinsang97/test ./

하면 step으로 나옴

Volume

Copy는 바뀔떄마다 build 를 해야하지만 Volume을 쓰면 mapping(참조) 하기떄문에 사용해야함

맥에서

-v $(pwd):/usr/src/app

윈도우에서

-v %cd%:/usr/src/app

이런 식으로 다르게 $(pwd) => %cd% 이렇게 다르게 사용해주시면 됩니다

docker run -d -p 접속할포트:컨테이너안포트 -v WORKDIR경로/node_modules -v %cd%:WORKDIR경로 이미지 이름

ex)
docker run -d -p 5000:8080 -v /usr/src/app/node_modules -v "%CD%:/usr/src/app" shinsang97/test:latest

docker run -d -p 5000:8080 -v /usr/src/app/node_modules -v $(pwd):/usr/src/app shinsang97/test:latest

인데 window powershell의 경우
docker run -d -p 5000:8080 -v /usr/src/app/node_modules -v ${pwd}:/usr/src/app shinsang97/test

docker stop (container id ports) 후
다시 docker run -d -p 5000:8080 -v /usr/src/app/node_modules -v ${pwd}:/usr/src/app shinsang97/test

바뀜

Docker compose

Redis 비관계형데이터베이스(NoSql)이다.
도커사용시
const client = redis.createClient({
host: 'redis-server',
port: 6379,
});
일반 사용시
const client = redis.createClient({
host: 'https://redis-server.com',
port: 6379,
});

docker-compose up
docker-compose up -d --build 백그라운드 실행
docker-compose down 종료

profile
기록 남기기

0개의 댓글