🏃♂️ 본가에 내려가는 동안 편의점을 생각보다 오래봐서 공부에 시간을 많이 못 썼다. 원래 내일 올라오기로 했었는데 그러면 내일이 붕 뜰 것 같아서 오늘 막차타고 왔다.
다시 해야지. 오늘은 한 강이라도 들어야겠다.
💻 부트캠프 공부내용
Dockerfile에서 docker build를 하면 이미지가 생성되고 docker run을 하면 CMD가 실행되는 것이다. => CMD는 도커 빌드과정에 안 들어간다.
그리고 원래 명령어가 다 실행되면 도커가상컴퓨터는 종료되는데 종료되지 않는 명령어를 실행하면 가상컴퓨터도 안 꺼진다.
node 14버전은 npm,yarn도 다 깔려있어서 편리하다. 도커 가상컴퓨터에서 코드를 돌리는 원리는 myfolder같은 폴더를 하나 만들고 실행시키려는 코드들이 있는 파일전체를 COPY . 으로 만든 폴더 안에 넣고 yarn dev같은 꺼지지 않고 24시간 돌아가는 명령어를 켜놓는 것이다.
근데 중요한 것이 node_modules가 깔려있어야 하는데, 두가지 방법이 있다.
1번째는 CMD 명령어 전에 RUN yarn install을 Dockerfile에 넣어주는 것이랑 2번째는 로컬컴퓨터에서 미리 node_modules를 까는 것이다. -> 두번째 방법은 사용자컴퓨터 node버전과 운영체제 따라서 결과가 달라져서 안 씀.
도커 안에서 3000번 포트로 서버 켜져있을 때 포스트맨에서 요청보내도 응답안함 => 포트포워딩이 안되서.
포트포워딩은 작성할 때에 2가지를 써줘야 한다. 로컬에서 도커로 들어갈때: 도커안에서 들어갈때
ex)3000:3000
=> docker run -p 8000:3000 처럼 포트포워딩해서 도커를 실행하면 된다.
포트포워딩 하면 이렇게 보이는 모습. 앞에 '0.0.0.0'은 누구든지 접속가능하다는 의미 => 나중에 해킹부분을 위해서 이 부분 변경해줘야 함.
(중요)'포트 포워딩'은 네트워크의 중요한 개념이라 중요하다!