-기본 이미지 : centos7 ⇒ webimage(이미지 명) ⇒ myweb(컨테이너 명)
1.베이스 이미지 다운로드 ( 도커파일 또는 일반 다운로드 )
2.컨테이너 실행 하면서 진입
3.httpd, php 설치
4.설치관련 파일 삭제 후 빠져 나오기
5.index.html 파일 생성 ( 내용은 자유 )


7.index.html 과 info.php 파일을 묶음 ( 압축이 아님 ) 파일명은 scr.tar ( 소스란 의미 )
8.scr.tar 파일을 컨테이너의 /var/www/html 로 복사
9.컨테이너 가동
10.컨테이너로 진입 후 쉘 실행 ⇒ /usr/sbin/httpd -D FOREGROUND 동작 확인되면
11.exit
12.도커 파일 수정(내용 추가)

13.이미지 빌드시키기 (캐시메모리 사용안하는 방법으로 )
14.기존 컨테이너 삭제
15.네트워크 추가 : phpnet
16.컨테이너 생성(이름: myphp )하면서 포트(80:80) 지정과 볼륨(/var/log/httpd) 지정 네트워크도 지정 ( phpnet ⇒ phpimage )

17.웹서버에 자체 접속 해보기 ( 파이어 폭스 )
18.Docker-1에서 접속 테스트
19.메인 도커에서 모든 파일 삭제
컨테이너 삭제 이미지 삭제, 네트워크 삭제, 볼륨 삭제(phpvol, logvol)
#docker rm -f myphp,
#docker rmi phpimage
#docker network rm phpnet
#docker volume phpvol
#docker volume logvol
#docker ps -a
#docker image ls

*도커 컴포즈?


컴포즈 플러그인 설치 및 확인
- docker 관련 설치 패키지 확인
- docker 관련 설치 패키지 확인
- docker compose 버전 확인
-도커 컴포즈 독립형 설치
-docker-compos 에 실행권한 부여
-파일 정보 추가 ⇒ ELF 64-bit (리눅스) / PE는 윈도우 운영체제를 나타냄.

컴포즈 독립형(test 용) 설치
- docker 컴포즈 독립형 설치 , curl -sSL ( 다운로드 관련 옵션 : -sSL )
- chmod +x /usr/local/bin/docker-compose ( 실행 권한 부여 )
- docker-compose 파일 식별
[root@www docker]# mkdir compose && cd compose
-소스코드 다운로드
-도커 컴포즈 실행
-실행 확인
-접속 해보기
-컨테이너 정지
소스코드 다운로드 후 도커 컴포즈 실행
- mkdir compose && cd compose ( 파일 생성 후 진입 )
- git clone https://github.com/asashiho/dockertext2 ( docker sample 다운 )
- cd chap07 ( 챕터 07로 이동 )
- docker-compose up [ 백그라운드 실행은 -d ]
- #docker-compose ps (실행 확인)
- http://localhost (접속)
- #docker-compose stop / down ( 컨테이너 정지 / 삭제 )
- 리소스 제거 ( 볼륨 )

-야물파일 특징
*계층구조, 들여쓰기만 잘 맞춰주면됨 ( Tab 이 아닌 스페이스바 사용 )

-파일명 4가지 형태

-alias 설정: .bashrc 파일 ⇒ 맨 아래 줄에 추가

vi 설정 ( 입력하기 편하게 )
- vi ~/.vimrc
- vi 입력 설정
alias 설정
- vi $HOME/.bashrc
- alias 설정

-컨테이너 동작
-동작 확인 과 볼륨 및 네트워크 확인

-생성한 컨테이너 볼륨 삭제
[root@www nginx]# docker-compose down --volume && rm -rf /some
nginx 기술문서
yaml 파일 작성
- mkdir nginx && cd nginx
- vi docker-compose.yml
- mkdir -p /some/content && echo "Nnginx TEST" > /some/content/index.html
- cat을 통해 내용 확인
- yaml 파일 작성 (이미지)
도커 컴포즈 실행
- 도커 컴포즈 실행 ( 네트워크와 컨테이너 생성 )
- 컨테이너 상태 확인
- 네트워크 생성 확인
생성한 컴포즈 삭제
- 컨테이너 삭제 ( 볼륨도 삭제 , --volume )

-동작 / 확인 / 네트워크 확인
-중지 / 확인 / 네트워크 확인
yaml 파일 수정
- 포트 번호 추가 ( ports )
- docker-compose up -d
- 컨테이너 작동 확인 (curl)
- 컨테이너 상태 확인
- docker-compose down -v ( 컨테이너 삭제 )
-https://hub.docker.com/_/mongo (관련 문서)
-도커 파일 수정

-동작 시키기
-접속 테스트
-docker-compose down -v
몽고 프레스 접속 및 확인 ( 문서 참고 )
몽고 프레스 보안
- 몽고 프레스 컨테이너안 config 파일 ( config.default.js )
- 사이트 접속할 때 인증 설정 ( ME_CONFIG_BASICAUTH_USERNAME )

동작 시키고 접속 해보기

접속 해보기

터미널 연결이 끊기면서 다시 연결이 안되면 로컬PC 재부팅 후 연결…
postgresQL 접속 및 확인
- yaml 파일 작성 (postgres 항상 재시작 및 비밀번호 설정)
- 데이터베이스 형식 선택 및 이름 postgres 입력하고 비밀번호 입력하고 접속

-docker compose build - 컨테이너 빌드 , 리빌드시 사용

#docker-compose up
#docker-compose ps -a
#docker ps -a
#docker network ls
#docker-compose down -v
도커 컴포즈로 여러 대 한번에 동작시키기
- nginx와 httpd, redis 이미지 불러오는 컨테이너 3대 실행
- docker-compose ps -a
- docker ps -a
- 네트워크 확인