JS 풀스텍 시작

dawoon·2024년 9월 5일

1. 국비 학원을 통한 입문

컴퓨터 관련된 전공을 하지 않았고 지금까지 다른 일을 해오다가 여러가지 계기들로 프로그래밍을 시작하기로 마음을 먹고 입문이니까 국비 교육을 받아보고자 HDR을 열심히 찾아서 "JAVA 프로그래밍 + AI 웹 앱 개발 부트캠프" 라고 소개하고 있는 곳으로 지원하고 학원을 다니기 시작했습니다.

학원 시작일 이전까지 방황하면서 JS, JAVA, PYTHON 등 여러 언어의 입문 무료 강의를 듣고 학원 강의를 듣기 시작했습니다.
하지만 생각했던 것들과 다르게 어떤 방식으로 프로그래밍을 해야하는지, 어떤 코드가 어떻게 구동되는지에 대한 개념 설명 보다는 진도를 나가기 바쁜 수업과 이해하지 못한 채 그저 코드를 받아적는 형식으로 강의가 진행되고 있었습니다.

정말 운이 좋게 다른 학생분에게 정보를 얻으며 같이 스터디를 하게 되었고, JS를 통한 풀스텍으로 진도를 바꾸기로 마음을 먹게 되었습니다.

2. JS 입문

학원에 나와서 강의를 듣지 않고 인터넷 강의를 통해 JS 풀스텍 과정을 보기 시작했습니다.
Udemy에서 "The Web Developer 부트캠프 2024" 강의를 진행하였고 약 1달 정도의 기간동안 진행하여 JS, Node.js, Express.js, MongoDB 등의 기술 스텍에 대해 배우게 되었습니다.

3. Raspberry Pi5로 개인 서버 만들기

현재까지 쌓아온 기술 스텍들을 활용해 프로젝트를 진행하기 전 Raspberry Pi 5를 가지고 Ubuntu Server를 설치하고 개인서버로 만들어 프로젝트들을 관리해보는게 좋을것 같다고 생각했습니다.
그리고 그 과정을 기록해두려 합니다.

(1) 라즈베리파이5 키트 조립 및 OS 설치

(1-1) 라즈베리파이5 키트 구매

저는 쿠팡을 통해 Raspberry Pi5 베이직 키트를 구매하였습니다.
베이직 키트 구매로 후 SD카드 64gb, SD카드 리더기를 별도 구매하였습니다.(별도로 구매하는것이 입문용 키트 보다 약 1만원 정도 저렴했습니다.)

(1-2) UBUNTU Server OS 설치

  1. 우선 Raspberry Pi imager를 설치 합니다.
    (https://www.raspberrypi.com/software/)
  2. 추가로 Ubuntu Server 24.04.1 LTS도 다운로드 받아줍니다.
    (https://ubuntu.com/download/desktop)
  3. 라즈베리파이5에 Ubuntu Server를 설치하기 위해 사용할 SD카드를 PC에 꽂고 Raspberry Pi imager를 실행합니다.
  4. 운영체제 및 저장소 선택
  • 장치 선택 -> Raspberry Pi 5
  • 운영체제 선택 -> Other general-purpos OS -> Ubuntu -> Ubuntu Server 24.04.1 LTS (64-bit)
  • 저장소 선택 -> SD카드
    지정 후 "다음" 클릭


  1. OS 커스터마이징 설정
  • 위 사진과 같이 OS 커스터마이징 설정하였습니다.
    - hostname설정: 서버 이름으로 사용됩니다.
    - 사용자 이름: 서버에 로그인 시 작성할 ID로 사용됩니다.
    -> 저장을 누르고 예를 클릭하면 다운로드를 시작합니다.
    -> 끝나면 SD카드를 제거해도 된다고 메세지가 뜬다.
  1. OS 설치
  • Raspberry Pi 5에 SD카드를 꽂고 전원을 켜면 자동으로 설치를 시작합니다.
  • 중간에 로그인하라고 하는데 Raspberry Pi imager에서 설정했던 OS 커스터마이징의 사용자 이름, 비밀번호를 통해 접속하면 남은 설치가 진행됩니다.
  • 설치 진행 후 아래 명령어를 통해 Raspberry Pi에 지정된 ip를 확인합니다.
    ip a
    출력되는 IP 주소 예시: inet 123.456.78.90/24
  • 로컬 컴퓨터에서 명령 프롬프터(cdm)를 통해 아래와 같이 명령어를 입력하여 ssh 연결을 진행합니다.
ssh user_id@123.456.78.90

이후 설정한 비밀번호를 입력하고 나면 해당 서버를 로컬 컴퓨터에서 조작할 수 있게 된다. (chat gpt를 통해 코드를 받아 수기로 옮겨적는 경우 오타가 많아 오류가 계속해서 발생할 수 있으므로 이 방법을 추천합니다.)

  • Chat gpt에 작성한 프롬프터
    "현재 라즈베리파이5에 우분투 서버 os를 설치하고 로컬 컴퓨터 cmd에 ssh로 연결까지 해둔 상황이야
    지금부터 라즈베리파이를 내 개인용 서버로 만들어서 사용하려고해
    웹 서버는 nginx를 사용하려고 하고, 파일 서버는 samba를 사용할 예정이야
    너는 이제 개인용 서버 제작 코치라고 생각하고 나에게 설치 방법을 알려줘
    설치 방법을 알려줄 때 아래의 조건들을 만족하도록 설명해줘
  1. 진행 단계를 매우 세분화 해서 알려주고 정상 적용 시 예상 출력값도 같이 작성해줘
  2. 세분화된 단계를 1개씩 처리해 나가며 설치하도록 도와주고, 각각의 단계가 완료된게 확인되면 다음 단계로 진행할 수 있도록 해줘
  3. 단계 진행중 오류가 발생하여 다른 질문들을 하는 경우 해당 오류에 대한 처리 방법을 우선적으로 설명하되 처리 방법 또한 위 조건들과 같이 진행해줘
  4. 오류가 개선되면 다시 원래 진행하던 과제로 돌아가서 이어서 설명해줄 수 있도록 기존의 과제들을 기억했다가 설명해줘
  5. 진행 방법을 설명하면서 해당 코드가 어떤 이유로 작성되고, 어떤 작용을 하는지 설명해줘"
    라고 설정한 뒤 웹 서버와 파일 서버 만들기를 시작했습니다.

이후부터 코드 작성이 많을 것 같아 다음 글에서 추가로 작성하겠습니다.

profile
코딩 입문

0개의 댓글