2021년 9월 17일에 작성된 문서 3번 입니다.
docker 배운 내용을 정리했습니다.
httpd 는
/usr/local/apache2/htdocs/
경로에 웹 서버와 관련된 파일들이 저장되어 있다면, 해당 파일을 기반으로 웹 서버가 실행되도록 합니다.
1. codestates/pacman-canvas
레포지토리 클론.
git clone https://github.com/codestates/pacman-canvas
//pacman-canvas 레포지토리를 클론
2. docker container run
로 httpd 실행.
docker container run --name 컨테이너_이름 -p 818:80 httpd
// httpd를 실행
// -p : 로컬호스트의 포트와 컨테이너의 포트를 연결
// 818포트가 로컬호스트의 포트
// 80번은 컨테이너의 포트
3. 127.0.0.1:818
, localhost:818
로 웹 서버가 작동하고 있는지 확인
127.0.0.1
과 localhost
를 이용하면 로컬 컴퓨터의 IP 주소로 redirecting
할 수 있다. localhost
로 접속이 안 되고 127.0.0.1
만 접속 가능!4. 새로운 터미널을 열어 docker container cp
입력해 로컬호스트에 있는 파일을 컨테이너에 전달.
docker container cp
: 앞 경로의 파일을 뒤 경로에 복사. docker container cp ./
컨테이너_이름:/usr/local/apache2/htdocs/
//현재 폴더의 파일을 뒤 경로에 복사
5. 127.0.0.1:818
혹은 localhost:818
에 접속해서 게임 서버가 구동되는지 확인
1. docker container commit
이용
docker container commit 컨테이너_이름 my_pacman:1.0
//구동한 Docker Container를 commit
2. 생성된 이미지를 900 포트에서 웹 서버로 구동
docker run --name my_web2 -p 900:80 my_pacman:1.0
//900 포트에서 웹 서버로 이미지를 구동
3.127.0.0.1:900
혹은 localhost:900
을 통해 웹 서버가 작동하고 있는지 확인.
build
하는 방법. //현재 경로에 있는 파일을 생성할 이미지 경로에
//복사하는 명령의 Dockerfile 소스 코드
FROM httpd:2.4
// 베이스 이미지를 httpd:2.4 로 사용합니다.
COPY ./ /usr/local/apache2/htdocs/
// # 호스트의 현재 경로에 있는 파일을 생성할 이미지를
// /usr/local/apache2/htdocs/ 에 복사합니다.
docker build
: Dockerfile로 도커 이미지 파일을 생성. // --tag 는 name:tag 형식으로 이미지를 생성할 수 있다.
// 지정한 경로에 있는 Dockerfile을 찾아서 빌드
docker build --tag my_pacman:2.0 .
// "."을 명령어에 꼭 포함!
//docker build는 Dockerfile로 도커 이미지 파일을 생성
docker run --name my_web3 -p 901:80 my_pacman:2.0
//901 포트에서 웹 서버로 이미지를 구동
127.0.0.1:901
혹은 localhost:901
을 통해 웹 서버가 작동하고 있는지 확인.
Written with StackEdit.