2018의 게시물 표시

AWS Elastic BeanStalk로 Web Application 만들기 연습 예제

이미지
“AWS Elastic BeanStalk를 사용하면 가장빠르고 간단하게 웹 어플리케이션 제작할 수 있습니다.”AWS Elastice BeanStalk(이하 EB) 소개 페이지를 방문하면 위와 같이 이야기 하는데요, 여기서는 간단하게 샘플 어플리케이션을 만들어 보면서 어플리케이션 제작에 친숙해 지려고 합니다. 먼저 AWS EB는 어플리케이션을 생성하고 어플리케이션 하위에 개발, 테스트, 프로덕트 등 운영환경에 따른 환경을 구성할 수 있습니다. 또한 웹어클리케이션의 다양한 옵션을 지정할 수 있으며, 모니터링, Auto Scaling 을 지정할 수 있으며, 또한 정기적으로 앱을 빌드하도록 설정할 수 있습니다. 여기서는 10분만에  간단한 Sample Web Application을 제작해보도록 하겠습니다.


Application 생성하기AWS EB를 사용하기 위해서는 AWS 콘솔에서 https://ap-northeast-2.console.aws.amazon.com/elasticbeanstalk 방문하여 관련 구성을 지정할 수 있습니다.

1. 중간에 “Get started” 버튼을 클릭하여 Applicaton을 생성합니다.


2. 여기서는 테스트를 위해 Application name에 “Test-App” 을 입력하고, Platform에 “Tomcat”을 선택하고,
Application code는 샘플로서 바로 확인하기 위해 일단 “Sample application”을 지정합니다.
*Platform의 목록을 보면 Ruby, Go, Java, Phython, Node.js 등 다양한 언어 혹은 웹서버를 지원하는 것을 확인할 수 있습니다.
*Application code에서 별도의 .zip 혹은.war을 등록하여 기존에 개발로 어플리케이션을 등록할 수 있습니다.
*Configure more options 를 클릭하여 EB에서 지원하는 다양한 기능을 추가 로 설정할 수 있습니다. 여기서는 기본설정으로 샘플 어플리케이션을 생성할 것입니다.


3. 이제 Create application을 클…

Android에서 JS를 통해 WebView와 통신하기

안녕하세요. 첫 포스팅을 게재하는 명동콜링입니다.

첫 포스팅인 만큼 간단하게 하이브리드 앱 개발 할 때 필수적인 요소인 Javascript를 통해 Web에서 App으로 데이터를 보내는 방법을 알려드리고자 합니다.

하이브리드 앱도 앱이기 때문에 웹 페이지로 구성이 되어있지만 앱의 기능을 어느 정도는 사용하게 됩니다. 그렇기 때문에 앱에서는 웹에서 어떠한 신호를 받기 위한 로직이 필요했으며, 그에 따라 생겨난 것이 Javascript를 통해 데이터를 주고받을 수 있도록 한, Android Bridge Interface 입니다.

과거에 JS를 통해 교류할 수 없었을 때에는 앱 내에서만 사용할 Scheme을 가지고 URL형식으로 호출을 하게 되었다면, 지금은 완벽하게 Javascript문법을 통해 앱의 API를 호출 할 수 있도록 도와주고 있습니다.

그럼 이제 초기 셋팅을 해보도록 할텐데, 전반적인 프로세스는 다음과 같습니다.
Android WebView에서 Javascript Interface를 설정한다.Web에서는 WebView에서 설정된 Interface를 호출한다. 항목이 두 가지 밖에 없는 만큼 참 구현도 간단한데, 예시로 웹에서 버튼을 누르면 현재의 웹이 아닌 다른 브라우저에서 페이지가 열리도록 하는 것을 구현해 보도록 하겠습니다.
먼저 WebView에서 Javascript Interface를 설정하는 방식에 대해 확인해 봅시다.

