DevOps/Docker
도커 명령어와 컴포즈
moo-on
2021. 12. 29. 11:40
About Docker Command and Compose.
ps 명령어
docker ps # 현재 실행 중인 컨테이너
docker ps -a # 중지된 컨테이너까지 전부
stop 명령어
docker stop [OPTIONS] CONTAINER [CONTAINER...] # 실행중 컨테이너 중지, 복수 개 가능
rm 명령어
docker rm [OPTIONS] CONTAINER [CONTAINER..] # 종료된 컨테이너까지 제거
logs 명령어
docker logs [OPTIONS] CONTAINER
# 컨테이너 정상 동작하는지 확인을 위해 로그를 확인
# -f 로그생성 대기
#
images 명령어
docker images [OPTIONS] [REPOSITORY[:TAG]] # 도커가 다운로드한 이미지 목록을 본다.
pull 명령어
docker pull [OPTIONS] NAME[:TAG|@DIGEST] # 이미지 다운로드 명령어
rmi 명령어
image 삭제 명령어
network create 명령어
docker network create [OPTIONS] NETWORK
docker network connect app-network mysql
# mysql wordpress 연결 시 임의의 inner 호스팅이 아닌, 네트워크를 통해 관리하기 쉽다.
--network=app-network
volume mount(-v) 명령어
docker stop mysql
docker rm mysql
docker run -d -p 3306:3306 \\
-e MYSQL_ALLOW_EMPTY_PASSWORD=true \\
--network=app-network \\
--name mysql \\
-v /my/own/datadir:/var/lib/mysql \\
mysql:5.7
# 연결된 DB를 삭제하고 다시 연결하면 기존에 DB는 사라진다. 기존 데이터를 저장하기 위한 명령어
compose 명령어
docker-compose 생략
docker-compose up # docker-compose.yml파일을 읽어서 한번에 실행한다.
start # 멈춘 컨테이너 재개, 전체 혹은 특정
restart # 컨테이너 재시작, 전체 혹은 특정
stop # 컨테이너 멈춤, 전체 혹은 특정
down # 컨테이너 종료 후 삭제
logs # 컨테이너의 로그 -f옵션
ps # 컨테이너 목록
exec # 실행중인 컨테이너에서 명령어 실행
build # 빌드로 선언된 컨테이너만 빌드 되거나, 특정 컨테이너를 선택
docker-compose.yml 구성
version: yml파일의 버전
sevices:
name: 컨테이너의 이름 정의
image(build): 사용할 이미지의 이름과 태그, 생략시 latest
volumes: 마운트할 디렉터리들
restart: 재시작 정책
environment: 환경변수들
ports: 컨테이너와 연결할 포트들