Titanium 개발. 모바일 개발 tishadow 로 편하게 하자

개발과정

코딩 => 빌드 => 디바이스 확인:(에뮬 or 폰)

의 과정을 거친다.

Titanium 개발시 빌드 과정을 조금이나마 줄일 수 있다.


관련자료

http://tidev.tistory.com/27
http://codejong.net/post/51276937188/tishadow
http://tidev.kr/t/tishadow/306


설치는 쉽다. npm 패키지 인스톨하면 된다.

npm install tishadow -g

쉘상에서 ts 명령을 내려보면 정상적으로 사용준비가 된 것이다.


titanium 에서 --shadow 옵션이 되게 하기 위해. 다음 명령을 내려준다.

$ ts express
[INFO] Titanium CLI hook installed. Now use the `--shadow` flag when buliding your project for express tishadow development


TI sutio 에서 프로젝트를 만들고, 워크스페이스에서 해당 프로젝트 위치로 이동해서 다음과 같은 명령을 내려준다.

ti build -p android -T device --shadow

다음과 같은 에러 메시지가 나온다면.

[INFO]  Building App...
[INFO]  Starting TiShadow server
[INFO]  Starting Watch...
[ERROR] TiShadow watch exited.


위와 같은 에러가 안나야 정상이다. 뭔가 꼬인 것 같다.
일단 수동으로 처리하는 방법으로 진행한다.(http://blog.1day1.org/523)

=> 이 문제의 해결방법 ( http://blog.1day1.org/533 )

위 에러의 상세내용은 다음과 같다.

⟫ ts @ run -u

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: watch ENOSPC
    at errnoException (fs.js:1024:11)
    at FSWatcher.start (fs.js:1056:11)
    at Object.fs.watch (fs.js:1081:11)
    at Gaze._watchDir ({홈}/lib/node_modules/tishadow/node_modules/gaze/lib/gaze.js:279:30)
    at {홈}/lib/node_modules/tishadow/node_modules/gaze/lib/gaze.js:336:10
    at iterate ({홈}/lib/node_modules/tishadow/node_modules/gaze/lib/helper.js:52:5)
    at Object.forEachSeries ({홈}/lib/node_modules/tishadow/node_modules/gaze/lib/helper.js:66:3)
    at Gaze._initWatched ({홈}/lib/node_modules/tishadow/node_modules/gaze/lib/gaze.js:332:10)
    at Gaze.add ({홈}/lib/node_modules/tishadow/node_modules/gaze/lib/gaze.js:167:8)
    at new Gaze ({홈}/lib/node_modules/tishadow/node_modules/gaze/lib/gaze.js:68:10)

위 부분때문에 정상실행되지 않는다.





반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,

ubuntu 14.04 의 byobu (screen) 가 ctrl-a 이 안 먹는다.

byobu 를 실행시키고 ctrl-a 를 눌렀을때

다음처럼 화면이 나올때 1/2 아무거나 입력해도 안되고 같은 화면만 나오는 문제가 있다.

직접 콘솔상에서 byobu-ctrl-a 를 해보면.

$ byobu-ctrl-a
failed to connect to server

Configure Byobu's ctrl-a behavior...

When you press ctrl-a in Byobu, do you want it to operate in:
    (1) Screen mode (GNU Screen's default escape sequence)
    (2) Emacs mode  (go to beginning of line)

Note that:
  - F12 also operates as an escape in Byobu
  - You can press F9 and choose your escape character
  - You can run 'byobu-ctrl-a' at any time to change your selection

Select [1 or 2]: 1

/usr/bin/byobu-ctrl-a: 151: /usr/bin/byobu-ctrl-a: Syntax error: Unterminated quoted string


위처럼 에러가 발생한다.

직접 byobu-ctrl-a 를 수정한다.

115                 case "$BYOBU_BACKEND" in
116                         screen)
117                                 $BYOBU_SED -i -e "/^register x /d" -e "/^bindkey \"^\"/d" -e "/^escape /d" "$keybindings"
118                                 echo "escape \"^${KEY}${key}\"" >> "$keybindings"
119                                 echo "register x \"^${KEY}\"" >> "$keybindings"
120                                 echo "bindkey \"^${KEY}\" >> "$keybindings"
121                                 $BYOBU_BACKEND -X at 0 source "$BYOBU_CONFIG_DIR/profile"
122                         ;;

120 라인부분을 보면  " => 가 빠져있다.

120                                 echo "bindkey \"^${KEY}\" >> "$keybindings"

120                                 echo "bindkey \"^${KEY}\"" >> "$keybindings"


수정 후 저장하고 다시 해보면 정상동작한다.

저 스크립트는 최종적으로. .byobu/keybindings.tmux 파일에 설정이 저장된다.

$ cat .byobu/keybindings.tmux
unbind-key -n C-a
set -g prefix ^A
set -g prefix2 ^A
bind a send-prefix

에러가 나서 계속 같은 화면이 나왔던 것이다.





반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,

최근에 바뀐것 같다.

로그인 화면.


다음 아이디로도 로그인 할 수 있나보다.


그동안 티스토리가 방치된 느낌이이었는데.

뭔가 다음에서 티스토리를 신경쓰려고 하는것인가?


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,

docker 를 어떻게 하면 잘 활용할 수 있을까?

여러가지 방향을 생각해본다.

vagrant 와는 다르게 linux 전용이라 구성에 제약이 따른다.


1. 최대의 성능.

배포용 : 개발머신(linux / docker 호스트)  => docker 이미지

개발용 : 개발PC(win/mac/linux) => 개발환경(linux / docker) + docker pull  <= 배포 이미지

  [필요사항] 배포용 머신이 팀 또는 개인이 보유하고 있어야 한다.

  [장점] linux 머신에 docker 를 바로 세팅해서 최대 성능을 낸다.
  [단점] 리눅스 환경의 개발PC 가 아니면 원격으로 접속해서 개발해야 한다.


2. 관리의 편의.

배포용 : 개발머신(docker 호스트)  => docker 이미지

개발용 : 개발PC+개발환경[ vagrant (docker) ] + docker pull  <= 배포 이미지

  [장점] 개발PC 의 OS 에 상관없이 개발환경을 세팅가능하다.(win / mac)
  [단점] vagrant(vm) 을 활용하기 때문에 성능저하가 있다.



# 개발이 완료된 후 서비스용 설정

기본 구성은 다음과 같이 하려 한다.

서비스서버(docker) + docker pull  <= 배포이미지

서비스서버 를 AWS / DigitalOcean / GoogleCloud 등의 가상서버로 세팅해도 되고, 서버호스팅의 리얼서버를 이용해도 된다.

클라우드는 성능저하가 있겠지만, 빠른배포 와 편의성을 잘 따져보고 결정하면 되겠다.

충분한 테스트를 해보고 결정하는 것이 좋겠다.


디지털오션쪽에 2개월정도 무료사용가능하니 먼저 테스트해봐야 겠다.
(512M 짜리 * 2개 => 1개월 , 4개 => 2주? , 8개 => 1주일정도? )


(무료 사용은 => 링크 참조)

테스트 해보고 사용해도 되겠다 판단이 되면, Core 를 늘려서 서비스용으로 활용해도 되겠다.


# 서비스 시나리오.

서비스용으로 10대의 클라우드 서버에 배포하는 시나리오를 만들고 테스트 해봐야 겠다.

그러고 보니 docker 모니터링툴도 필요하겠다. (관련 자료도 찾아봐야 겠네)


자동화에 필요한 사항은 다양한 시나리오 사례가 만들어지면, 재미있을 것 같다.


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,

docker 를 우분투에 설치해봤다. 이제 기본 컨테이너 환경을 구성해보자.

- Centos 를 테스트로 구성해본다.

docker search centos

를 해보면, centos 관련 저장소에 있는 이미지들의 리스트를 보여준다.(무지 많다.)

- 아래 처럼 리스트가 많이 나온다. (docker hub 에 등록된 이미지 인듯함)

- 맨 위의 공식 이미지로 해보자.

docker pull centos

- 다음처럼 이미지를 다운받는 화면을 볼 수 있다.


- 완료가 되면 docker 컨테이너 환경으로 들어가 본다.

기본 호스트로 사용하고 있는 구조와 다르다. ubuntu 안에 centos 의 가상환경을 만들어 준것이다.


- 설치된 이미지를 확인해본다.

# docker images

다음 처럼 로컬에 설치한 이미지들을 볼 수 있다.

REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
ubuntu              14.04               e54ca5efa2e9        2 days ago          276.1 MB
centos              centos6             0c752394b855        11 days ago         124.1 MB
centos              latest              0c752394b855        11 days ago         124.1 MB
centos              6.4                 539c0211cd76        14 months ago       300.6 MB



참조 : http://blog.nacyot.com/articles/2014-01-27-easy-deploy-with-docker/


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,