첫장에서 계획한 우리의 Web Server 구축 순서이다.
여기서 우리는 첫번째 과제를 진행해볼 것이다.
1. Docker이미지로 debian 환경 만들고 접속해보기
2. nginx 설치하고 로컬호스트에서 접속해보기(docker port 설정)
4. Nginx에 php실행시켜 띄워보기
5. mysql실행해보기(db를 하나 만들어보기)
6. phpmyadmin 접속할수 있게 설정해보기(설치 및 conf 설정)
7. wordpress 접속할수 있게 설정해보기(설치 및 conf 설정)
8. wordpress에 db적용시켜보기
9. 지금까지 해온걸 dockerfile로 자동화 시키기
0. 도커 이미지와 컨테이너 확인하기
터미널에 다음 세가지 명령어를 입력해보자
docker ps // 실행 중인 container
docker ps -a // 생성되어 있는 모든 container
docker image ls // 생성되어 있는 image
우리는 아무것도 만들지 않았기 때문에 리스트가 비어있을 것이다.
일단, Debian buster 이미지를 생성해보자! 우리가 생성한 이 이미지는 컨테이너를 실행할 때 데비안 버스터 환경으로 실행될 수 있도록 사용될 것이다.
1. 도커로 Debian:buster 이미지 생성하기
터미널에 다음과 같이 입력하여 debian buster의 이미지를 설치해보자.
docker pull debian:buster
설치가 완료 되었으면,
docker image ls
명령어를 통해 정상적으로 설치 되었는 지를 확인하자
다음과 같이 생성되면 성공이다.
2. Debian:buster 이미지로 Container 생성하기
방금 설치한 Debian:buster 이미지를 이용해서 Container를 생성해보자.
우리는 이 컨테이너를 통해서, Debian:buster 에서 작업하는 것과 같은 환경 속에서 작업할 수 있을 것이다.
즉, 우리는 Debian:buster 이미지를 통해 컨테이너를 실행 한 후, 이것 저것을 조작하여 우리의 서버를 구성한 후, 다시 그것에 대한 이미지를 새롭게 만들어서 어디서든지 이용할 수 있도록 할 것이다.
다음의 명령어를 터미널에 입력하자.
docker run --name "원하는 컨테이너 이름" -it -p 80:80 -p 443:443 debian:buster
1. run : 도커를 실행하는 명령어
2. -- name : 컨테이너의 이름을 설정
3. -it : 터미널의 표준입력과 키보드 이용을 위한 명령어
4. -p : 호스트와 컨테이너의 포트를 연결 (포워딩)
80:80 : http 연결
443:443 : https 연결
5. debian:buster : 컨테이너 생성에 이용할 이미지
컨테이너가 생성되면, 우리는 자동으로 컨테이너로 접속하게 된다.
컨테이너 안에서 exit 명령어, 혹은 터미널에서 docker stop "컨테이너 이름"으로 컨테이너를 종료하게 되어도,
우리는 언제든지 docker start "컨테이너 이름" 후 docker attach "컨테이너 이름"을 통해 컨테이너에 접속할 수 있다.
마찬가지로 명령어를 통해 container을 확인할 수 있다.
docker ps // 실행 중인 container
docker ps -a // 생성되어 있는 모든 container
참고
생성된 도커이미지와 컨테이너는 다음 명령어를 통해 삭제할 수 있다. (실행 중인 컨테이너는 삭제할 수 없으니, docker stop "이름" 명령어를 통해 중지하고 진행하자)
docker rm "컨테이너 이름" // 컨테이너 삭제
docker image rm "이미지 이름" // 이미지 삭제
다음 장에서는 생성한 container에 nignx를 설치하고, local host에서 접속해보는 작업을 할 것이다.
'네트워크, 서버 > Server' 카테고리의 다른 글
프로젝트4. Php 설치 후 실행해보기 (0) | 2020.08.29 |
---|---|
프로젝트3. SSL 인증서를 생성하고 Nginx 환경 설정하기 (0) | 2020.08.28 |
프로젝트2. Nginx 설치 후, local host에 접속하기 (0) | 2020.08.25 |
참고2. Docker(도커) 설치하기 (0) | 2020.08.25 |
참고1. 도커(Docker) 기본 개념 (0) | 2020.08.12 |
시작하며. [필독]웹 서버 구축을 해보자 (0) | 2020.08.12 |