Angular 시리즈 첫 포스트 시작합니다.

 

이번 포스트는 https://github.com/angular/angular-cli 를 참고해서 정리했음을 먼저 알립니다.

 

Angular CLI를 설치하기 앞서서 Node.js 가 필요합니다.

Node의 모듈로 Angular CLI가 작동하기 때문입니다.

Node 및 NPM의 설치 방법은 여기서는 따로 정리하지 않겠습니다.

(구글신에 이미 답이 많습니다. 검색하면 다 나와요.)

 

NPM까지 설치를 마치셨다고 가정하고 시작합니다.

터미널에서 다음과 같이 입력합니다.

$ npm install -g @angular/cli

(-g 옵션은 잘 아시리라 생각합니다.)

이러면 설치 끝입니다.

 

사용법을 시작하기 앞서 명령어가 어떤게 있는지 보겠습니다.

$ ng help

 

너무 많아서 보기도 힘드네요.

쭉 보시면 아시겠지만 명령어 자체 보다는 파라미터에 대한 설명이 대부분이죠?

ng 라는 cli 실행 프로그램 안에서 실행할 수 있는 명령은 다음과 같습니다.

 명령 설명 비고
 ng new angular 프로젝트의 default 구성 및 세팅을 생성합니다. 
 ng serve angular 프로젝트를 구동합니다. 
 ng generate angular 프로젝트 안에서 사용할 모듈을 생성합니다. 
 ng build app을 빌드할때 사용합니다. react-native 등을 연동할때 사용하는 것으로 보이네요. 
 ng completion ng 명령어 실행시 자동으로 실행되는 스크립트를 지정하는 걸로 해석됩니다만, 정확하지는 않습니다. 
 ng doc 입력한 키워드에 대한 angular 공식 API 문서를 브라우저에 띄워줍니다. 
 ng e2e 프로젝트를 e2e 모듈로 테스트 할때 씁니다. 
 ng eject app을 추출하고 설정 스크립트까지 만들어준다고 합니다. ng build와 같이 하이브리드 개발 때 사용하는 옵션인듯 합니다. 
 ng get Angular CLI의 global 설정에서 입력한 키워드에 해당하는 키의 값을 보여줍니다. 
 ng help 도움말 기능입니다. 그냥 치면 위와 같은 참사(?)가 일어나므로 ng help <명령어> 같은 방식으로 입력합니다. 
 ng lint lint라는 단어 자체가 이해가 안되서 이건 뭔말인지 모르겠네요;;;;; 
 ng set Angular CLI의 global 설정을 변경할 때 사용합니다. 
 ng test 프로젝트에서 단위 테스트를 진행할때 사용됩니다. 
 ng version Angular CLI의 버전을 출력합니다. 
 ng xi18n source code에서 i18n 타입 메시지를 추출할때 사용합니다. 

 

일단 프로젝트를 생성해줘야 겠죠?

다음 명령어를 입력합니다.

$ ng new first-app

이런식으로 쭉 만들어졌네요.

 

그럼 바로 돌려보겠습니다.

다음 명령어를 입력합니다.

$ cd first-app; ng serve --host 0.0.0.0 --open

브라우저에서 잘 뜨는지 보겠습니다.

 

» 프로젝트 실행 명령어에서 파라미터 중어 --host 0.0.0.0 이 있을겁니다.

모든 IP주소에서 들어오는 요청을 받겠다는 것으로 이해하시면 됩니다.

저 옵션을 생략할 경우 localhost 값이 default여서 AWS 등에서 테스트 하시는 경우 접속이 안된 것처럼 보일수 있습니다.

만약 요청받는 IP영역을 제한하고 싶으시면 네트워크의 게이트웨이 영역에 해당하는 IP주소를 찾아서 0.0.0.0 대신 입력하시면 됩니다.

 

2편에서 이어서 진행하겠습니다~

Posted by kevin.jeong.
,

퇴근 안내 음악이 나오고 한두 분씩 "내일뵈요~" 라고 인사하고 퇴근할때

SM 파트에 있는 저는 전혀 기쁘지가 않죠.

오늘 수정한 소스를 운영서버로 수동배치 해놓고 재부팅 해야 하는데 그 시스템을 아직도 쓰는 분들이 있거든요..

