Docker needs "permission" 도커를 설치하면 기본적으로 sudo 명령어를 필요로 한다. remote 장비에 도커를 설치하고 매번 sudo를 이용해 명령어를 실행하려니 너무 번거롭습니다. 다른 글을 많이 참고해보았지만 한번에 해결되는 글이 없어서 해결한 과정을 적어봅니다. Group Docker 먼저, 아래의 명령어로 docker 그룹을 만들어 줘야합니다. $ sudo groupadd docker 그 후, $USER(도커를 사용할 계정)을 docker 그룹에 추가시켜줍니다. 본인 말고 다른 사용자를 docker 그룹에 추가시키고 싶다면, $USER 대신 다른 사용자명을 넣어도 됩니다. $ sudo gpasswd -a $USER docker $ sudo usermod -aG docker $..
Swap Space란? OS에서 프로그램을 실행해 메모리에 올려 사용하다보면, RAM(Random Access Memory)의 용량이 부족할 때가 있다. 이 때, 대부분의 운영체제는 Secondary Storage인 Disk의 일부를 Virtual Memory로 활용하는데, Memory의 데이터를 디스크로 옮겨 보관하는 것을 Paging(페이징)이라고 한다. 그리고 이 Paging을 하기 위한 공간을 Swap Space라고 부른다. 그리고 페이징을 하는 경우는 메모리가 부족할 때도 있고 컴퓨터가 절전 모드(Hibernation)에 들어갈 때도 있다. 페이징을 하는 우선순위를 정하는 정책은 여러가지가 있다. 대표적인 예로 FIFO나 LRU를 들 수 있겠다. Swap Space in file system v..
Advent Calendar란? Advent Caldendar은 간단히 말하면 크리스마스가 오기를 기다리며 12/1 ~ 12/25까지 매일매일 뭔가 하나씩 꺼내어 즐기기 위한 달력이다. 구글 신에 의하면미래의 나를 위해 매일매일 써 둔 편지라던가, 초콜렛 같은 작은 과자를 꺼내 먹으며 크리스마스를 기다린다고 한다. 개발자에게 Advent Calendar란? 개발자에게 있어 advent calendar는 기술 커뮤니티나 회사에서 특정 주제와 관계 없이 개발에 관련된 글들을 블로그나 위키에 게재한 다음, 그 글의 주소와 제목을 advent calendar에 적어 매일매일 하나씩 오픈하는데 사용된다고 한다. 예를 들어, LINE Enginieering의 Advent Calendar이다 이와 같이 개발자들은 초..
대부분 OpenCV를 사용하면 Python을 사용하는 것 같다. 학교 과목 과제 때문에 OpenCV를 사용하게 되었는데 홈페이지 튜토리얼이 조금 불친절해서 여기 정리해두기로 했다. 1. OpenCV 다운로드 받기 https://opencv.org/releases/ 에 접속해 최신 버젼의 OpenCV 라이브러리를 다운로드 하자. Visual Studio에서 작업한다면 Windows환경일테니 다운로드 후 원하는 위치에 라이브러리를 설치해준다. 이 경로를 기억하고 있자. 2. 환경 변수 설정하기 OpenCV를 설치하게 되면 디렉토리 이름이 길어지는 경우가 있다. Windows 10 기준으로 환경 변수를 설정해주자. 2019년 10월 30일 기준으로 OpenCV를 설치하게 되면 vc14와 vc15가 설치되는데,..
gRPC에 통신 암호화를 적용해보자!! 이번 프로젝트에서 서버 부분을 맡게 되었는데, gRPC를 써 볼 기회가 생겨서 공부한 후 사용하게 되었습니다. 먼저. gRPC에서 제공하는 Greeting Service의 예제 코드를 가지고 insecure한 통신을 하는 소스코드입니다 저는 gRPC python을 사용하고 있습니다. TLS란? TLS란, Transport Layer Security의 약자이며 통신 계층 보안을 담당하는 프로토콜입니다. SSL(Secure Socket Layer)에서 탄생한 기술이고 옛날에는 SSL이라고 불렸지만 지금은 TLS로 정식 명칭이 변경된 상태입니다. 인터넷을 사용해서 신뢰할 수 있는 통신을 하려면 통신 당사자(서버, 클라이언트)가 모두 신뢰할 수 있는 자임을 확인해야합니다...
Ubuntu에 Docker를 설치해보자 설치 기준 Ubuntu 18.04 LTS를 사용했습니다. $ sudo apt update $ sudo apt install apt-transport-https ca-certificates curl software-properties-common $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - $ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable" $ sudo apt update $ apt-cache policy docker-ce Ubuntu에서는 cur..
HTML에서 사용하는 스타일 특성(attributes) HTML 태그의 스타일을 설정하는건 style 특성을 사용하면 할 수 있습니다. style 특성은 아래와 같은 문법을 따릅니다. 이 style attribute에서, property는 CSS의 property이고, value는 CSS의 value입니다. 배경색 바꾸기(Background Color) style의 color라는 특징은 HTML의 배경을 바꿉니다. 사용법은 다음과 같습니다. This is a heading This is a paragraph. 위 태그로 문서를 작성하면, 브라우저의 뒷배경이 하늘색으로 바뀝니다. powderblue와 같은 140가지의 표준 색상명이 아닌, HEXA Code로 된 색상도 추가가 가능합니다. #ff0000 #..
원문 HTML Paragraphs(문단) HTML의 tag는 문단을 나타내는 태그입니다. This is a paragraph. This is another paragraph. 알아두기 : 브라우저는 만약 와 같은 end tag가 없어도 자동으로 추가해줍니다. 또한, 문단이 하나 등장하면 다음 문단 사이에 약간의 여백을 추가합니다. HTML Paragraph의 특징 아래의 코드를 봅시다 This paragraph contains a lot of lines in the source code, but the browser ignores it. This paragraph contains a lot of spaces in the source code, but the browser ignores it. 위와 같이 ..
원문 HTML의 Headings(제목) HTML은 부터 까지 제목을 담당하는 tag가 있습니다. 부터 까지 중요도 순으로, 크기가 변합니다. 예시는 아래와 같습니다 Heading 1 Heading 2 Heading 3 Heading 4 Heading 5 Heading 6 알아두기 : 브라우저는 제목 태그 다음 자동으로 약간의 여백을 삽입합니다. Heading을 하는 경우엔 같은 태그만 사용하는게 좋습니다. 단순히 텍스트를 크게하거나 진하게하는 기능을 사용하지 않는게 좋습니다. 더 큰 Headings(제목) 각 HTML 제목은 기본 크기가 정해져있는데, 이 크기를 style attribute로 변경할 수 있습니다. Heading 1 구분선 넣기 이라는 태그는 HTML 문서에 구분선을 삽입할 수 있게 해줍니..