분류 전체보기110 cookiecutter로 django 프로젝트 생성 cookiecutter를 이용해서 django 프로젝트를 쉽게 생성할 수 있다. 동작 방식은 다르지 않지만 파일 구조를 더 효율적으로 구분했기 때문에 기본으로 생성하는 방법보다 사용하기가 편리하다. $ pip install cookiecutter $ cookiecutter https://github.com/pydanny/cookiecutter-django coockiecutter로 프로젝트를 생성하면 수십 가지 질문을 하며 다양한 설정 파일을 쉽게 지정할 수 있다. project_name [My Awesome Project]: project_slug [my_awesome_project]: description [Behold My Awesome Project!]: author_name [Daniel Roy.. 2020. 6. 11. react-redux 사용법 부모-자식으로 이루어진 복잡한 컴포넌트들 사이에 이벤트를 주고받는 과정을 구현한다고 생각해보자. props의 callback으로 자식은 부모 컴포넌트에게 이벤트를 전달하고, 부모는 다른 자식에게 state 변경을 통해 이벤트를 전달한다. 어떤 상태 값과 관련이 있는 컴포넌트만 신경을 쓰면 좋겠지만 그 둘을 연결하는 모든 컴포넌트를 거쳐야 한다. 성능을 떠나서 반복적인 작업에 골치가 아프다. redux redux는 컴포넌트 전역에서 관리할 저장소를 만든다. 컴포넌트 간에 이벤트 전달을 위한 코드를 추가할 필요가 없다. export default reducer(function(state = { count: 0 }, action) { switch(action.type) { case 'INCREMENT': re.. 2020. 5. 17. React class vs function component 차이점 이전에 함수형 컴포넌트는 기능상 부족했던 부분이 있어서 특정 형태로만 쓰였다. 클래스 컴포넌트의 state, lifecycle 등의 기능을 구현할 수 없었는데, 이런 부족한 기능을 구현할 수 있는 방법이 추가되면서 기능상의 차이점은 거의 없어졌다. props 두 컴포넌트 모두 props는 바로 참조할 수 있다. 클래스 컴포넌트에서는 전달한 props 값을 this.props을 통해 접근한다. class ClassComponent extends Component { render() { return ( count: {this.props.count} ) } } 함수형 컴포넌트에서는 전달한 props 값을 함수의 parameter로 받는다. function FunctionComponent(props) { ret.. 2020. 5. 17. AWS CodePipeline으로 CI/CD 구축하기 CodePipeline을 사용하면 repository에 코드를 푸시했을 때 빌드, 테스트, 배포까지 CI/CD를 한 번에 관리할 수 있다. 예제 코드는 AWS fargate 사용법에서 만들었던 fargate 코드를 기반으로 한다. code repository는 CodeCommit, 빌드는 CodeBuild, 배포는 Amazon ECS를 사용한다. IAM IAM -> Security credentials -> HTTPS Git credentials for AWS CodeCommit에서 credential을 생성한다. CodeCommit credential이 있으니 이제 CodeCommit에서 repository를 생성하고 git clone을 받을 수 있다. 위에서 받아온 자격 증명을 유지하기 위해 clon.. 2020. 5. 12. AWS fargate 사용법 aws fargate는 ec2 인프라를 신경 쓸 필요 없이 container 배포 관리를 해준다. 따라서 기존 ECS와 달리 cluster의 리소스 관리를 안 해도 된다. 이런 serverless 특성으로 ECS와 lambda 중간쯤 위치한 서비스다. 요금도 lambda와 같이 초 단위로 사용한 만큼 과금한다. 기본 hello server const Koa = require('koa'); const app = new Koa(); app.use(ctx => { ctx.body = 'Hello'; }); app.listen(4000, () => { console.log('listening to port 4000'); }); node로 "Hello"만 응답하는 간단한 서버를 만들었다. FROM node:12 .. 2020. 5. 12. Docker network mode docker container는 격리된 환경에서 실행되지만 각자의 network가 있다. docker network는 다른 container와의 연결, host와의 연결, 더 나아가 다른 host의 container의 연결까지 관리한다. $ docker network ls NETWORK ID NAME DRIVER SCOPE 249b79cb7a4e bridge bridge local b53c426584d6 host host local 667cc038310f none null local docker network는 기본으로 bridge, host, null 등 3가지 종류가 자동으로 생성된다. Bridge container를 생성할 때 기본 네트워크 옵션이다. 자동으로 생성된 default bridge의 이.. 2020. 5. 7. 이전 1 ··· 4 5 6 7 8 9 10 ··· 19 다음