AWS 무료 서비스 가입과 서버(EC2) 만들기
이해하기 쉽고, 장황하지 않은 자료를 기반으로 강의를 진행합니다.
잔재미코딩 소식 공유
좀더 제약없이, IT 컨텐츠를 공유하고자, 자체 온라인 강의 사이트와 유투브 채널을
오픈하였습니다
응원해주시면, 곧 좋은 컨텐츠를 만들어서 공유하겠습니다
응원해주시면, 곧 좋은 컨텐츠를 만들어서 공유하겠습니다
● 잔재미코딩 유투브 오픈
[구독해보기]
2. AWS 무료 서비스(Free Tier) 가입과 서버(EC2) 만들기¶
https://aws.amazon.com/ -> My Account -> AWS Management Console -> Region (Seoul)
EC2 -> Launch Instance -> Ubuntu Server 16.04 ->t2.micro -> pem파일 다운로드 (로컬PC에 ~/.ssh/에 저장)
Elastic IP
- Go Elastic IP -> Allocate New Address
- Action -> Associate Address -> Select Instance Private IP: Private IP Address는 설정된 그대로! 172.x.x.x 로 설정된 클라우드 내부 IP를 52.x.x.x 공개 IP로 연결하겠다는 것
요금불안: http://gun0912.tistory.com/45 , https://aws.amazon.com/ko/free/
2.1. EC2에 접속하는 방법¶
서버 접속 방법
osx
- chmod 400 [pem_file]
- ssh -i path/[pemfile] ubuntu@[aws_server_public_ip]
windows
- 윈도우즈에서 접속하기 링크(http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/putty.html)
- putty(ssh client), puttygen download (https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html)
서버 터미널 접속 방법
osx
- chmod 400 [pem_file]
- ssh -i path/[pemfile] ubuntu@[aws_server_public_ip]
windows
- 윈도우즈에서 접속하기 링크(https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/putty.html)
- putty(ssh client), puttygen download (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html)
- 서버 FTP 접속 방법
- FileZilla FTP 프로그램 사용
* EC2에 접속한 후, 서버를 다루기 위해서는 리눅스 운영체제를 다룰줄 알아야 합니다.
- 이 부분은 별도 컨텐츠로 설명하오니, 리눅스 운영체제를 모를 경우에는 다음 웹서버 설치 전, 별도 컨텐츠로 리눅스를 익힌 후에 설정하는 것을 권장합니다.
2.2. EC2 서버에 웹서버 설치¶
- sudo apt-get update -y
- sudo apt-get install apache2
- sudo a2enmod rewrite
- sudo service apache2 restart
- sudo apt-get install mysql-server mysql-client mysql-common
- sudo add-apt-repository ppa:ondrej/php
- sudo apt-get update
- sudo apt-get install php7.1 php7.1-common
- sudo apt-get install php7.1-mysql php7.1-curl php7.1-xml php7.1-zip php7.1-gd php7.1-mbstring php7.1-mcrypt
- sudo sh -c 'echo "<?php phpinfo(); ?>" > /var/www/html/info.php'
http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/install-LAMP.html
- sudo service apache2 restart
- 현재 아파치 실행 상태 확인 명령: sudo service apache2 status
2.4. FTP 접속 및 웹페이지 업로드¶
- Fizilla 접속 설정 참고: https://babamba-playground.tistory.com/27
- FTP 접속 - web 디렉토리 만들기 - upload
- SSH 접속
- sudo cp -rf * /var/www/html/
본 자료와 같이 IT 기술을 잘 정리하여, 온라인 강의로 제공하고 있습니다
체계적으로 전문가 레벨까지 익힐 수 있도록 온라인 강의 로드맵을 제공합니다
2.5. html 파일에서도 PHP 가 동작하도록 설정하기¶
- x-httpd-php 를 확장자가 html 인 경우에도 지원토록 만들어야 함
- 해당 파일은 /etc/apache2/mods-available/php7.1.conf 에 있음
- 필요시 다음과 같이 파일 내의 문자열을 /etc/apache2 폴더에서 실행하여, 해당 설정이 들어 있는 파일을 찾을 수 있음
cd /etc/apache2
find . -type f -print | xargs grep -i "x-httpd-php" /dev/null
- 다음과 같이 코드 추가
<FilesMatch ".+\.ph(ar|p|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch ".+\.html$">
SetHandler application/x-httpd-php
</FilesMatch>
2.6. FileZilla(SFTP 이용) 이외에 SSH 프로토콜(22번 포트)을 활용해서 서버로 파일 복사 또다른 방법 (네트워크 복사)¶
- OSX
- scp 명령어 이용
- scp -i [pem] [file_to_be_copied] ubuntu@[server_ip]:[path]
- e.g) scp -i Downloads/dss_server.pem Desktop/dss/week6/primer-dataset.json ubuntu@ec2-54-191-110-146.us-west-2.compute.amazonaws.com:/home/ubuntu
- Widnows
- winscp 이용 (http://winscp.net/eng/download.php)
- ppk 파일 설정 (http://jinpyolab.tistory.com/75)
- GUI를 이용하여 파일 복사