Docker

Docker 실행하기

Docker 를 설치하고 나면 이제 실행을 해야 한다. 우선, 원래 실행 방법은 다음과 같은 순서를 따른다. Docker 이미지 다운로드 다운로드 된 Docker 이미지를 가지고 Container 생성 Container 실행 Docker 이미지 다운로드는 pull 명령어를 이용하면 된다. Docker ps -a Docker 에서 실행중이거나 중지된 Container 의 목록을 보여 준다. Docker create -t -i imageId /bin/bash [ –name naming ] Docker Container 를 생성한다. -t 는 tty 를 할당하고 하게 -i 는 Interactive 를 말한다.  보통 -t, -i 옵션을 붙여서 -it 로 붙여서 […]

Docker

Docker Hub

Docker Hub Docker 는 컨테이너기반 애플리케이션 격리모드로 동작하도록 해준다. 기존의 Hypervisor 를 사용하는 가상화가 아닌 Docker Engine 이 각 애플리케이션을 격리해준다. 애플리케이션이라는 말은 운영체제를 포함한다. 이 컨테이너에서 운영할 각종 애플리케이션들이 있어야 하는데, 이런 것을 개개인이 만들어서 사용해야한다면 비용이 많이 들것이다. 예를들어 Ubuntu 16.04 를 Docker 에서 동작하기 위해서 Docker 컨테이너 환경에서 설치부터 해야한다면 가상화 시스템과 다를바가 없을 것이다. 그래서 많은 사람들이 사용할 애플리케이션을 미리 이미지로 구워서 필요한 애플리케이션이미지를 다운받아 각종 설정들과 함께 실행만 시키면 될 것이다. 이는 마치 리눅스 시스템에서 […]

MySQL

MySQL 5.7 소스 설치

이 문서는 MySQL 5.7 소스 설치 문서 입니다. Boost 라이브러리 MySQL 5.7 로 넘어오면서 GIS관련해 기능과 InnoDB Engine 에서 R-tree indexes 가 포함되었다. geometry compute 위한 많은 native code 들로 작성이 되었는데 이를 위해서 Boost.Geometry 를 이용했다. 따라서 소스 설치시에 이 라이브러리를 필요로한다. Boost 라이브러리를 컴파일 단계에서 다음의 옵션으로 알려줄 수 있다. -DWITH_BOOST: Cmake 컴파일러에게 Boost 지점를 알려준다. Boost 지점은 다음의 셋중에 하나여야 한다. tarball/zip 파일 tarball/zip 파일을 포함하는 디렉토리 tarball/zip 파일을 압축해제한 디렉토리 -DDOWNLOAD_BOOST: boolean 값으로 Boost tarball/zip 파일을 자동으로 다운로드 받게 할지 말지를 […]

HowTo

Bash 파일 존재 유무 체크하기

Bash 쉘 스크립트를 작성할때 자주 사용하는 로직인 바로 파일 존재 유무를 체크하는 것이다. 파일 하나만 체크할 수도 있고 여러파일을 체크할 수도 있다. 여러 파일을 체크할때는 다음과 같이 할 것이다.

이것을 Bash 쉘 스크립트에서는 어떻게 리턴을 받아야 하나하는 고민이 생긴다. 가장 쉬운 방법은 stdout, stderror 를 체크하는 방법이다. Bash 에서 이를 exit code 라고 하고 $? 에 세팅이되어 다음과 같은 로직이 가능해진다.

명령어가 성공(stdout)하면 $?에 0, stderr 면 1 이다. 위를 실행하면 다음과 같다.

위 방법외에도 한줄로 다음과 […]

DevOps

salt-ssh 패스워드 입력으로 동작하게 하기

salt-ssh 는 Client 와 통신 및 명령어를 전달하기 위해서 SSH를 이용하는데, 매번 패스워드를 입력하기 보다는 RSA 인증키를 교환함으로써 무인증 로그인을 가능하게 한다. 하지만 가끔은 보안문제로 인해서 무인증 RSA 인증을 사용하지 못하는 상황이 있을 수도 있다. 그래서 매번 실행할때마다 패스워드를 입력하도록 할 수 있다. 먼저 Client 에 관한 리스트는 roster 파일에 기술한다. salt-ssh 는 이 파일에 있는 목록으로 Client 를 호출하고 등록한다. 기본 roster 파일은 Salt root 디렉토리에서 etc/salt/roster 파일이다.

roster 파일의 예제는 위와 같다. 하지만 password 필드도 보안문제로 적어서는 […]

MariaDB

MariaDB 10.2.13 소스 설치

MariaDB 는 MySQL 의 오픈소스 버전 입니다. MySQL 를 최초로 개발한 사람이 점점 폐쇄성이 짙어가는 MySQL 을 대체하기 위해 MySQL 을 복제하고 기능을 개선한 MySQL 의 또 다른 버전 입니다. 현재 MariaDB 는 10.2.13 버전 입니다. MariaDB 10 소스 설치를 해보겠습니다. 설치 환경은 다음과 같습니다. CentOS 7 64bit 준비 다음의 패키지가 설치되어 있어야 합니다.

  다운로드 및 unpack

  Configure and make and install MariaDB 는 cmake 를 이용하기 때문에 일반 Configure 와는 다르게 이것을 이용 합니다.

[…]