nginx 이미지
명령어 1단계
- docker run nginx => nginx 이미지가 있나 확인하고 없으면 다운로드한다
- 문제점
- Ctrl + C를 하면 nginx가 꺼진다.
- 외부에서 접근할 방법이 없다.
- 원래 도커 컨테이너는 독립적인 공간에서 실행되기 때문에 접근이 안되는게 정상이다.
명령어 2단계
- docker run -d nginx
- 문제점
- 외부에서 접근할 방법이 없다.
명령어 3단계
- docker run -d -p 8031:80 nginx
- -d (detach) => 백그라운드로 돌리겠다.
- -p 8031:80 => 바깥쪽에 있는 8031을 안쪽에 80과 연결하겠다. (포트포워딩)
- 문제점
- 없음
- 현재 호스트 => VB(Virtual Box) => CentOS => Docker => 컨테이너에 nginx가 실행되고 있다.
- 바깥에 192.168.21.5에서는 CentOS까지만 접근할 수 있으므로 바깥쪽 8031과 CentOS안의 80포트를 뚫어준다.
docker run -d -p 8031:80 nginx 를 name이 랜덤으로 잡히기 때문에 --name옵션으로 이름을 부여
docker run -d -p 8031:80 --name=nginx_1
docker kill nginx_1 로 간단하게 끌 수 있음 하지만 docker ps -a 로 확인하면 흔적이 남는다. --rm 옵션을 주면 kill되었을때 자동삭제까지 부여할 수 있다.
실행 => docker run -d -p 8031:80 --name=nginx_1 --rm nginx
종료 => docker stop nginx_1
exec로 단순명령을 컨테이너에 전달할 수 있다.
docker exec nginx_1 ls => nginx_1 위치에서 ls를 실행
상호작용이 필요한 경우 -it 옵션이 필요함
ls 같은 경우 단순하지만 sudo yum install mariadb의 경우 복잡하고 y 도 입력 해줘야한다. -it를 추가해주자
docker exec -it nginx_1 apt-get install vim (데비안 계열은 yum이 아닌 apt-get)
- docker exec nginx_1 apt-get update 위 명령어 실행전에 수행
- cat /etc/issue 로 리눅스 배포판을 확인 할 수 있음
docker exec -it ID bash 를 입력하면 컨테이너 내부에 진입할 수 있다.
지금 현재 리눅스안에 리눅스에 존재 , 가상환경안에 가상환경, CentOS => Docker => 컨테이너
vim 설치 => apt-get update, apt-get install vim -y
cd /usr/share/nginx/html로 접근하여 vim index.html => index.html을 수정해주고 바뀐 내용이 적상적으로 출력되는지 확인
'IT' 카테고리의 다른 글
리눅스에서 도커(Docker) 활용하기 4(nginx 이미지 생성 및 실행) (0) | 2022.09.18 |
---|---|
리눅스에서 도커(Docker) 활용하기 3(node.js설치 및 이미지 생성, 실행) (0) | 2022.09.18 |
리눅스에서 도커(Docker) 활용하기 1(설치, 기본 명령어) (0) | 2022.09.17 |
Linux(centOS9) 설정 7(proxy) (0) | 2022.09.16 |
Linux(centOS9) 설정 6(톰캣 설치 및 실행, 실습) (0) | 2022.09.16 |