[진행시간 : 20분]

새벽 6시 00분에 시작 - 6시 20분 종료

 

[준비해본 것]

-

 

[도전해본 것]

-

 

[수업내용]

long shot on that acquisition

pay off

after all we've got to be in it to win it

he's lucky he didn't lose his shirt

chances are they'll lose their shirts over this if it winds up going south


what's the meaning of what does

이 문장 의미가 어떻게 되나요

 

I suppose you'll think it's crazy, but i'm going to ask Lisa out for dinner.

I know, but I'm going all in on this. I really like her.

It sounds pretty risky to me. Why not go for a safe bet and ask out that nice girl who works in Accounting?

go on and ask her out. If you don't try, you can't win.

 

[전화영어 영상녹화]

https://www.youtube.com/watch?v=qnGI6L8rhzE 

(21.12.08.WED) 스터디윗미 | YBM 전화영어 공부 - 27Day / 직장인 / Study with me / no music

 

[다음 순서]

Prepare : 14page -A - Another Paragraph (Book name : real talk 3)

 

[배운점/느낀점]

1. 수업 복기시간 : 22분 

 

2. 녹음본 듣고 느낀 점 : 단어 선택하는 것부터 문장이 조금 더 어려워진 것 같다. 발음 연습을 더 많이 해야겠다고 느껴서 오늘 수업 이후에는 문장을 읽고, 구글 번역기로 들어보면서 따라해보는 것을 중점적으로 두었다.

 

3. 오늘부터 틈틈이 전화영어 수업받고 이를 영상으로 촬영해서 유튜브에 올리고, 블로그에 남기는 작업을 해서

지금 실력으로는 창피하지만, 언젠가 유창하게 스피킹할 나를 상상하면서 성장기록을 남긴다고 생각하며 업로드할 것이다.

 

4. 한국에서 24시간 영어노출법 (넷플릭스도 반복해서 도움되도록)

https://www.youtube.com/watch?v=ESnrQ_ByJ7M 

 

Posted by 유영훈
,

fsatify : 웹 프레임워크

https://www.fastify.io/docs/latest/Getting-Started/

 

Getting-Started

Fast and low overhead web framework, for Node.js

www.fastify.io

강의안과 다르게 cmd창에 npm을 치면 명령어가 없다고 나온다.

node.js를 설치해주면 cmd에 npm 치면 옵션들이 쭉 나온다. 설치완료된 것이다.

* npm은 node package manager의 뜻으로 노드 패키지 관리자 역할을 한다.

 

https://nodejs.org/ko/download/

 

다운로드 | Node.js

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org

 

fastify 라이브러리 패키지 설치

npm i fastify --save

브라우져에 접속하면 app.js 파일로 만들어놓은 페이지가 잘 출력된다.

이를 도커 이미지로 빌드하는데 시간이 꽤 걸렸다. 796.8s 이니깐 대략 13분 좀 넘게 소요되었네

빌드한 이미지를 실행하려고 했는데, 오류가 나서 살펴보민

Error에 module이 없다는 것인데, VSCode로 보니 오타가 있었다. 뒤에 QQ를 빼고 다시 실행해주니 잘 실행되고, 웹접속도 성공하였다.

D:\05.Lab\01.test\web>docker run -p 3000:3000 web
internal/modules/cjs/loader.js:638
    throw err;
    ^

Error: Cannot find module '/usr/src/app/app.jsQQ'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
    at Function.Module._load (internal/modules/cjs/loader.js:562:25)
    at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)

D:\05.Lab\01.test\web>docker images

D:\05.Lab\01.test\web>
D:\05.Lab\01.test\web>
D:\05.Lab\01.test\web>
D:\05.Lab\01.test\web>docker run -p 3000:3000 web
{"level":30,"time":1638947532214,"pid":8,"hostname":"1a97ede7f0a9","msg":"Server listening at http://0.0.0.0:3000"}
{"level":30,"time":1638947532215,"pid":8,"hostname":"1a97ede7f0a9","msg":"server listening on http://0.0.0.0:3000"}
{"level":30,"time":1638947532503,"pid":8,"hostname":"1a97ede7f0a9","reqId":"req-1","req":{"method":"GET","url":"/","hostname":"127.0.0.1:3000","remoteAddress":"172.17.0.1","remotePort":52382},"msg":"incoming request"}
{"level":30,"time":1638947532535,"pid":8,"hostname":"1a97ede7f0a9","reqId":"req-1","res":{"statusCode":200},"responseTime":20.34059999883175,"msg":"request completed"}