1 2 3 4 5 publicabstractclass JavascriptInterface{ publicstaticfinalString JS_INTERFACE ="webInterface"; publicabstractvoid loadPage(String url); } Colored by Color Scripter cs
 위의 클래스는 기본 클래스가 아닌 추상 클래스 입니다. 인터페이스 개발방식은 개발자의 입맛에 따라 다르게 개발 할 수 있지만, 간단한 예시를 위해 만들었습니다.

 이렇게 클래스만 작성해야 되는 것이냐... 아…

파이썬을 이용하여 웹 크롤러 만들기 #1 - Python 설치 및 환경 설정

안녕하세요. 남산돈가스 입니다.

얼마 전 한국정보기술연구원 재직자교육을 통해 "파이썬으로 웹 크롤러 만들기" 교육을 수강했습니다.

내용이 어렵지 않아 누구든지 쉽게 따라할 수 있어서 저는 내용들을 상기 시킬 겸, 내용을 소개드릴 겸 해서 이 포스팅을 시작하게 되었습니다.

이번 포스팅은 2회에 걸쳐서 진행될 예정이며, 회차 별 내용은 다음과 같습니다.


#1 - Python 설치 및 환경 설정#2 - BeautifulSoup4을 활용하여 크롤링하기

그렇다면 1회차인 Python 설치 및 환경 설정 부터 시작하도록 하겠습니다.


현재 저는 맥북을 사용 중이므로, mac OS 기준으로 설명 드리겠습니다.

먼저 Python을 설치하기 전 mac os 에서 패키지 관리를 할 수 있는 프로그램으로 "homebrew"라는 패키지 관리도구가 있습니다. 



gimseongsin@gimseongsin-ui-MacBook-Pro:~:>/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
위 명령어를 실행하면 homebrew를 다운 받을 수 있습니다.

homebrew 패키지가 설치되었는지 확인하시려면,

/usr/local/bin 폴더로 이동하여 ls 명령어를 이용하여 homebrew가 있는 지 확인해주시면 됩니다.

homebrew가 설치되었는지도 확인을 하셨다면, 이제 본격적으로 python을 설치해보겠습니다.

방법은 아주 간단합니다.

gimseongsin@gimseongsin-ui-MacBook-Pro:~:>brew install python3 See: https://docs.brew.sh/Homebrew-and-Python==>Summary 🍺 /usr/local/Cellar/python/3.6.5: 4,705 files, 99.4MB
brew install python3 명령어를 통해 pytho…

[AWS] AWS Workmail 계정 사용법

이미지
AWS 상에서 관리되고 있는 도메인이 있다면 손쉽게 이메일 서비스 그룹을 생성하여 메일 계정을 사용할 수 있습니다.




1. 콘솔화면에서 Workmail 서비스를 선택 합니다.

아직 서울 리전은 서비스가 지원되지 않습니다.





2. 원하는 리전을 선택 후 Add organization 을 선택합니다.




3. Quick setup 을 선택하여 간단하게 조직 구성을 진행 합니다.






4.  Organization name 을 입력하고 “Create” 를 선택합니다.
Web Application URL 을 Workmal 서비스 접속을 위한 도메인 입니다.
도메인 이름을 메모해 놓도록 합니다.






5. 도메인 설정을 진행 합니다.
“Add domain” 버튼을 선택하고  Default 도메인 이외에 추가로 사용할 도메인 주소를 추가 합니다.


도메인이 추가되면
메일 서비스 사용을 위해서 DNS 서버에 아래와 같이 TXT, MX, CNAME 레코드를 추가합니다.
레코드 추가가 정상적으로 완료되면 해당 도메인을 사용하는 메일계정 새성이 가능합니다.





6. 메일 계정을 생성 합니다.

Administrator 계정은 시스템에 예약되어 있습니다.


“Create User” 버튼을 통해  메일 계정을 신규로 생성 합니다.
User Name 과 Displayname 은 필수 항목 입니다.
항목 입력 후 “Next Step” 을 선택합니다.



입력한 User Name  값이 자동으로 Email address 로 입력 됩니다.
메일에 사용한 도메인 주소를 선택한 후 패스워드를 설정하면 메일 계정 생성이 완료 됩니다.





