본문 바로가기

콤퓨타50

docker container 갑작스러운 exited 현상 파보기 docker를 통해 서비스 중인 nodejs와 mongoDB의 비정상종료가 확인되어 docker inspect를 통해 원인을 파악해보았다. docker inspect command를 사용하면 해당 container에 대한 상태를 확인할 수 있는데, ExitCode를 통해 어떤 유형의 Exited 사유인지 확인할 수 있다. 아래 json코드는 docker inspect 를 통해 반환받은 결과이다. State 외에도 다른 항목들이 많은데, 이번에는 State 항목을 살펴보며 종료사유를 파악해보려한다."State": { "Status": "exited", "Running": false, "Paused": false, "Restart.. 2025. 2. 10.
웹게임 개발기 (14) - UI google material design으로 전환하기 전반적인 웹서비스의 UI의 개선을 진행했다. google material design 을 활용하여 세련되게 표현하려고 해봤다. 요소를 배치하고 부드러운 행동전환이 가능하도록 고민하며 개발하는 것은 상당한 시간을 소요시켰다.추후에는 아직 제대로 반영되지 않는 부분들에 대해 데이터를 연결지을 수 있는 부분을 개발할 예정이다. 기존 홈화면  개선 홈화면 기존 회원가입화면 개선 회원가입화면 기존 게임대기화면 개선 게임대기화면 기존 게임화면 개선 게임화면 아직 몇몇 컴포넌트(card 등)는 android/ios에서만 지원이 되고, web용도로는 지원하지 않는 컴포넌트가 있는 것을 확인하였다.이러한 부분은 추후 업데이트되면 조금 더 연구를 해봐야할 것 같다. https://github.com/material-com.. 2025. 2. 3.
웹게임 개발기 (13) - Google Material Design 으로 UI 구성하기 / favicion 적용하기 이번에는 아무런 라이브러리 없이 빈약하게 구성된 화면을 좀 정상적으로 꾸며보기로 했다. 1. Google Material Design 으로 UI구성하기현재 사이트는 아래와 같이 단순하고 조잡한 형태를 띄고있어 흡사 정상적이지 않은 사이트처럼 보인다.이를 위해 google의 material design을 활용하여 UI를 더 보완하기로 했으며, 우선 아래와 같이 material/web을 패키지에 추가해야한다.npm install @material/web 그렇게 설치하고 나면, material/web은 Module JS 기반으로 동작하기 때문에, 전체프로젝트 관점에서는 Common JS 와 혼재한 상태가 된다. 그래서 이번에 webpack과 babel을 추가하여 이러한 문제를 해결하기 위한 번들링과 트랜스파일.. 2025. 1. 30.
[javascript 탐닉] 실행컨텍스트(execution context), 클로저(closure) 알아보기 처음부터 클로저에 대해 알아보려 했으나, 클로저 개념을 이해하기 위해서는 우선 javascript에서 소스코드가 평가 및 실행되는 방식에 대해 이해하고 시작하는 것이 더 좋을 것이다. 그럼 먼저 컨텍스트에 대해 알아보자면, 컨텍스트(context)는 특정코드가 실행되는 환경 또는 상황을 의미한다. 이런식으로만 표현하면 딱딱해서 이해하기가 어렵다. 다시 쉽게 설명하자면, 실행정보를 담고있는 무언가라고 이해하면 되는데, 우리가 일반적으로 소스코드를 작성하고 실행(일반적인 의미의 실행)을 하면 js engine에서 소스코드에 대한 평가(evaluation) 이후 실행(execution)을 진행하면서 javascript 프로그램이 된다.그럼 실행 전에 평가를 왜하냐? 라고 하면 각 소스코드 스코프에 어떤 변수와.. 2025. 1. 27.