(수정중)
(1) Docker Script 작성
(2) Docker image 생성
- 문제
1. 인터넷 연결 확인
2. 스크립트 작성
- docker를 사용하기 위해 필요한 프로그램 yum으로 설치
- yum config manager로 docker repository 가져오기
- docker 실행 후 image(httpd, nginx, alpine, centos7) 다운
- 네트워크 생성(N1, N2)
- cat 명령어를 사용해 시작페이지(index.html, index1.html) 작성
- 네트워크에 맞춰 컨테이너 생성(N1-h1, N2-n1)
- index.html, index1.html을 각각의 컨테이너에 밀어넣기
- 로드밸런싱을 위해 haproxy 설치 후 설정파일 문자변환
- 시스템 시작 후 방화벽 열기
3. 스크립트 권한 변경
4. 스크립트 실행
5. 스크립트 실행 확인
- 새로고침 시 두개의 서버가 부하 분산을 통해 서비스 됨
<파일 일치 확인>
파일을 열어보지 않고 두 파일이 일치하는 파일인지 확인
- docker.sh 파일을 docker1.sh 파일로 복사
- docker1.sh 파일 내용 수정
- diff 명령어를 통해 파일의 다른 내용을 확인 가능
<docker 삭제 스크립트>
- 생성한 모든 컨테이너 삭제
- 생성한 모든 네트워크 삭제(N1, N2)
- 다운받은 이미지 삭제(httpd, nginx, alpine, centos7)
- index.html, index1.html 삭제
- 도커 패키지, yum-utils, haproxy 삭제
- haproxy 백업파일 삭제
- docker repository 삭제
- 방화벽 80번 포트 닫기
- Image와 Container는 엄연히 다른 것
- Image를 실행시킨 것이 Container
<commit>
- 현재 설정파일까지 다 저장하기 때문에 가장 편하고 좋은 방법
- commit 하면 컨테이너가 image로 만들어진다. save 해서 tar로 묶은 후 B에서 load 하고 실행하면 됨 > 가장 좋은 방법
* 실행중인 컨테이너가 있다면 삭제 후 진행
1. 컨테이너 생성
2. commit으로 이미지파일 생성
- commit 시 리포지토리:태그 없이 생성하면 이름없는 Dangle 이미지가 생성됨
3. commit으로 생성한 이미지 파일을 사용해 컨테이너 생성
- 9090번 포트로 접속 시 8080번 포트와 동일한 설정 확인 가능
<save & load>
[Docker] MySQL DB + wordpress 연동 (0) | 2022.06.04 |
---|---|
[Docker] Link | MySQL | MySQL + php + httpd 실습 (0) | 2022.06.04 |
[Docker] Docker & HAproxy | 팀별 실습 (0) | 2022.06.03 |
[Docker] Virtual Box (0) | 2022.06.02 |
[Docker] 이론 | 설치 & 실행 | Repository 생성 (0) | 2022.05.27 |