'user "root" does not have permission to access the dev dir'

NPM install -g 로 모듈을 설치하는 데, 예상치 못한 ‘user “root” does not have permission to access the dev dir’ 에러를 만났습니다. 뭔가 파일 권한 관련해서 문제가 발생한 것 같은데, 왜 발생한 건지 원인은 찾지 못했습니다. 구글링 해보면, 일부에서 --unsafe-perm 옵션을 주는 것으로 해결한 사례를 찾았습니다. 또 일부는 xcode 문제라고 하기도 했습니다. --unsafe-perm은 왠지, unsafe라는 단어가 맘에 들지 않았을 뿐더러, 문제를 피해가는 꼼수라고 생각이 들었습니다. 두번 째 xcode 문제는 저에게는 해당 되지 않는 문제였습니다. 저는 ubuntu를 사용 중이었으니까요. 그러던 중 NPM 공식 문서 중 “Resolv..

GitHub OAuth 구현하기(4)

2020/07/04 - GitHub OAuth 구현하기 (1) 2020/07/07 - GitHub OAuth 구현하기 (2) 2020/07/13 - GitHub OAuth 구현하기 (3) 에서 이어집니다. 지난번까지 구현된 GitHub OAuth의 예제코드를 서버에 배포하는 것을 설명합니다. 구현된 애플리케이션을 배포하는데, 고려한 몇가지가 있습니다. 지금 만든 앱은 어디까지나, 취미로 만든 것이기 때문에 서비스는 무료로 구동될 수 있어야 한다가 기본 전제였습니다. 우선 고려한 것이, 오라클 무료 클라우드, 그리고 Azure, GCP의 1년 무료 계정, 마지막으로 heroku 같은 PaaS 서비스였습니다. AWS는 무료 계정을 이미 사용했었기 때문에 제외하였고, Azure와 GCP도 앞으로 마찮가지 상황..

Jetbrains IDE에서 Docker Daemon에 연결하지 못할 때

전지 전능한 JetBrains IDE에서는 Docker도 당연히(?) 사용할 수 있습니다. 그래서 Dockerfile이 발견되면, 아래와 같은 풍선 도움말을 통해 Docker 설정을 할 수 있도록 도와줍니다. Dockerfile을 눌러서 Docker 설정으로 바로 갈 수 있습니다. Docker 설정에는 구동할 Dockerfile 명, 컨텍스트 폴더, 태그, 빌드할 때 필요한 옵션들 그리고 빌드된 이미지를 실행할 때 필요한 옵션을 지정할 수 있습니다. 설정하려고 보니 Server 부분에 자동으로 탐지할 없다는 붉은 색 메시지가 보입니다. 저는 윈도우즈10에서 wsl을 이용해 Docker를 사용하고 있기 때문에 안되나보다 하고 넘기고 있었는데 오늘은 무슨 생각에선지, 서버 옆에 설정버튼을 눌러봤습니다. 서버..

문서의 변경 여부 확인하기.

Motivation 개인적으로 만들고 있는 서비스가 하나 있습니다. 서비스의 기능 중 일부는 웹 페이지의 내용을 가져와 페이지에 담긴 내용을 파싱해 DB에 저장하는 것 입니다. 그 DB에 저장된 값은 계산을 통해, 계산된 결과 값을 보여주는 기능으로 이어지게 됩니다. DB의 값이 변경되지 않는 한, 계산 값은 변하지 않게 되므로 수집된 웹페이지가 변경되었는냐를 인지하는 것이 중요합니다. 웹 페이지의 내용은 매일 혹은, 매주 같이 일정한 주기로 변경되면 좋겠지만, 최대 3개월까지 변경되지 않을 수 있고, 그런 수집 대상 페이지는 약 2천개가 넘습니다. Action 웹페이지가 변경될 때에, 계산된 결과도 변경되도록 하기 위한 선택지를 4가지 정도 떠올렸습니다. ( 수집하는 웹 페이지의 용량은 평균적으로 14..

wsl2 ubuntu 20.04 distro에서 snap 오류.

요즘 wsl을 이용해서 이것 저것 많이 해보는데, 대부분 잘 동작하지만, 간혹 잘 안되는 경우가 있습니다. 오늘도 간혹 잘 안되는 경우를 만났습니다. Ubuntu에서 대게는(저는) 라이브러리를 설치는 apt를 사용하지만, heroku cli 같은 경우는 snap을 통한 설치만을 가이드하고 있어서, snap으로 설치를 하려고 했습니다. $ sudo snap install heroku --classic error: cannot communicate with server: Post http://localhost/v2/snaps/heroku: dial unix /run/snapd.socket: connect: no such file or directory 터미널에는 예상치 못한... 서버와 연결할 수 없다는 에..