그때 문득 "아! 이런걸 자동으로 해주는게 분명이 있었지!!" 라는 생각이 들어서 외부망 다 막힌 환경에서 열심히 아이폰으로 검색했네요.

 

이 작업 스케줄러는 윈도우와 리눅스(유닉스는 물론이고 macOS에서도 터미널로 사용가능함 mac이 유닉스 기반이자나...) 환경에 모두 있습니다.

리눅스에서는 crontab이라는 이름으로 터미널 환경에서 명령어 입력해서 사용가능하고

윈도우에는 '작업스케줄러'라는 이름으로 검색해서 사용할 수 있습니다.

 

crontab이 옵션도 다양하고 터미널 환경이어서 저의 호기심을 자극합니다만

실제 SM환경이면 거의 윈도우 서버일테니 작업 스케줄러를 정리하겠습니다.

 

작업 스케줄러 찾는 위치

1. 제어판 > 관리 도구 > 작업 스케줄러

2. 윈도우 키 + Q 혹은 실행 창 실행 후 '작업 스케줄러' 입력

 

찾으셨으면 아래와 같은 창이 뜰겁니다.

 

윈도우는 환경설정이 거의 다 GUI로 되어 있죠.

그러므로 몇번 클릭클릭하면 다 됩니다.

 

근데!! 다 왔더니 프로그램을 지정하라고 나오네요..? 명령 몇개 해야 되는데..?

그럴때 사용하는게 바로 .bat 파일 입니다. 배치 파일이죠.

 

이 배치 파일은 윈도우 커맨드라인 명령들을 저장한 텍스트 파일입니다.

이걸 작성해서 실행하면 작성한 내용을 라인 단위로 읽어서 커맨드라인에 입력-실행해주죠.

 

저같은 경우는 오늘 수동배포할 파일이 한개라서 간단히 이런 식으로 짰네요

copy c:\xxxxx\xxxxxx\대기목록\abcdClass.class c:\프로젝트폴더\WEB-INF\classes\xxx\xxxx\xxx\abcdClass.class

sc stop "Tomcat7"

sc start "Tomcat7"

 

첫째줄은 파일 복사 명령이고 아래 두줄은 tomcat 서비스 껏다 켜라 입니다

참 쉽죠~? (구닥다리 환경이라 ant도 maven도 없어........ㅠㅠ)

 

배치 파일 작성하는 방법은 dos 명령어 검색해셔서 쭉 작성하시는걸 기본으로 해서 검색하시면 나옵니다.

정확히는 배치 스크립트 언어하고 dos 명령어를 같이 쓰는 형식이고, 라인 실행하다가 스크립트 문장 나오면 그에따라 실행 라인이 제어되는 방식입니다. 이부분은 구글신에 검색하면 많이 나옵니다~

 

이제 배치파일 작성했으니 스케줄러를 등록해보죠!

1. 작업 스케줄러 메인 화면 우측에서 "기본 작업 만들기..." 를 클릭합니다.

 

2. 작업의 이름과 설명을 입력합니다. '다음'을 클릭합니다.

 

3. "작업을 언제시작하시겠습니까?" 라는 질문에 원하시는대로 선택하고 '다음'을 클릭합니다.

 

3-1. 위에서 매일/매주/매월/한번 중에 하나를 선택하셨으면 작동시점을 지정하는 화면이 나옵니다. 지정하시고 '다음'을 클릭합니다.

 

4. 어떤 동작을 사용하시겠냐고 묻는데, 배치 작업 지정할거니까 바로 '다음'을 클릭합니다.

 

5. 아까 봤던 화면이죠? 찾아보기 버튼 클릭해서 작성하신 배치파일 등록하고 다음 누르시면 됩니다.

 

6. 위에서부터 쭉 작성한 내용이 정리되서 나옵니다. 확인하시고 이상없으면 마침 누르시면 됩니다.

 

7. 등록한 작업 스케줄은 메인화면 좌측의 '작업 스케줄러 라이브러리'를 클릭하면 표시됩니다. 아래와 같이 나옵니다~

 

이상으로 작업 스케줄러 정리를 마칩니다~

Posted by kevin.jeong.
,