Ec2 리눅스에서 오류가 나네요

혹시 아래 오류 내역 원인이나 조치방법 아시는 분 계시면 도움 부탁드리겠습니다…

[0] node:events:368
[0] throw er; // Unhandled ‘error’ event
[0] ^
[0]
[0] Error: Connection lost: The server closed the connection.
[0] at Socket. (/home/ec2-user/kas-bapp-luxurytracker/node_module
s/mysql2/lib/connection.js:91:31)
[0] at Socket.emit (node:events:390:28)
[0] at TCP. (node:net:687:12)
[0] Emitted ‘error’ event on Connection instance at:
[0] at Connection._notifyError (/home/ec2-user/kas-bapp-luxurytracker/node_m
odules/mysql2/lib/connection.js:221:12)
[0] at Socket. (/home/ec2-user/kas-bapp-luxurytracker/node_module
s/mysql2/lib/connection.js:97:12)
[0] at Socket.emit (node:events:390:28)
[0] at TCP. (node:net:687:12) {
[0] fatal: true,
[0] code: ‘PROTOCOL_CONNECTION_LOST’
[0] }

EC2 리눅스에 클레이튼 샘플앱 테스트 중인데 yarn dev 실행하면 이 에러 때문에 웹 실행이 안되네요 ㅠ

안녕하세요

해당 오류로 검색을 해보면 많은 정보가 나오는데

대부분 연결 후 busy하지 않아 연결이 자동으로 끊겼을때 더라구요

정확한 이슈를 파악하기 어려워 아래 내용을 알려주시면 찾아보도록 하겠습니다.

  • 데이터베이스를 어떻게 설정하셨나요? (RDS)
  • EC2 Instance의 보안그룹 정보도 알려주실수있나요?

답장 감사합니다!

우선 db는 ec2 내 mysql설치하였습니다. 그리고 클레이튼 샘플앱 git clone 하여 db접속정보 재설정후 yarn dev로 실행한 후 발생한 오류로그입니다.

인스턴스 보안그룹 설정은 첨부와 같습니다.

말씀주신 AWS RDS는 별도 진행한게 없습니다만 EC2 인스턴스에 NPM MYSQL로 설치만 해서 REACT 앱을 사용하는 구조가 아닌지요?

2022년 2월 18일 (금) 오전 11:02, Klaytn Developers Forum를 통한 deeean <klaytn@discoursemail.com>님이 작성:

안녕하세요

다음과같이 테스트해보니 정상적으로 작동하는것을 확인했습니다.

한번 확인해주실 수 있을까요?

Machine Image: Amazon Linux 2 AMI Kernel 5.10
Machine Spec: t2.micro

Shell History

sudo yum update -y
sudo yum install git docker gcc-c++ make -y
sudo service docker start
sudo usermod -aG docker ec2-user
exit
# 재접속

curl -sL https://rpm.nodesource.com/setup_14.x | sudo -E bash -
sudo yum install nodejs -y

mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
echo "export PATH=~/.npm-global/bin:\$PATH" >> ~/.bashrc
source ~/.bashrc

# install docker-compose
sudo pip3 install docker-compose

# install mysql
curl -O https://gist.githubusercontent.com/deeean/c380abceb5356b7ec076cd32a34d3a9b/raw/9e9c996972995ffab26eade9feb5d600431fde5a/docker-compose.yaml
docker-compose up -d .

sudo npm i -g yarn

git clone https://github.com/ground-x/kas-bapp-luxurytracker.git

cd kas-bapp-luxurytracker/

yarn install
yarn global add nodemon
yarn server
1 Like

감사합니다~ 이거 때문에 며칠을 거의 밤샜는데… 아무래도 관심만 많은 개발 비전공자라 어려웠는데 오늘 퇴근후 테스트해보겠습니다!

그전에 혹시 제가 본 샘플 실행시 yarn dev 명령어만 사용했는데 yarn server와의 차이점이 몬지 알 수 있을까요?

2022년 2월 18일 (금) 오후 12:16, Klaytn Developers Forum를 통한 deeean <klaytn@discoursemail.com>님이 작성:

안녕하세요

// package.json
// ***
  "scripts": {
    "client": "cd client && yarn start",
    "server": "nodemon server.js",
    "dev": "concurrently --kill-others-on-fail \"npm run server\" \"yarn client\""
  }
// ***

yarn dev와 yarn server의 차이점은 위에 바로 나와있습니다.

1 Like

저 혹시

install mysql curl -O https://gist.githubusercontent.com/deeean/c380abceb5356b7ec076cd32a34d3a9b/raw/9e9c996972995ffab26eade9feb5d600431fde5a/docker-compose.yaml docker-compose up -d .

이 부분을 실행하면

첨부 사진과 같이 되네요…

제가 EC2인스턴스를 새로 다시 만들고 처음부터 따라하다 보니 이 부분에서 이렇게 발생하는데 혹시 제가 몰 누락한걸까요…

이 부분 전까진 잘 되었습니다.

확인 감사드립니다.

2022년 2월 18일 (금) 오전 11:02, Klaytn Developers Forum를 통한 deeean <klaytn@discoursemail.com>님이 작성:

혹시 docker-compose 설치가 된걸까요?

sudo pip3 install docker-compose

실행하셔서 설치후 다시 시도해보시겠습니까?

넵. 제가 실수를 해서 잘 되었습니다.

그런데 yarn server를 한경우가 아닌 샘플앱 가이드 대로 yarn dev를 하면 첨부의 빨간 네모처럼 오류가 발생합니다.