7. 웹 메일 에 접속해서 계정으로 로그인 합니다.

4번 항목에서 메모해둔 Web Application URL 에 접속해 봅니다.




계정 생성이 정상적으로 마무리 되면  아래와 같이 메일 서비스 화면이 표출됩니다.


Workmail 설정이 완료 되었습니다.
다음 포스팅에서는 WorkMail 계정을 이용한 SES 서비스 연동 방법에 대해 살펴 보도록 하겠습니다.

Spring Boot로 REST API 만들기

이미지
스프링 부트는 원래 자바로 만드는 마이크로서비스를 만들기 위한 프레임워크입니다. 여기서는 스프링부트를 사용하여 간단한 REST API를 만드는 방법을 소개하고자 합니다.여기서는 다음의 내용을 다루고자 합니다.spring 개발환경 구축spring framework5 와 spring boot를 활용한 RESTful 서비스 개발개발환경스프링 개발을 위해 일반적으로 아래 개발도구를 사용합니다.JDK 1.8 –> http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htmlSpring Tool Suite(STS) 3.8.2 –> http://spring.io/tools/sts/allMaven 3.3.1 –> https://maven.apache.org/download.cgi하지만 개발도구로 STS 대신에 InteliJ의 idea나 이클립스 다른 IDE를 사용할 수 있습니다. (저는InteliJ의 idea를 사용합니다.) 또한 maven 대신에 gradle을 사용해도 무방합니다.그리고 사용할 스프링 버전은 아래의 것을 사용할 것입니다.Spring Framework 5.0.0 RC1 –> https://projects.spring.io/spring-framework/Spring Boot 2.0.0 M1 –> https://projects.spring.io/spring-boot/스프링 부트로 RESTful API서비스 만들기스프링 부트는 앞서 말했듯이 마이크로 서비스를 빠르고 쉽게 만들수 프레임워크 입니다. 다시 말해 빠르고 쉽게 만들수 있다는 것은 기본코드와 환경설정에 드는 노력을 상당히 줄이고 기본 설정값으로 애플리케이션을 쉽게 만들수 있습니다. 스프링 부트는 maven에서의 POM 파일과  같은 빌드 파일을 자동 생성합니다. 스프링 부트는 기존에 스프링에서 사용하는 xml 설정 파일을 없앴으며, 실행가능한 jar형태의 어플리케이션을 제작할 수 있습니다.요…

아이프렌즈펫 개린이 캣초딩 콘테스트

이미지
우리집 막둥이🐾 사진을 아이프렌즈펫 앱에 올려주세요
아이프렌즈펫이 어린이날 선물을 쏩니다~!🎈🎁

✔️ 참여 기간
4월 16일 (월) 9:00 ~ 4월 30일 (월)

✔️ 참여 방법
1️⃣ 아이프렌즈펫 앱 다운로드
2️⃣ 초간단 회원 가입
3️⃣ 사진 올리기 📸 (홈 화면 상단 배너 클릭 또는 추억주제 + 버튼 눌러 사진 올리기)

✔️ 당첨자 발표
5월 5일 (토)

✔️ 선정 기준
가장 많은 좋아요💕를 받은 사진
(당첨 팁 확인~)

✔️ 경품
[1등] 2명 카메라 내장 자동 급식기
[2등] 3명 노즈워크 헬로킹 장난감
[3등] 5명 자동급식 BALL 장난감
[활동상] 포토랜드 아크릴 액자 1명
[스토리상] 히오니 젤네일 1명

이벤트 자세히 보기 (응모하기)
https://www.ifriendspet.com/app/childrenday_contest/blog.html

아이프렌즈펫 가입하고 간식/사료받자!

이미지
✔ 참여 방법
아이프렌즈펫 앱 다운 > 초간단 회원가입
기존 회원은 쇼핑 서비스 구경만 해도 참여완료💕

