본문 바로가기

전체 글

(20)
[Ruby] Rails with Devise + MyPage 1. Gemfile에 Gem 추가 gem "devise" 추가된 gem 설치 bundle install 2. Devise 설치  rails g devise:install 3. User 모델 생성 (devise 기반) rails g devise User 4. login/register view 생성 (devise 자체 view & controller "rail routes를 통해 확인 가능") rails g devise:views 5. 컨트롤러에 유저 인증 제한 박기 (필요시 사용 가능인데.. 안 씀 ㅎㅎ..) before_action :authenticate_user! 6. html.erb에 유저 인증 여부 제한 박기(이 부분은 devise  쓸 때만 보이는 부분이에요~)  ~~ ~~ 7. 회원..
[Python] gRPC server run with database 서버 간, 또는 유저 간에 통신할 때, 저는 보통 REST API 방식을 활용했고 그것밖에 몰랐습니다. 하지만 gRPC라는 툴을 통해 스트리밍에 특화된 서비스의 능률을 높일 수 있다는 소식을 듣게 됐습니다. 여기서는.. streaming 통신까지 다루진 않는데,, gRPC 서버 하나 세우고 거기서 연결된 DB를 처리하도록 해보았습니다.. ※ 배포도 잘 돼요! 네트워크, IP 설정만 꼼꼼히 신경쓰면 외부에서도 통신되게 할 수 있습니다!(보안 이슈는 잘 모르겠어요,,)0. 프로젝트 디렉토리 구조  1. 프로젝트 폴더 생성 mkdir projectcd project 2. 파이썬 가상환경 생성 (전 파이참으로 생성) 및 진입*적절한 위치에 가상환경 파일을 놓으면 파이참이 알아서 찾아서 진입해줘욤 python -..
[Docker] 도커에 관한 이야기 ※ 이 포스트는 아티클보다는 감상문 비슷함을 밝힙니다. (나중에 보완할게요..) Let's go~!~! Warming up: End to End 간의 정보전달은 어떻게 이루어질까?.??* NIC = Network Interface Card* APP에 있는 파란 반원은 socket임 일반적으로 정보의 전달은 OSI 7계층의 순서에 따라 정보의 전달이 이루어 진다.컴퓨터는 위의 구조에 따라서 각각의 계층이 해석할 수 있는 형태의 데이터로 전달한다.최종적으로는 010101101.. 과 같은 전기적 신호가 오갈 것이다. 👍👍 그렇다면..? 여기서 흔히 쓰는 가상머신(VM)을 추가하면 어떻게 될까..?User가 VM을 돌리면 여느 APP들과는 달리 중첩된 컴퓨터의 형태를 가진다.통신은 아까의 상황과 비슷하게 ..
[Ruby] Linux에서 Ruby on Rails 깔아보기.. Ruby on Rails에 대한 한국어 자료를 찾아보다 된통 당했습니다..자꾸 오류가 나서.. 한참을 돌아왔는데.. 역시 영문 최신판이 베스튼 거 같습니다..혹시 이 글을 볼 때.. 6개월이 지나있다면.. 재빨리 뒤로 가기를.. 눌러주세요;; (당신이라도 살아야 해..) 환경 설정 VMware에서 Ubuntu 22.04.1을 새로 깔고 시작했습니다. (해파리 바탕화면) 그리고.. sudo apt updatesudo apt upgradesudo reboot sudo apt upgrade  본격적으로 시작하기 전에.. Ruby on Rails의 철학을 다같이 읊고 가겠습니다..하나..둘.. COC!! COC(Convention Over Configuration / 설정보다 관습)가 뭔데..?개발의 방법은 다..
[Linux] Kernel Compiling 새 커널을 입혀보자!! 예전에 8시간 걸려서 커널 컴파일을 했던 기억이 있는데.. 이번에 다시 (해야)할 기회가 생겼다.하다가 너무 고생해서 (다시는 고생 안하도록) 성공담을 써보려 합니다.. 흑흑😭 커널 파일 다운로드 및 작업 공간 정리(Before Compiling) 일단 kernel archive로부터 받고 싶은 버전의 커널을 다운 받는다.(검색창에  kernel archive 치고 들어가면 됨 ㅎㅎ)  저는 최신 판 6.0.6을 다운 받아서 컴파일해보겠습니다 "도전" 일단.. 현재 Ubuntu는 20.04 버전에.. 커널은 5.15.52 버전입니다..  그 다음에 Download 폴더에서 다운받은 커널 압축파일 열어주시고.. tar -xvf  /usr/src에서 작업을 진행하기 위한 조치를 취해준다..(왠지는 모름....
[Python] Flask에서 Redis 사용하기 ※ 개발 환경은 Linux에서 진행했습니다. Linux가 Redis 굴리기 편하실 거에요.. Step1: Redis 설치먼저 Redis를 설치 한다. 검색창에 Redis download를 치면 각 운영체제에 맞는 다운로드 페이지가 뜬다. 다운 받은 페이지에 들어가서..tar -xvf redis-7.0.5.tar.gzcd redis-7.0.5make이렇게 해주면 Redis를 사용할 수 있답니다~~make 명령어가 성공 했다면 아래와 같은 메세지가 아래쪽에 나타난다.Hint: It's a good idea to run 'make test' ;) ※ 잠깐!!😮make 명령어 했는데 오류가 나요 ㅠㅠㅠㅠ 라는 말이 하고 싶으셨다면,, 아래의 명령어를 실행해 봅시다!sudo apt install makesudo..
Docker란 무언인가.. (What is Docker??) Docker(도커)란 무엇일까.. 왜 사람들이 Docker에 열광하고 알고 싶어할까..  Docker의 역사마이크로서비스가 물리적으로 동작하던 옛날에는 서비스가 확장됨에 따라 유지보수의 문제, 서버구조 문제가 있었다."가상화 기술"은 그 마이크로서비스를 하나의 서버를 통해 구현할 수 있게 해주었고,그 기술에는 2가지 갈래를 대표적으로 설명할 수 있는데 그 중 하나가 VM, 다른 하나가 Docker다. - 참고로 VM은 Oracle Virtual Machine, VMware 같은 애들이다- VM vs Docker그렇다면 이 둘은 어떤 차이가 있을까※ 빠른요약Docker는.."비용이 싸다""부팅이 빠르다""호환성이 좋다" - 컨테이너 간의"보안이 준수하다""Docker is a lightweight VM" ..
[C++] Static Polymorphism & Dynamic Polymorphism 정적 다형성과 동적 다형성다형성이라.. 너무 생소한 단어다.이런 기본적인 개념을 들어본 적조차 없다는 게, 베이스가 숭숭 뚫려있다는 약점을 방증하는 것 같다..근데.. 다형성..? 다형성,, 뭔가 다양성(diversity)이랑 비슷한 느낌이다. 일단 구글링을 통해 찾은 다형성의 정의는 이렇다.다른 타입이 같은 인터페이스를 지원하는 것  ㄷ ㄷ ㄷ.. 아무리봐도 한눈에 안들어 온다.. 그래서 스스로 결론 내린 다형성의 정의는코딩의 편의를 위한 함수 정의의 다양성 존중또는코딩의 편의를 위한 함수의 유연성으로 생각했다.. 정적 다형성(Static Polymorphism)의 경우..그럼 정적 다형성이란 뭘까..? 다른 블로그를 찾아보면정적 다형성은 컴파일 단계에서 요소들이 바인딩(binding)되는 것이라네요~..