본문 바로가기

개발관련

(16)
Docker + ROR + Nginx 에 SSL 적용하기 기본적으로 이미 서비스를 도커를 이용해서 구성 했을 경우를 전제로 한다. 서버 구성서버에는 nginx, 레일즈가 각각 도커로 구성되어 있다. 먼저 ssl을 구매후 pem 파일을 만들어둔다. 참고 : https://webisfree.com/2017-12-16/nginx에-ssl-사용하는-방법-comodo-ssl-인증서-설치하기https://www.securesign.kr/guides/NGINX-SSL-Certificate-Install 파일 셋팅위의 과정을 실행하면 SSL 구매 후 받은 파일을 합친 파일 1개와 private key 파일 하나가 있을것이다.본인은 해당 파일을 레일스 프로젝트 폴더 config 안에 넣은 후 도커로 nginx를 셋팅시에 서버에 복사하는 방법을 썼다. 이유:1. 인증서를 갈때마..
디지털 오션 - 우분투에 새 유저 추가 후 ssh 셋팅 할것서버를 셋팅하면 기본 아이디는 root이다. 보안상 안좋으니 다른 아이디로 바꾸고 ssh 로그인이 되도록 해보자 환경우분투 16.04 내용1. 먼저 서버에 접속 후 새 유저를 만든다. $ adduser newuser 당연한 이야기지만 여기서 newuser는 본인이 생성하고자 하는 유저의 이름이다. 유저를 생성할때 이것저것 물어보는데 비밀번호만 대충 입력하고 나머지는 킵해도 된다. 2. 그런다음 새로 만든 유저에 루트 권한을 추가한다. $ usermod -aG sudo newuser 하는김에 언어 설정을 한다 $ vi /etc/default/locale 다음 파일을 찾아 아래와 같이 수정한다.(각 행의 마지막칸에 빈칸이 포함되지 않도록 한다) LANG="en_US.UTF-8" LANGUAGE="en_U..
개발 문서, 어떻게 작성하는게 좋을까? 나는 나름 꼼꼼이라면 한 꼼꼼한다고 자부한다.정리도 나름 잘한다고 생각한다. 언제나 프로젝트를 진행할때는 깃허브의 위키에 개요나 내용을 적어두고 시작하고 했었다. 문제는 엄청나게 안정화된 프로젝트가 아니라면 수정해야할 사항이 넘처난다는 것이다.때로는 기존에 작성된 내용을 통체로 갈아 엎어야 할때도 많다. ㅜㅜㅜㅜ 그래서 이제는 위키를 버리고 이슈를 사용중이다.이슈를 이용해서 변경사항의 히스토리를 기록하는 것이다. 개발이라는 것은, 결국 프로젝트의 실시간 진화(?)에 가깝다.멈춰있는 프로젝트란 존재하지 않는다. 점점 쓸모없어질 것이니까 말이다. 중요한점은 히스토리화 하고, 나중에 잘 찾을 수 있어야 한다는 것이다.그런점에서 깃허브는 빗버킷보다는 '보기가 편하다' 개인적으로. 고정된 문서인 위키 > 이슈로 ..
맥 한대에서 두개의 깃허브 계정 사용해서 작업하기 어찌어찌 하다보면 한대의 맥에서 두개의 깃허브 계정을 사용해야 할 때가 있다. http://mygumi.tistory.com/96 그럴땐 위의 링크를 참조! 간단하게 요약하자면, 먼저 ~/.ssh 폴더의 config 파일을 수정한 후에,해당 프로젝트의 .git 폴더에 있는 config 파일을 같이 수정해 줘야 한다.
테스트 코드 작성의 가장 큰 장점 테스트 코드를 작성해야 하는 가장 중요한 이유는,테스트 코드의 유무가 바로, 시스템 리팩토링의 결정적인 역할을 담당한다는 점이다. 아주 간단하게 설명할 수 있다. 다음중 리팩토링하고 싶은 시스템은??? 1. 양질의 테스트 코드가 존재하는 시스템2. 테스트 코드가 없는 시스템
테이블을 생성할때 상태(state) 설정에 대한 고찰 서비스를 개발하다보면 모델 생성을 위한 테이블 생성시 모델의 상태 항목을 추가할 경우가 많다. 보통은 boolean형으로도 충분한 경우가 많지만 또 많은 경우에 true, false 외에 제 3의 상태가 필요한 경우가 많다. 그렇다고 특정경우에 boolean, Integer를 병행하면 코드의 일관성이 깨져서 좋지 못한 방법이 된다.(쿼리를 날릴때마다 해당 테이블의 상태값이 Boolean인지 Integer인지 생각하는건 좋지 않다.) 처음부터 Integer로 하는 것이 좋다. 아마도...
디자인 패턴과 개발 방법론의 현실 약 두달전쯤해서 최신(?) 디자인 패턴과 개발 방법론으로 심혈의 기울여 적용한 신규 프로젝트가 하나 있다.....만.사실 잘 안팔려서 잠깐 두달정도 잊고 살다가, 이번에 신규 업데이트 관련해서 수정할게 있어서 다시 소스를 열어 봤다..............근데 잘......모르겠음 최근들어 고민하는 것이, 과연 어떤 코드가 좋은 코드인가 라는 질문이다. 인터넷에 즐비한 기교를 가지고 구문을 최소화 하는 것이 좋은 코드인가.최신 방법론과 디자인 패턴을 적용한것이 좋은 코드인가. 나름의 결론은 보기 편한 코드가 좋은 코드이다. 흐름이 존재하고, 그 흐름을 따라가면 프로그램의 흐름을 이해할 수 있는 것이 좋은 코드이다. 그 쉬운 흐름을 만들기 위해 사용하는 것이 디자인 패턴이고, 개발 방법론이다. ps. 간만..
DB - SQLite, Mysql, MariaDB 초당 50개가 insert되는 시스템을 구축 중이다.처음에 내가 선택한 DB는 SQLite. 따로 설치하지 않아도 걍 되는 그것이다. 이것이 재앙의 시작이었다. SQLite는 초당 50개의 insert를 그럭저럭 소화하는듯이 보였다.이모티콘도 알아서 잘 기록했다. 근데 insert 도중에 무언가를 할려면 DB가 넘 바빠서 못하겠어. 20000 이라는 건방진 메세지를 남기고 로직을 종료해 버렸다…순진한 나는 코드를 개선해서 이 문제를 해결할려고 했다. ... 그리고 당연히 해결하지 못했다…..고민끝에 나는 귀찮지만 Mysql을 쓰기로 했다.(사실 이때 동료 개발자가 MariaDB를 쓰라고 권유했지만 이미 타이핑을 brew install mysql 을 쳐서 말을 듣지 않았다……그리고 이것도 나중에 재앙이 되..