EC2를 이용하여, LAMP webserver를 만드려고 한다.
LAMP란 웹사이트나 서버 운영에 자주 사용되는 소프트웨어들의 이름을 합한 약자이며,
Linux, Apache, Mysql, PHP 등의 소프트웨어가 사용된다.
오늘은 이러한 프로그램들을 EC2의 가상머신에 설치하여 웹사이트와 mysql을 웹상에서 로그인하도록 해보려 한다.
1. LAMP를 이용하여 고정 웹사이트 호스팅
음 일단은 EC2에서 웹사이트를 돌아가도록 만들 거니까, EC2가 필요하다.
가상 머신 한대를 빌려오자.
이제 git bash를 이용하여 ec2에 접속한다.
위에서 보이는 대로 업데이트를 한번 한다.
sudo yum update -y
그러고 나서 일단은 web을 보여주기 위해서는 httpd를 깔아야 한다.
sudo yum install -y httpd
잘 설치되었는지 확인도 해보고
apache웹 서버를 시작한다.
system 부팅 때마다 웹 서버를 시작하도록 2번째 줄도 넣어준다.
sudo systemctl start httpd
sudo systemctl enable httpd
이제 우리가 지금 접속한 ec2에 할당된 퍼블릭 ip를 주소에 치면
아파치의 테스트 페이지가 나온다.
이제 우리가 올리고 싶은 html 파일을 올리러 가자.
html파일을 /var/www/html 폴더에 올리고, 할당받은 퍼블릭 ip의 뒤에 파일명을 붙이면 웹에 보인다.
올리기에 앞서 html 폴더는 지금 root가 권한을 가지고 있어 우리는 수정을 할 수 없다.(우리는 ec2-user)
그래서 권한부터 바꿔준다.
sudo chown ec2-user html
이제 html 파일 만들 수 있다.
수업 때 만든 간단한 html 코드를 넣고, 저장 후 퍼블릭 ip뒤에 /index.html을 붙이면
이렇게 웹 페이지가 호스팅 된다.
끝....
이렇게 정적인 웹 페이지를 배포하는 방법은 S3를 사용하는 방법도 있는데, 그건 다음 글에서 다뤄야겠다.
2. LAMP를 이용하여 웹에서 phpMyAdmin 사용하기
우리가 새롭게 설치해야 할 것은 Amazon Linux2용 LAMP MariaDB, PHP 패키지 최신 버전이다.
(아까 위에서 Apache webserver는 설치해서 생략한다.)
sudo amazon-linux-extras install -y lamp-mariadb10.2-php7.2 php7.2
sudo yum install -y mariadb-server
모두 잘 설치되었나 확인
sudo yum list installed httpd mariadb-server php-mysqlnd
이제 mariaDB의 서버 보안을 설정하자.
서버를 시작하고 root암호 설정을 한다.
sudo systemctl start mariadb
sudo mysql_secure_installation
밑에 나오는 질문들을 y를 한다.
이제 mysql을 사용할 준비는 끝났고, 이것을 웹에서 볼 수 있게 만들어야 한다.
phpMyAdmin을 사용한다.
종속 항목을 설치하고, apache와 php-fpm을 다시 시작한다.
sudo yum install php-mbstring -y
sudo systemctl restart httpd
sudo systemctl restart php-fpm
이제 phpMyAdmin의 최신 버전을 설치해야 하는데, 경로는 위에서 html 파일을 호스팅 했던 /var/www/html에서 설치한다.
phpMyAdmin의 홈페이지에서 최신 버전의 링크를 받아온다.
나는 제일 위의 zip 파일을 가져올 것이다.
wget으로 가져와보자
wget https://files.phpmyadmin.net/phpMyAdmin/5.1.1/phpMyAdmin-5.1.1-all-languages.zip
이제 unzip으로 압출을 풀자, 나는 phpMyAdmin이라는 폴더를 만들어서 그 안에서 압축을 풀 것이다.
이제 phpMyAdmin에 파일들이 들어있고 퍼블릭 ip 뒤에 phpMyadmin/phpMyAdmin-5.1.1-all-languages를 붙여 phpmyadmin을 웹에서 실행해보자.
쨘
위에서 mysql을 설치하면서 설정해놓은 사용자명과 암호를 입력하면
이런 화면이 나온다.
Mysql workbench나 heidi sql 같은 느낌이다.
여기서 데이터베이스를 추가하여 테이블과 데이터를 넣을 수 있다....
LAMP 실습 끝~!
'섭섭의 공부 > Cloud Computing' 카테고리의 다른 글
[6주차] AWS - Load Balancing (0) | 2021.10.07 |
---|---|
[5주차] AWS - Hosting Static Website on S3 (0) | 2021.10.07 |
[5주차] AWS - Cloud Front, S3 (0) | 2021.10.07 |
[5주차] AWS -Virtual Private Cloud(VPC) (0) | 2021.10.07 |
[4주차] AWS - EC2 개념 및 생성하기, 접속하기 (0) | 2021.09.24 |