목차
1. 컨테이너 이름 변경
2. Link
- Link 정리
- Link 사용
- Link 사용 시 별칭 부여
- Link 사용 시 IP 추적 확인
- Link 스크립트 작성
3. MYSQL
- 설치 방법
- 문제 풀이
컨테이너 이름 변경
- 이미지의 이름 변경은 tag
- 컨테이너의 이름 변경은 rename
Link
Link 정리
- 컨테이너간 통신시 IP로만 통신할 수도 있다
- Docker의 DHCP로부터 앞쪽 부터 순차적으로 할당받지만 그렇지 않은 경우도 생길 수 있다
- 이럴 때 Link 옵션을 사용
- add-hosts를 통해 /etc/hosts 파일에 넣는 것과 동일하다고 생각
- 실행중인 컨테이너에 ip와 매핑하여 /etc/hosts에 등록
Link 사용
- c2에서는 c1의 IP만 알지 c1은 뭔지 모르기 때문에 핑이 나가지 않는 것을 확인
Link 사용 시 별칭 부여
Link 사용 시 IP 추적 확인
- link 옵션을 사용하여 추가한 컨테이너들의 IP가 바뀌어도 계속 추적을 하지만
이름이 바뀌게 되면 추적이 되지 않는 것을 확인
- c2 컨테이너를 삭제 후, 새로운 컨테이너를 생성하여 c2의 자원을 받고 다시 c2를 생성하여
다른 자원을 받게하였으나 오류가 발생하여 다른 방식으로 테스트 진행
- 자원을 빼기 가장 좋은 방법은 stop이다
- c1, c2를 다시 생성하여 c1을 stop 후, c3를 생성하여 c1의 IP자원을 바꾸어 진행
Link 스크립트 작성
- c2 컨테이너 생성 시 c1을 link 옵션 사용하여 추가
- c1 컨테이너의 IP 자원을 다시 받아도 IP 추적하여 통신이 되는지 확인하는 스크립트 작성
- ping test 시 w로 deadline을 주어도 되나 c로 count를 주어도 된다
MYSQL
설치 및 삭제 방법
- e 옵션을 통해 환경변수 설정
- mysql57 repository를 받아와 mysql-community-client 설치 진행
- rpm의 e 옵션을 사용하여 해당 패키지 삭제 진행
- 에러 없이 다시 리포지토리를 받아오는 것을 확인
문제풀이
- 컨테이너를 사용한 DB 문제풀이
- 전에 배웠던 DB 문제에서 컨테이너만 추가되었다고 생각
- docker search를 통해 이미지 확인 후 pull 진행
- DB서버의 위치에 맞게 IP수정
- insert1.php, table.php가 있는 위치의 IP로 설정해야 한다
- 상대방 PC에서도 접속하고 싶다면 VMware Port Forwarding 후, 192.168 ~ 로 바꾸면 된다
- UTF-8로 수정했는데 출력은 잘 나오는데 여긴 왜이러는지 모르겠네요..
- table1.php를 확인하여 필요한 정보들을 넣어 table 형성
- 접속하여 정보 입력 후 회원가입 진행