클라우드/OpenShift
[OpenShift] 네트워크 포트 매핑
세브웁스
2023. 5. 30. 12:00
반응형
네트워크 포트 매핑
사용 이유 : Rootless 컨테이너에 사용할 수 있는 IP 주소가 없기 때문에 호스트 네트워크에서 rootless 컨테컨테이 액세스 하는 것이 어려움
따라서 컨테이너 서비스에 대한 외부 액세스를 허용하는 포트 전달 규칙 정의 필요
: podman run –p [IP] [host port] [container port]
아파치 생성
[user@host ~]$ podman run -d --name apache1 -p 8080:8080 \
> registry.redhat.io/rhel8/httpd-24
아파치 생성 (옵션주고 아파치 생성 시생략)
[user@host ~]$ podman run -d --name apache2 \
> -p 127.0.0.1:8081:8080 registry.redhat.io/rhel8/httpd-24
아파치 생성 (포트 미지정시 컨테이너의 임의 포트 할당)
[user@host ~]$ podman run -d --name apache3 -p 127.0.0.1::8080 \
> registry.redhat.io/rhel8/httpd-24
Podman에서 할당한 포트 확인
[user@host ~]$ podman port apache3
홈페이지 확인
[user@host ~]$ curl -s 127.0.0.1:35134 | egrep '</?title>'
-p 옵션을 사용하여 컨테이너 포트를 지정한 경우에만 사용 가능한 임의의 호스트 포트가 컨테이너 할당
[user@host ~]$ podman run -d --name apache4 \
> -p 8080 registry.redhat.io/rhel8/httpd-24
컨테이너의 포트 확인
[user@host ~]$ podman port apache4
[실습 4] 데이터베이스 로드
강의 실습 시작
[student@workstation ~]$ lab manage-networking start
레드헷 레지스트리 접속
[student@workstation ~]$ podman login registry.redhat.io
포트포워딩 및 변수 설정하여 mysql 실행
[student@workstation ~]$ podman run --name mysqldb-port \
> -d -v /home/student/local/mysql:/var/lib/mysql/data -p 13306:3306 \
> -e MYSQL_USER=user1 -e MYSQL_PASSWORD=mypa55 \
> -e MYSQL_DATABASE=items -e MYSQL_ROOT_PASSWORD=r00tpa55 \
> registry.redhat.io/rhel8/mysql-80:1
정상 실행 확인
[student@workstation ~]$ podman ps --format="{{.ID}} {{.Names}} {{.Ports}}"
dump파일을 통해 데이터 밀어 넣기
[student@workstation ~]$ mysql -uuser1 -h 127.0.0.1 -pmypa55 -P13306 \
> items < /home/student/DO180/labs/manage-networking/db.sql
아이템 테이블 내용 확인법 1
[student@workstation ~]$ podman exec -it mysqldb-port \
> mysql -uroot items -e "SELECT * FROM Item"
아이템 테이블 내용 확인법 2
[student@workstation ~]$ mysql -uuser1 -h 127.0.0.1 -pmypa55 -P13306 \
> items -e "SELECT * FROM Item"
아이템 테이블 내용 확인법 3
[student@workstation ~]$ podman exec -it mysqldb-port /bin/bash
bash-4.4$ mysql -uroot items -e "SELECT * FROM Item"
bash-4.4$ exit
강의 실습 종료
[student@workstation ~]$ lab manage-networking finish
반응형