로컬(윈도우 10)에서는 yarn dev로 웹페이지까지 띄웠는데 EC2에서는 계속 헤매네요. 물론 Config.js에 키 값들은 입력하였습니다.

그리고 지금 가이드 주신대로 설치한 MySQL에 접속하는 방법은 mysql -u root -p가 아닌가 보네요?

2022년 2월 18일 (금) 오후 10:35, Klaytn Developers Forum를 통한 deeean <klaytn@discoursemail.com>님이 작성:

cross-env가 없다고 나오는거 같네요 해당 모듈을 다음과같이 설치 부탁드립니다.

yarn add cross-env 또는 yarn global add cross-env

그리고 mysql 같은경우 도커 컨테이너 안에 존재하여

exec 명령어를 사용해 접속할 수 있습니다.

또는 아래 Database Management Tool을 사용하셔도됩니다.

아~ 빨간색 오류는 잡았습니다. Client에서 npm 을 설치 안했썻네요.

그런데 이전 YARN DEV로 돌아가긴 하는데 아래 사진에서 더이상 진도가 없고 사이트 접속이

예제처럼 되지 않네요.

2022년 2월 18일 (금) 오후 11:57, Pwang Yeo <activeyyh@gmail.com>님이 작성:

혹시 프론트 페이지로 접속하는 포트가

보안그룹에 등록이 되어있을까요?

감사합니다^^

저 혹시 지금 EC2 리눅스에서 yarn dev 실헹 시 여기 이 부분에서 멈추는거 같은데 원인을 알 수 있을까요?

로컬 테스트 결과대로라면, Complied successfully!까지 넘어가서 웹 실행이 되어야 하는데…안되네요 ㅠ

2022년 2월 19일 (토) 오전 12:23, Klaytn Developers Forum를 통한 deeean <klaytn@discoursemail.com>님이 작성:

성공.png

아 제가 보기에는

인스턴스 스펙이 떨어져서 실행하는데 오래걸리는것 같습니다.

client 부분을 로컬에서 build하여

npx serve 사용하여 열어보시겠습니까?

아 정확하게 못알려드린것 같은데 로컬에서 빌드하여

서버에 업로드하시고 서버에서 실행하셔야합니다!

아 그럼~
Client 에서 yarn build하고
그 다음에 build 폴더를 제 EC2서버의 Client에 업로드 한 후
EC2에서 yean dev하면 되는 건가요?

저 죄송하지만 혹시 로컬 client에서 yarn build한 후 아래와 같이 build폴더가 로컬에 만들어 졌는데
이 후 어떻게 하는지 알려 주실 수 있으실까요? ㅠ

2022년 2월 19일 (토) 오전 1:25, Klaytn Developers Forum를 통한 deeean <klaytn@discoursemail.com>님이 작성:

로컬에서 build하고 서버에서 npx serve하니 xsel binary가 없다는 오류가 뜨는데요

yum install xsel 이나
npm instal xsel이 안되는거 같습니다.

조치 방법 아실까요?

도움 감사드립니다 ㅠㅠ

2022년 2월 19일 (토) 오전 6:55, Pwang Yeo <activeyyh@gmail.com>님이 작성:

안녕하세요 deeean님~

혼자 오류 메일 보내고 이것저것 해보고 하다 보니 메일을 많이 보냈네요 ㅠ

위에 xsel까지 npx serve -n 으로 처리해 보았습니다.

그래서 serve까지 완료되었네요~

- [serve 성공.png]

여기까지 하고 kas-bapp-luxurytracker-master 폴더에서 yarn dev를 누르면 여전히 홀딩이더라구요 ㅠ

- [홀딩.png]

혹시 몰라 kas-bapp-luxurytracker-master/client 폴더에서 yarn start로 웹 성공 메시지 까지 보았습니다.

- [웹서버 성공.png]

하지만 웹서버 성공 메세지를 봐도 http://172.31.26.78:3000에선 사이트를 연결할 수 없네요 ㅠㅠ

1) build 후 kas-bapp-luxurytracker-master 폴더에서 yarn dev로 웹 오픈 성공 메시지 까지 보아야 정상적으로 접속되는건가요?
2) kas-bapp-luxurytracker-master/client 폴더에서 yarn start로 웹 성공 메시지 까지만 해도 http://172.31.26.78:3000에 접속되어야 하는게 맞다면…제가 또 몰 놓치고 있는걸까요?ㅠ

2022년 2월 19일 (토) 오전 11:46, Pwang Yeo <activeyyh@gmail.com>님이 작성:

또 성공했습니다. 메일이 너무 난장판이 되었네요 ㅠ

2) kas-bapp-luxurytracker-master/client 폴더에서 yarn start로 웹 성공 메시지 까지만 해도 http://172.31.26.78:3000에 접속되어야 하는게 맞다면…제가 또 몰 놓치고 있는걸까요?ㅠ

위 방식으로 실행하고 접속되었습니다. 오류는 위 IP는 Private IP였는데…public IP:3000으로 접속되었네요. ㅠㅠ

- [웹서버 성공_3.png]

이제…웹성공은 되었는데 아래 오류가 났습니다. 이 에러는 정말 모르겠습니다 ㅠㅠ

혹시 아시는지요? ㅠ

- [웹서버 성공_2.png]

2022년 2월 19일 (토) 오후 3:05, Pwang Yeo <activeyyh@gmail.com>님이 작성:

혹시 클라이언트에서 요청하는 호스트 주소가 어떻게 되는지 알려주실수있을까요?