윈도우 화면 녹화 프로그램 뭐가 있을까?

맥북에서는 QuickTime으로 간단하게 녹화를 할 수 있습니다. 그리고 iMovie로 간단하게 편집도 할 수 있습니다. 개인 적으로 쓰기에 아주 좋지는 않지만, 그냥저냥 쓰기에 나쁘지 않습니다. 제가 가진 맥북에서도 잘 되지만, 이제 8살이 된 제 맥북이 녹화를 하면서 무언가를 하기엔 너무 힘겨워하는 게 보입니다. 녹화를 잠시 하다 보면 타이핑 속도를 못 따라오고, 마우스도 버벅거리면서 간신히 따라오는 걸 느낍니다. 그래서 요새는 윈도 데스크톱을 더 많이 사용합니다. 그런데, 윈도우 기본 프로그램에서는 그런 게 안보입니다. 예전에 사용하던 윈도우 무비메이커도 이제는 사용할 수 없는 것 같고, (예전에는 사람이 적었더라도 1인 미디어가 익숙해진 지금에는 관심을 보이는 사람들이 많을 텐데, 이런 점은 좀 ..

여러 로그 파일, 한번에 보기.

한통으로 만들어서 한방에 서비스를 하는 덩치 큰 녀석을 만드는 게 이제는 낯설게 되었습니다. 그보다는 작은 단위로 쪼개서 가볍게 띄운 다음 하나하나가 유기적으로 연동하여 서비스를 완성하도록 하는 것이 익숙해졌습니다. 먼저 것을 모노리딕, 나중 것을 마이크로 서비스라고 하나요? 뭐 명칭이야 어쨌든 이제 작은 단위로 앱을 나누고, 필요할 때 필요한 것들만 많이 띄워서 처리량을 빠르게 늘리는 것을 목표로 서비스를 만듭니다. 이렇게 만드는 것이 서비스를 할 때, 즉각적인 대응이 가능하다는데 큰 장점이 있습니다. 급작스런 트래픽 증가에도 유연하게 대응할 수 있기 때문입니다. 하지만 장점만 존재하는 것은 아닙니다. 잘 설계되지 않는 다면, 복잡도는 증가되게 되고, 그에 따라 개발 난이도가 증가되고 유지보수가 힘들어..

Docker Image 빌드할때 ssh로 Git clone하기.

도커 이미지를 만들 때, 호스트에 있는 파일을 복사하는 게 가장 일반적이겠지만, CI툴에서 이미지 빌드를 한다거나, 특정한 브랜치를 항상 빌드한다거나 하는 특정한 경우에 Docker Image를 만드는 중에 소스코드를 클론 하는 경우가 있습니다. 이럴 때는 Dockerfile에 아이디와 패스워드를 노출할 수는 없기에, 제가 사용한 방식은 리파지토리에 등록된 Deploy Key를 이용하여 클론 한 후에 이미지에서 제거하는 방법을 사용했습니다. Dockerfile 코드는 다음과 같은 형식입니다. FROM ubuntu:latest COPY ssh_key /home/bitlog/.ssh/id_rsa RUN git clone git@github.com:bitlog/dev-repository.git RUN rm /..

오크! awk

쉘 스크립트를 만들 때, 자주 사용하지만, 쉘 스크립트를 만들 일이 그다지 많지 않아, 쓸 때마다 찾아보는 awk라는 명령이 있습니다. 얼마 전에도 쉘 스크립트를 만들다가 사용법을 찾아본 김에 내용을 정리해 놓기로 했습니다. awk 란? awk는 unix 계열의 os에서 텍스트에서 패턴을 추출하거나, 가공하기 위해서 사용하는 명령입니다. 텍스트를 출력하는 명령과 연계하여 주로 사용하고, 출력을 전달받아서, 내용의 일부만 추출하는데 주로 사용합니다. awk는 1970년 벨 연구소에서 Alfred Aho, Peter Weinberger, Brian Kerninghan 세 사람이 만들었고, 세 사람의 이름 첫 글자를 따서 이름 지어졌다고 하며 오크라고 발음합니다. 사용법 사용하는 방법은 패턴과 동작 그리고 입..

golang docker 이미지 다이어트하기.

golang(이하 go)으로 작성된 애플리케이션을 Docker로 만들다가 문득 "go로 작성된 애플리케이션은 단독으로 실행할 수 있는 파일이 만들어지니까, 만약 빌드된 파일만 배포하여도 실행이 될까?"라는 궁금증이 생겼습니다. 그래서 몇 가지를 해봤습니다. * 사용했던 코드는 Docker image를 만들었던 코드는 주제와 관계 없는 내용이 담겨있어 오히려 내용을 이해하는 데, 방해되기 때문에 간단히 Hello World를 출력하는 코드로 대신합니다. package main import "fmt" func main() { fmt.Printf("hello, world\n") } 간단히 빌드를 하고나면 2.1 메가 짜리 실행 가능한 파일이 생깁니다. $ go build main.go $ ls -alh tot..