ㅁ 개요
O 프로그램 소개
- 이번 내용은 chatGPT4o를 사용하여 리눅스 서버에 웹서비스를 AI챗봇의 도움을 받아 빠르게 설치하는 방법에 대해 알아 보겠습니다.
O 참고사이트
본 포스팅은 아래 사이트를 참고하였으며, 초보 사용자분들께서 좀 더 쉽게 따라할 수 있도록 상세히 작성하였습니다. 자세한 내용은 아래 사이트를 참고 바랍니다.
https://www.youtube.com/watch?v=vXlglMK-vQY
O 사전 준비 사항
본 포스팅을 따라하기 위해서는 아래 2가지 사항이 필요합니다.
-vultr클라우드 (우분투 24.04) 또는 로컬 리눅스(우분투 24.04)
>본 테스트 시 사용한 클라우드 비용 : 0.15달러
-chatGPT API key(secret key)
>본 테스트 시 사용한 chatGPT API 요금 : 0.38달러
O 진행 순서
진행 순서는 크게 아래와 같습니다.
I.환경설정(vultr클라우드 우분투 시스템 만들기)
-여기서는 저렴한 vultr 클라우드를 사용하여 리눅스 우분투 24.04를 설치하는 방법에 대하여 설명합니다.
II.chatGPT4o를 사용하여 웹서비스 설치하기
-chatGPT4o를 사용하여 질의/응답으로 웹서비스를 설치하는 방법과 오류발생 시 해결하는 방법 등을 살펴보겠습니다.
I. 환경 설정
여기서는 vultr 클라우드를 이용하여 우분투 24.04를 설치하는 과정에 대하여 간략히 설명 드리겠습니다.
1. 아래 사이트 접속 후 아래 그림과 같이 Deploy > "Deploy New Server"를 클릭합니다.
https://vultr.com
2.보다 가격이 저렴한 "Cloud Compute - Shared CPU"를 선택합니다.
3.속도가 빠른 "Sillycon Valley"를 선택합니다.(사실 아무곳이나 선택해도 무방합니다.)
4.우분투 24.04를 선택합니다.
5. 저는 인텔cpu의 저장공간 60GB를 선택하였습니다.(아무거나 선택해도 무방합니다.)
6. 테스트로 할 것이므로 백업은 필요 없어 체크를 해제해 줍니다.
7. 아래와 같이 disable 해줍니다.(가격이 더 저렴해 집니다.)
8. 우리는 테스트 목적이므로 별도 ssh key를 설정하지 않으며, 호스트네임을 넣고, "Deploy Now"를 클릭합니다.
(18달러짜리를 사용하시면 충분합니다. => 실제 비용은 0.15달러 정도 사용됩니다.)
II. chatGPT4o를 사용하여 웹서비스 설치하기
여기서는 chatGPT4o를 사용하여 질의/응답으로 웹서비스를 설치하는 방법과 오류발생 시 해결하는 방법 등을 살펴보겠습니다.
1. 리눅스의 패키지를 업데이트 해줍니다.
>sudo apt update && sudo apt upgrade -y
2. 노드js의 스크립트를 다운로드합니다.
>curl -fsSL https://deb.nodesource.com/setup_21.x | sudo -E bash -
3. 다운로드한 nodejs를 설치합니다.
>apt-get install nodejs -y
4.chatGPT4o를 사용하기 위해서 aiexe를 설치합니다.
>sudo npm install aiexe -g
5.aiexe를 실행해 봅니다.
아래와 같이 에러가 발생하였으며, 확인결과 가상환경 관련된 에러입니다.
아래 명령으로 가상환경을 설치 합니다.
>sudo apt install python3.12-venv
6. 다시 aiexe를 실행합니다. 여기서는 aiexe가 루트 권한이 필요할 수 있으므로 sudo를 사용하여 실행해 줍니다.
chatGPT의 API 사용을 위해서는 api key가 필요합니다. 아래와 같이 키를 넣어주고 엔터를 입력합니다.
그리고나서 gpt-4o를 선택 후 엔터를 입력합니다.
7. 아래와 같이 요청을 기다리는데 "이 시스템 종류 확인"으로 질문을 던졌습니다.
챗지피티옴니가 파이썬 코드로 대답하고 있습니다.
8.아래와 같이 바로 엔터만 해주면 파이썬 코드의 실행 결과가 즉시 나옵니다.
여기서는 파이썬 코드의 실행 결과가 "Linux"로 나왔습니다.
9. 이제 웹서버에서 보여줄 코드를 실행하기 위해서 PHP를 설치해 달라고 챗지피티옴니에게 요청하였습니다.
아래와 같이 또 파이썬 코드를 작성해 주고 있습니다.
10. 엔터를 눌러 바로 실행(1- Execute Code) 하였습니다.
그런데 코드에러가 발생하였습니다.
11. 아래와 같이 "1-Create of a revised Code"를 눌러 수정한 코드를 만들어 달라고 요청합니다.
12. 코드를 실행한 결과 이번에는 에러없이 잘 실행되는 것을 볼 수 있습니다.
13. PHP가 잘 설치 되었습니다.
14. 이번에는 웹서버인 NGINX를 설치하고, PHP에서 제공하는 기본 페이지인 phpinfo()를 보여줄 수 있도록 웹서버까지 구동해 달라고 요청하였습니다.
그런데 에러가 발생하였습니다.
아래와 같이 색상이 없는 경우 코드 자체 오류가 있는 것으로, 이런 경우에는 챗지피티옴니에게 코드의 오류를 수정해 달라고 해야 합니다.(색상이 안나오는 경우 계속 코드 수정요청을 해야함)
15. 아래와 같이 코드 수정 요청을 하였습니다.
그랬더니 아래와 같이 수정된 코드에 색상이 나타났습니다.
16. 코드를 다시 실행해 봅니다.(엔터 입력)
17. 잘 실행되다가 마지막 부분에서 에러가 발생하였습니다.
확인해 보니 웹서비스 포트 80을 이미 다른곳에서 사용 중으로 에러가 발생한 것이었습니다.
18. 아래와 같이 다시요청 합니다.(포트를 8080을 사용하여 열어줘)
19. 아래와 같이 에러 없이 잘 동작하고 있습니다.
PHP 설치 : OK
웹서버(NGINX) 설치 : OK
웹서비스 구동 : OK
20. 이제 아래와 같이 웹 서비스에 접속해 봅니다.
그런데 이상하게 에러가 발생하고 있습니다.
외부에서 접속시 접속이 안되는 경우 90%이상은 방화벽과 관련된 오류라고 보시면 됩니다.
다만, 우리는 우분투 설치시 방화벽 설정을 하지 않았습니다.
21. 문제 해결을 위해 아래와 같이 명령어를 입력해 봅니다.
>netstat -anp|grep LIST : 시스템에 올라와 있는 서비스(포트) 확인 명령
우리가 올린 웹서비스인 8080포트가 잘 올라와 있는 것을 볼 수 있습니다. 원인을 파악하기 어렵습니다.
22. 구글링 경과 vultr에서 생성한 리눅스의 경우 클라우드 방화벽 외에 자체 OS방화벽이 또 있다는 것을 알게되었으며,
아래와 같이 방화벽을 오픈해 줘야 합니다.
>sudo ufw allow 8080/tcp
**참고 : 위 오픈 룰을 닫을때
> sudo ufw deny 8080/tcp
23. 다시 브라우저에서 접속 시도 결과 잘 뜹니다.
24. 이번 테스트에서 사용한 챗지피티옴니 쿼리 비용은 대략 0.38달러 정도 나왔습니다.
25.그리고 vultr 클라우드 사용 비용은 0.15 달러가 나왔네요.
결국 이번 테스트로 사용한 총 비용은 대략 0.38 + 0.15 = 0.53달러(720원) 정도 됩니다.
26.참고로 클라우드의 경우 아래와 같이 "Server Destroy"를 해주어야 추가 비용이 청구되지 않으니 반드시 참고하여 주시기 바랍니다.
오늘은 여기까지이며, 댓글과 하트는 제가 이글을 지속할 수 있게 해주는 힘이 됩니다.
감사합니다.