brunch

You can make anything
by writing

C.S.Lewis

by 기획자 Aug 17. 2024

맥 유저의 초심자용 개발환경 세팅

그저 소소한 배포만 필요한...

글을 안 쓴 지 오래된 거 같다

TMI로 내 근황을 알리자면 갑자기 팀장이 됐다가 집을 이사했다가 회사를 그만뒀다가 얼마 전에 이직을 했다






원래 전에는 집에서 작업하고 회사 컴퓨터에서 git으로 받아 배포를 했었다


끄적끄적 코드 좀 만지는 건 가능한데 뭔가 서버 같은 건 너무 어려워 보여서

회사 동료가 세팅해 준 대로 윈도우에서 winscp를 이용해 배포했었다 (고마워 ㅌㄷ)


그런데 갑자기 퇴사를 했고 지금 회사에는 내 컴퓨터에 개발환경을 세팅해 줄 친절한 개발자가 없으니

집에 있는 작고 귀여운 나의 맥북에어에게 직접 세팅해줘야 한다


(참고로 프라이빗 키까지 잃어버려서 더욱 힘든 길이었다... 다들 키 잘들 챙기시길... + 실수로 돈 주고 산 도메인도 날림)





서론이 너무 길어서 이쯤에서 한 번 말하자면 나 같은 개발 찍먹러(?)들에게 조금이나마 도움이 됐으면 해서 이 글을 적는다
개발자들이 보기에는 조금 우스울 수도 있지만 나 같은 사람들은 어디 물어볼 데도 없으니...



개발환경 관련 열심히 검색해 봐도 도대체 무슨 소린지 모르겠어서

구글링 하며 이것저것 무작정 따라 하다 보니 결국 넘어서는 안 될 강을 건너버렸다


구글링으로 짜깁기해서 설치를 하다 보니 intellij, tomcat, java, eclips 별의별 걸 다 깔았다;;

(ㅋㅋㅋㅋㅋㅋㅋㅋㅋ 찐 개발자들이 보면 웃고 갈듯;; 몰라서 그랬습니다..)


이래서 될 일이 아니다 싶어서 세팅 다 뒤집어엎고 처음부터 차근차근 공부하기로 했다



앱 개발할 것도 아니고 간단한 html, css, javascript, sql 만 배포하면 된다 >

괜히 쓰지도 않을 프로그램을 설치할 필요는 없을 거 같다 >

Linux 환경에서 Nginx와 Node.js를 쓰자 >

지금 백엔드 안 쓸거니 Node.js는 나중에!






이렇게 봐도 나는 잘 모르겠긴 하지만 지피티가 좋다고 했음..


'





1. 인스턴스 생성


ㅌㄷ가 AWS - AMI를 Amazon Linux로 세팅해 줬었는데

초보자에게는 사용자와 관련 게시물이 많은 Ubuntu가 더 나을 거 같아서 다 뒤집어엎는 김에

인스턴스도 Ubuntu로 새로 개설했다

(개인 포폴용으로 AWS 쓰면 월에 사용료가 1,000원정도 나온다 < 혹시 궁금하실까 봐)


인스턴스는 관련 게시물이 많으니 생성은 아래 글 참고!

(매번 터미널에서 번거롭게 연결하기 귀찮으니 putty 사용하시는 걸 추천)


https://king-ja.tistory.com/99



2. Nginx 적용


이것도 워낙 관련 게시물이 많으니.. 흐름 따라 위의 선생님 글 참고!


https://king-ja.tistory.com/100



여기까지만 따라오면 이제 퍼블릭 IPv4 DNS로 내 사이트를 확인할 수 있다!

비록 Nginx의 인사뿐이지만 ㅎ






3. Ubuntu 서버에 Nginx 구축



너무 쉽게 간다 했더니... 3시간을 잡아먹어 버리는...


구글링 하면 나오는 서버배포는 대부분  나에게는 너무 오버스택인 거 같아서

nginx html 배포로 접근했고 그중에서 가장 쉬워 보였던 건 아래!


https://yoseph0310.tistory.com/118



쉬워 보였지만 역시나 엄청나게 꼬여대는 통에 3시간을 잡아먹었다 ㅠ


일단 이 방법을 따라 하려면 먼저 로컬에 있는 파일을 Ubuntu 서버에 업데이트해둬야 한다

너무 초보적인 부분이라서 짚지 않으셨겠지만 왕초보는 이 부분에서부터 눈물...



나는 이 코드를 사용 (파일을 옮길 때는 로컬 터미널에서 해야 한다!)

scp -i [로컬에 키 파일이 들어있는 경로와 키] [로컬에 업데이트할 파일이 들어있는 경로와 파일] [연동할 서버 퍼블릭 IPv4 DNS]

scp - i /Users/0000/Downloads/0000.pem /Users/0000/Desktop/study/study.html
ubuntu@ec0-00-00-00-00.ap-northeast-2.compute.amazonaws.com:/home/ubuntu/temp/



위 게시물에는 안 나와있는데 나는 conf 파일을 수정할 때 ip주소를 안 넣으니 계속 400 오류가 났다

listen과 location 사이에 server_name으로 퍼블릭 IPv4 DNS를 추가하니 오류 해결

server {
     listen 80;

***server_name ec0-00-00-00-00.ap-northeast-2.compute.amazonaws.com;***

     location / {
         root /home/ubuntu/temp;
         index study.html;
         try_files $uri /study.html =404;
    }
}


귀여운 내 배포





4. Filezilla 파일 업로드



매번 html 파일 하나만 올릴 것도 아니니 우리는 파일째로 업데이트할 방법이 필요하다

뭔가 복잡한 게 있을 거 같지만 간단하다

그냥 알집으로 압축해서 아까 html 올렸던 ubuntu 서버 속 폴더에 업데이트하면 된다


근데 또 매번 터미널에서 코드 치기는 힘드니까 firezilla를 사용하시면 되겠다

개인적으로 이 전에 사용하던 WinSCP와 동일한 방식이라 아주 친근했다 ㅎ



사용 방법은 아래글 참고!

https://joytk.tistory.com/61



이로써 도메인 날려먹으면서 잃어버렸던 나의 포트폴리오를 다시 살려낼 수 있었다 ㅠ

이제 집에서도 편하게 개발 > 배포할 수 있으니 맘이 놓인다...


귀찮아서 미루고 있지만 이것저것 해보고 싶은 게 많은 개린이이다 ㅎ







브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari