📌 도입
운영체제가 설치된 환경을 주인이라는 뜻에서 host
host에서 실행되는 각각의 분리된 환경을 container라고 하자.
각각의 컨테이너에는 운영체제 전체가 설치돼 있는 것이 아니고, 앱을 실행하는데 필요한 라이브러리와 실행 파일들만 포함돼 있다.
📌 image pull
- dockerhub에 들어가서 httpd 입력
▸ 도커 공식문서
- docker pull httpd
📌 실습
- docker run httpd
- docker ps
- docker run --name ws2 httpd
- 이름 주기
- docker ps -a를 하면 실행했던 모든 컨테이너가 뜨게 된다.
- docker start ws2
- 그런데 이렇게 하면 로그가 출력이 안된다.
- docker logs ws2
- 이렇게 하면 log가 출력되는데, 그냥 나가버린다.
- 실시간으로 출력하고 싶다면 docker logs -f ws2 하면 된다.
- 실행중인 컨테이너는 삭제가 안된다
- stop 하고 지우던가,
- docker rm --force [컨테이너 이름] 으로 지워야 한다.
- docker images
- 이미지 삭제
- docker rmi [이미지 이름]
📌 네트워크
- docker run --name ws4 -p 8081:80 httpd
📌 명령어 실행
- docker exec ws4 ls
- 한 번씩 명령어를 전달할 수 있다.
- docker exec -it ws4 /bin/sh
- -it + shell 을 주면 안에서 입력어를 입력해줄 수 있다.
- 나가려면 exit을 입력하자.
- bin-shell은 기능이 많이 부족하다.
- /bin/bash 를 사용하자.
- 환경에 따라 bash shell 이 없을 수도 있다.
- 이때는 bin shell을 사용하자.
▸ 공식문서
- docker exec -it ws4 /bin/bash
- 공식문서에 있는 index.html 위치 cd /usr/local/apache2/htdocs/ 로 이동
- nano 에디터가 없기 때문에
- apt update
- apt install nano
- 수정하고 저장하고 나오면 텍스트가 바껴있다.
📌 호스트와 컨테니어 파일 시스템 연결
- docker run -p 8888:80 -v /Users/ims/Desktop/codes/docker-practice:/usr/local/apache2/htdocs/ httpd
'devops > Docker 강좌📌인프런' 카테고리의 다른 글
Spring Boot - Docker 예제 (0) | 2022.03.22 |
---|---|
생활코딩 도커강좌 #4 - Docker compose (0) | 2022.03.08 |
생활코딩 도커강좌 #3 - 이미지 공유 (0) | 2022.02.28 |
생활코딩 도커 강좌 #2 -이미지 만들기 (0) | 2022.02.28 |
댓글