기존 테스트 중지를 안하니 오류가 발생

C:\Users\move_>docker run -p 3001:3000 web
docker: Error response from daemon: driver failed programming external connectivity on endpoint hungry_satoshi (3220b1383366fafc9092bc9f3d1743ca9d080e512f7b739826f4b760d22405c8): Bind for 0.0.0.0:3001 failed: port is already allocated.

그런데 기존 테스트때문이 아니었음

껐음에도 동일한 오류가 발생해서 혹시 내가 할당하는 포트의 충돌인가 싶어서 3002번으로 변경하였더니

웹도 잘 출력되고 cmd창에 로그도 잘 찍혔다.

C:\Users\move_>docker run -p 3001:3000 web
docker: Error response from daemon: driver failed programming external connectivity on endpoint beautiful_tereshkova (b6841b2541526d8a4f92368b738311a6d6420946329b1e45892756d068f414f9): Bind for 0.0.0.0:3001 failed: port is already allocated.

C:\Users\move_>docker run -p 3002:3000 web
{"level":30,"time":1638948253156,"pid":8,"hostname":"cfbf8a5cf3c6","msg":"Server listening at http://0.0.0.0:3000"}
{"level":30,"time":1638948253158,"pid":8,"hostname":"cfbf8a5cf3c6","msg":"server listening on http://0.0.0.0:3000"}
{"level":30,"time":1638948263812,"pid":8,"hostname":"cfbf8a5cf3c6","reqId":"req-1","req":{"method":"GET","url":"/","hostname":"127.0.0.1:3002","remoteAddress":"172.17.0.1","remotePort":49984},"msg":"incoming request"}
{"level":30,"time":1638948263832,"pid":8,"hostname":"cfbf8a5cf3c6","reqId":"req-1","res":{"statusCode":200},"responseTime":18.8648000061512,"msg":"request completed"}
{"level":30,"time":1638948264280,"pid":8,"hostname":"cfbf8a5cf3c6","reqId":"req-2","req":{"method":"GET","url":"/favicon.ico","hostname":"127.0.0.1:3002","remoteAddress":"172.17.0.1","remotePort":49984},"msg":"incoming request"}
{"level":30,"time":1638948264281,"pid":8,"hostname":"cfbf8a5cf3c6","reqId":"req-2","msg":"Route GET:/favicon.ico not found"}
{"level":30,"time":1638948264283,"pid":8,"hostname":"cfbf8a5cf3c6","reqId":"req-2","res":{"statusCode":404},"responseTime":2.851500004529953,"msg":"request completed"}

정리 : 이미지 만들 때, dockerfile을 가지고 만든다

 

Posted by 유영훈
,

docker compose

docker-compose의 version부터 확인하면서 이번 포스팅 시작

 

yml [야믈] 이란 것이 띄어쓰기를 통해 데이터를 표현하는 방식

 

이렇게 docker명령어를 하나씩 쳐볼수도 있지만, 실무에서는 대부분 yml 파일을 만들어서 진행

도커 : 레이어드 파일 시스템 기반

AUFS, BTRFS, Overlayfs ...

이미지 : 프로세스가 실행되는 파일들의 집합(환경)

프로세스는 환경을 변경할 수 있음

이 환경을 저장해서 새로운 이미지 생성

 

docker build -t 이름/이미지이름:태그 .

docker build -t hoon/ubuntu:git1 .

 

TDD : 파란불이 뜰때까지 많은 실패할 것이고, 성공하더라도 리팩토링을 통해 최적화를 해야함

 

dockerfile로 관리를 하면 다른 사람들이 보아도 어떤 히스토리로 서버가 설치되었는지 확인이 가능하다

(기존에는 히스토리 관리가 안되었다)

Posted by 유영훈
,