Categories
JAVA

Spring Boot CLI 맥 환경에 설치하기

Spring Boot

스프링부트를 이용하면 스프링 기반인 프로덕션 수준의 어플리케이션과 서비스를 최소한의 복잡함으로 만들 수 있습니다. 스프링 플랫폼의 컨셉을 그대로 가지고 있으며 새로운 또는 기존의 유저들이 쉽게 접할 수 있습니다.

스프링부트를 이용하여 java -jar 를 사용하는 stand-alone 자바 어플리케이션을 구동할 수 있으며 기존의 전통적인 방식의 WAR 디플로이 방식또한 사용할 수 있습니다. 스프링 스크립트를 작동하기 위한 커맨드라인 툴도 제공합니다.

스프링부트의 주 목적은 다음과 같습니다.

  • 모든 스프링 개발을 위한 근본적으로 더 빠르고 폭넓은 시작 경험을 제공
  • 기존의 스프링의 특징을 고수하지만 요구사항의 변동에 빠르게 대응할 수 있도록 함
  • 큰 규모의 프로젝트에서 사용되는 비-기능적인 범위(임베디드 서버, 보안, 통계, 상태체크, 외부화된 설정)를 제공
  • 코드 생성과 XML 설정이 전혀 필요 없음

Spring Boot CLI

스프링부트 CLI는 스프링을 이용한 프로토타입을 빠르게 만들 수 있도록 해주는 커맨드라인 툴 입니다. 이 툴은 자바 문법과 유사한 Groovy 스크립트를 실행시킬 수 있습니다. 스프링부트를 사용함에 있어서 CLI는 필수사항은 아닙니다.

커맨드라인 툴을 이용하기 위해서는 1.6 버전 이상의 Java SDK가 필요합니다. (현재 openjdk 1.7.0_25에서 약간의 이슈가 있기에 그 이전버전이나 1.6을 권장함) 다음의 명령을 사용하여 현재 설치되어있는 Java의 버전을 확인하도록 합시다.

$ java -version

이 글에서는 Homebrew를 사용하는 OSX 환경에서의 설치를 가정하고 내용을 진행합니다. 당연히 Homebrew가 설치된 맥이 있어야 합니다. 다음의 명령을 사용하여 설치를 진행합니다.

$ brew update
$ brew tap pivotal/tap
$ brew install springboot

Homebrew는 spring을 /usr/local/bin 이하에 설치하게 됩니다. 테스트를 위해 정말 간단한 웹 어플리케이션을 작성해 보겠습니다. 파일이름은 app.groovy로 합니다.

@Controller
class ThisWillActuallyRun {

    @RequestMapping("/")
    @ResponseBody
    String home() {
        return "Hello World!"
    }

}

이제 다음과 같은 명령어로 실행을 합니다.

$ spring run app.groovy

이제 사용하시는 브라우저를 통해 http://localhost:8080으로 접속해 보시면 다음과 같은 내용을 확인할 수 있습니다.

Hello World!

참고 : https://github.com/spring-projects/spring-boot

Categories
개발참고자료

맥에서 부팅가능한 USB 굽기 (ISO to USB)

리눅스를 설치하려고 보니 시디굽기는 왠지 아깝고 Bootable USB를 만들어 설치하면 좋을것 같다는 생각이 들었습니다. 다음은 ISO파일을 이용한 부팅가능한 USB 만드는 방법입니다.

작업에 사용한 ISO파일은 CentOS 6.5 Minimal 버전입니다. 적절한 위치에 다운로드 한 뒤 다음의 명령을 사용하여 IMG파일로 변환합니다.

$ hdiutil convert -format UDRW -o CentOS-6.5-x86_64-minimal.img CentOS-6.5-x86_64-minimal.iso
CentOS_6.5_Final                (Apple_ISO : 0) 읽는 중...
..................................................................................................
(Apple_Free : 1) 읽는 중...
경과 시간:  3.186s
속도: 124.9M바이트/초
저장: 0.0%
created: CentOS-6.5-x86_64-minimal.img.dmg

이번엔 USB를 맥에 연결하고 어떤 파티션에 마운트 되어있는지 다음과 같은 방법으로 확인합니다.

$ diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *251.0 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS Macintosh HD            250.1 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *15.8 GB    disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:                  Apple_HFS OS X 10.9 Install Di... 15.5 GB    disk1s2
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            CentOS_6.5_Final       *417.3 MB   disk2

16기가짜리 USB를 꼽았는데요. 잘 보면 /dev/disk1에 마운트 된것이라는것을 확인할 수 있습니다.

USB로 굽기에 앞서 USB에 이미 무언가 설치가 되어있는 상태라면 굽기가 되지 않는 경우가 있습니다. 다음과 같이 파티션탭에서 1개의 파티션을 선택하고 여유공간으로 바꿔줍시다. 이제 빈 USB가 됩니다.

making_bootable_usb

이제 이미지를 USB로 구울것인데요. 기존에 확인했던 USB 마운트 포인트가 /dev/disk1이었던것을 기억하고 다음과 같은 명령을 사용하여 굽기를 합니다.

$ sudo dd if=./CentOS-6.5-x86_64-minimal.img.dmg of=/dev/rdisk1 bs=1m
load: 1.71  cmd: dd 15962 uninterruptible 0.00u 0.14s
398+0 records in
398+0 records out
417333248 bytes transferred in 18.689190 secs (22330194 bytes/sec)

if에는 IMG로 변환했던 이미지를 넣어주고 of에는 disk가 아닌 rdisk로 입력해 줍니다. 즉 아까 확인했던 파티션의 위치가 /dev/disk1 이었다면 /dev/rdisk1으로 해주시면 됩니다. 오래 걸릴 경우 중간에 CTRL + T를 눌러 현재 진행 상황을 확인할 수 있습니다.

Exit mobile version