-
3. 기초명령어 2편Learn/Docker 2021. 4. 26. 00:36
[ 기초명령어 2 ]
실행되고 있는 프로세스 살펴보기. (중단된것도 보려면 -a)
docker ps
실행되고 있는 컨테이저 중지시키려면
docker stop ${CONTAINER_ID}
로그보기. (대기하면서 추가로그 받으려면 -f)
docker logs ${CONTAINER_ID}
다운로드한 이미지 보기
docker images
이미지 가져오기 (run하면 자동으로 가져오긴함)
docker pull ubuntu:18.04
이미지 삭제. 단, 실행중인 이미지는 못지움.
docker rmi ${IMAGE_ID}
컨테이너끼리 이름으로 통신할 수 있는 가상 네트워크 만들기
docker network create ${NETWORK_NAME}
특정 컨테이너에 네트워크 추가하기
docker network connect ${NETWORK_NAME} ${CONTAINER_NAME}
위와 같은 방식으로 가령 wordpress와 mysql을 연결했다면 아래같이 쓸 수 있음.
(DB 연결이 이렇게 간단하다니!!)
docker run -d -p 8080:80 \ --network=app-network \ -e WORDPRESS_DB_HOST=mysql \ -e WORDPRESS_DB_NAME=wp \ -e WORDPRESS_DB_USER=wp \ -e WORDPRESS_DB_PASSWORD=wp \ wordpress
[ Volume ]
이전에 작성했듯 컨테이너가 종료되면 데이터는 다 날아간다.
DB는 데이터가 날아가면 안되니까 이 떄 volume 명령어를 사용한다.
가령 mysql을 띄울때 아래와 같이 하면 저장할 수 있다.
docker run -d -p 3306:3306 \ -e MY_SQL_ALLOW_EMPTY_PASSWORD=true \ --network=app-network \ --name mysql \ -v /my/own/datadir:/var/lib/mysql \ mysql:5.7
/my/own/datadir에는 컨테이너 밖의 실제 저장할/저장한 공간 위치
/var/lib/mysql은 컨테이너 안의 공간에서 실제 연동해서 가져와야할 곳의 위치이다. (프로그램마다 다름)
두 디렉토리를 연동해준다고 생각하면 된다.
'Learn > Docker' 카테고리의 다른 글
5. 이미지 만들고 배포하기 (0) 2021.04.29 4. Compose (0) 2021.04.26 2. 설치, 기초명령어 1편 (0) 2021.04.25 1. 개요 - 도커와 쿠버네티스 (0) 2021.04.20