✔ 참여 기간
3월 30일(금)~ 4월 15일(일)

✔ 당첨 인원 및 경품
135명에게 추첨으로 경품 증정

🎁 하루애 져키 (수제간식) 3개 세트 40명 증정 하루애 펫트릿 (수제간식) 3개 세트 50명 증정 하루애 수제사료 3kg 5명 증정 하루애 수제사료 2kg 10명 증정 하루애 수제사료 1kg 30명 증정 *제세공과금 당사 부담 / 당첨 후 고객 확인을 위해 개별 연락 *재고 소진시 다른 상품으로 교체되어 배송될 수 있습니다. ✔ 당첨자 발표 - 4월 20일 (금) 🍯 당첨 확률을 높이는 꿀팁 🍯 1. 쇼핑 서비스에 가입 후, 배송지를 등록해 주세요 (당첨되면 어차피 경품 받을 주소 입력해야 할 거 미리미리~) 2. 이 이벤트를 널리널리 퍼뜨려 주세요~ (좋아요 꾹💕 페이지 좋아요💕 공유~ 공유하셨으면 댓글로 공유하신 주소와, 아이프렌즈펫 아이디를 남겨주세요)

ionic 하이브리드 앱 개발 - #6 ionic native

Ionic Native는 Cordova 플러그인  TypeScript 개발도구로써 Ionic 모바일 어플리케이션에 필요한 기본 기능을 손쉽게 추가 할 수 있습니다.Promises 와 ObservablesIonic Native는 Promise 또는 Observable에서 플러그인 콜백을 통하여 모든 플러그인에 공통 인터페이스를 제공하고 네이티브 이벤트가 Angular로 변경 감지하도록 보장합니다.import{ Geolocation } from '@ionic-native/geolocation';import{ Platform } from 'ionic-angular';class MyComponentOrService {constructor(private platform: Platform,private geolocation: Geolocation){ platform.ready().then(()=>{// get current position geolocation.getCurrentPosition().then(pos =>{ console.log('lat: '+ pos.coords.latitude +', lon: '+ pos.coords.longitude);});const watch = geolocation.watchPosition().subscribe(pos =>{ console.log('lat: '+ pos.coords.latitude +', lon: '+ pos.coords.longitude);});// to stop watching watch.unsubscribe();});}}설치Ionic Native를 앱에 추가하려면 다음 명령을 실행하여 관련 패키지를 설치하십시오.npm install @ionic-native/core --save 사용법
필요한 플러그인 설치하려면 각 플러그인별 Ionic Native 패키…

[AWS] 시작탬플릿을 사용하여 인스턴스 생성하기

이미지
AWS 인프라 운영 중 기존에 생성한 Instance와 유사한 인스턴스를 추가로 생성하려고 하는 경우기존에는 AMI (이미지) 백업을 통한 Instance 생성작업을 사용했습니다.

하지만 지난 11월 부터   AWS 에서 추가로 Template 기반의 인스턴스 생성 기능을 지원하고 있습니다.

Template 기능을 활용하면

AMI Image
VPC
Subnet
Storage
Security Group
UserData

등의 정보를 Template 으로 관리하여 인스턴스를 생성할 수 있게 됩니다.

이렇게 Template 기능을 활용하면 인프라 구성에서 설정적용에 소요되는 시간을 절약할 수 있습니다.

Template 기는 사용을 위해

EC2 대시보니 – 인스턴스 – Launch Templates   메뉴로 이동합니다.

Create Launch template 버튼을 클릭합니다.





Template  이름과 버전을 선택 할 수 있습니다.

Source Template 을 사용하면 기존의 Template 구성을 수정하여 사용할 수 있습니다.

AMI ID , Instance Type , Key Pair 를 선택 할 수 있으며 입력하지 않으면 Template 에 포함하지 않습니다.



네트워크 인터페이스 추가 및 Storage 추가 Security Group 을 설정할 수 있습니다



Advanced details 항목에서

IAM Role , 종료방법, User Data 등 상세설정이 가능하며

마찬가지로 입력하지 않으면 미반영 상태로 저장 됩니다.




Create Launch Template 버튼을 선택하면

아래와 같이 탬플릿 생성완료 메시지가 표출됩니다.

Close 를 선택하여 종료합니다.




탬플릿이 생성되었습니다.



테스트를 위해 Template 선택 후

작업  - Launch instance from template 을 선택합니다.




Template 버전을 선택하면 Detail 설정을 확인할 수있습니다.

Template 생성시 설정했던 값들이 그대로 출력되는 것을 확인할 수 있습니다…

[반려동물 이야기] 고양이 성격 유형 5가지

이미지
1. 개냥이
이들은 집사의 무릎이나 배에서 식빵을 굽는 것을 좋아한다.  또 출근길을 배웅해주는 '출근 냥이',  현관까지 마중 나와주는 '마중 냥이'가 이 과에 속한다.    이들에게 가장 이상적인 집은 자신이 앉을 무릎이 많은 집이다.  기분 좋은 에너지가 넘치고  자신을 사랑해주는 가족들이 많다면 더욱 훌륭하다.  개냥이 는 언제나 자신의 턱을 긁어줄 사람을 찾아다닌다.

2. 사냥꾼 고양이
대부분의 고양이가 사냥하는 것을 좋아하지만,  사냥꾼 고양이는 좀 더 유별난 편이다.  다른 고양이가 두 발로 장난감을 잡는 것에 그친다면  사냥꾼 고양이 는 미친 듯이 장난감을 쫓아다니며 집착한다. 장난감을 이빨로 마구 물어뜯으며 놓지 않기도 한다.  이들에게 가장 좋은 환경은 샤낭거리가 많은 농촌이다.   파리나 새가 많으면 더욱 좋다.

3. 고양이의 고양이
사람보다는 고양이와  잘 지내는 유형이다.   아주 어린 시절부터  다른 고양이와 함께 자란  경우가 많다.  이들은 다른 고양이를  그루밍해주거나  자신의  얼굴을 다른 고양이 얼굴에 문지르는 것을  좋아한다. 종종 다른 고양이를 껴 안은  채 잠을 자기도 한다.

4. 까다로운 고양이
까다로운 고양이는 겁이 많고  주위 환경에 민감하다.   사람에 대한 경계가 심해  친해지는 데  시간이 오래 걸리기도 한다.   까다로운 고양이는 자신만의   공간을 좋아하고  독립적으로 생활한다.  사람과는 데면데면하게  지내는 게 보통이다.

5. 호기심 많은 고양이
호기심 많은 고양이는 특별한 DNA와  어린 시절 새로운 환경에 노출된 경험의 조합이다.  이들은 일단 새로운 것이 보이면 탐색하고 조사하려고 한다.  조그 마한 틈이 보이면 일단 머리를 들이밀고 보기도 한다. 박스나 핸드백, 쇼핑백 등은 이들이 가장 좋아하는 물건이다.     호기심 많은 고양이는 여러 사람이  드나드는 집이나  사무실에서도 잘 지낼 수 있다.  하지만 어디든지 몸을 넣어 보려고 …

[반려동물 이야기] 귀여운 고슴도치

이미지
아이프렌즈펫에도 고담이라는 귀여운 고슴도치 사진이 가끔 올라와요 ㅎㅎ
구경하려면 아래 배너를 클릭하세요~

[반려동물 이야기] 제1회 전국 집사능력고사

이미지
전국의 집사 여러분~ 이정도 문제는 자신있으시죠?
여러분들의 집사력은 얼마나 되는지 간단한 미니 퀴즈를 풀어보세요!

정답확인 바로가기 > http://bit.ly/2EMRLDR




정답확인 바로가기 > http://bit.ly/2EMRLDR

또는 앱스토어에서 '아이프렌즈펫' 검색 후 앱을 다운받으시면 공개피드에서 답을 확인하실 수 있어요!
고양이 꼬리 언어, 고양이 귀 언어, 고양이 언어, 고양이 언어 해석, 퀴즈

[실전 구글 통계] 1. 구글 통계(구글 애널리틱스) 기본 세팅하기

이미지
앱이나 웹 서비스를 런칭하고 그 서비스의 효과성, 사용성 등에 대해 간편하게 측정할 수 있는 많은 통계 도구들이 있습니다. 구글 애널리틱스는 그 중에서도 무료이면서도 막강한 기능을 제공하기 때문에 유명합니다.

(물론 구글에서는 각 웹이며 앱의 모든 자료를 수집할 수 있게끔 자사 툴을 공짜로 내어줌으로써 그 툴을 이용하는 모든 회사, 개인의 데이터를 들여다볼 수 있다는.. 어마어마한 이점을 누리고 있지만요. 어떻게 생각하면 소름끼치는 전략입니다 -_-;)

물론 웹 쪽에서는 정말 강력하지만 앱 쪽에서는.. 현재 아이프렌즈펫의 각 페이지, 버튼 등을 측정하게끔 심어놨는데요 웹에서만큼 편리한지는 아직 모르겠더라구요.

구글 통계를 잘 활용하여 어떤 분야에, 어떤 방안으로 활용할 수 있는지도 나중에 따로 포스팅하도록 하겠습니다. 오늘은 간단하게 구글 통계 기본적인 세팅 방법을 알아보겠습니다.

1. 먼저 구글 계정을 만듭니다. (계정이 있으신 분들은 패스하셔도 됩니다)
구글 회원가입하기

2. 방금 만든 계정으로 구글 통계에 로그인을 합니다.

https://www.google.com/intl/ko_KR/analytics/



이상하게도 구글에 로그인을 한 상태인데도 또다시 로그인을 하라고 합니다..;;
다시 한번 로그인을 눌러줍니다 ^^

3. 로그인한 화면에서 좌측 메뉴 중 '관리'를 클릭합니다



4. 계정 > 아래 셀렉트 박스를 선택해 '새 계정 만들기'를 클릭합니다.

5.
새 계정 추가 화면에서 웹사이트냐, 모바일 앱이냐에 따라 선택해서 맞는 정보를 입력하시면 됩니다.
저는 이번에는 웹사이트를 선택해서 진행하겠습니다.




마지막으로 [추적 ID 가져오기] 버튼을 클릭합니다.


6. 약관 화면이 뜨면 동의를 누르고 다음으로 넘어갑니다.

7. 다음과 같이 추적 코드가 완성되었습니다!


(위의 코드는 계정 가입 절차를 보여주기 위해 생성한 코드라서 실제로 사용하지는 않을 예정입니다)

이 화면이 뜨면 텍스트박스 안의 내용에 마우스로 한번 클릭, 전체 코드를 복…

angular4에서 외부 js파일 import 하기

안녕하세요. 남산돈가스입니다.

angular 기반의 웹을 구축하면서, 외부의 js 소스를 import하여 사용해야하는 경우가 생기는데요.

기존의 웹 개발 방식은 각각의 페이지 별로 <script src= "외부 js 주소">를 이용하여 손쉽게 외부 js파일을 import 해올 수 있었는데요.

angular와 같이 spa(Single Page Application) 기반의 단일 페이지 어플리케이션에서는 각 컴포넌트에 대한 html 소스와 로직이 모두 분리되어 있기 때문에 외부 js 파일을 위와 같은 <script>태그로 인식하지 못한다는 문제점이 있었습니다.

angular 프로젝트를 진행 중, 카카오, 페이스북과 같은 오픈 API를 이용하기 위해서는 각각 제공하는 외부 js파일을 import하여 사용해야하는 경우가 이에 해당했습니다.

이를 해결하기 위해 다음과 같은 방법을 이용했습니다.

import{
Component,
    Input,
    ElementRef,
    OnInit,
    ChangeDetectionStrategy,
    Output,
    EventEmitter
} from '@angular/core';

(2)declare var daum: any