본문 바로가기

server 가지고놀기6

REST , RESTful API가 무엇일까? REST는 Representational State Transfer라는 용어의 약자이다. 직독하면 표현적인 상태 전송이다. TTP/1.0, 1.1 스펙 작성에 참여했었고 아파치 HTTP 서버 프로젝트의 공동설립자이기도한 로이 필딩의 박사학위 논문에서 소개된 아키텍쳐이다.(주의. 표준은 아니고 가이드라인이다.) REST의 조건 client-server 서버는 API를 제공, 클라이언트는 인증 등 상태를 가지는 것들을 직접 관리한다. 서버는 자원제공, 클라이언트는 자원 요청을 하는식의 역할이 확실하게 구분되어 상호의존성이 줄어들게 된다. stateless 클라이언트와 서버의 통신에는 상태가 없어야 한다. 서버는 클라이언트의 상태를 모르고 모든 요청이 필요한 정보를 전부 가지고 있어야 한다. 로그인등의 기능을.. 2021. 3. 25.
Portainer로 편하게 Docker 관리하기 Portainer는 Container관리를 쉽게 하기 위한 툴이다. 서버를 자주 만지고 자동화를 하다보면 도커를 많이 만지게 된다. 커멘드로 사용해도 충분히 잘 활용할 수 있지만 GUI로 관리해주는 Portainer라는 서비스를 사용하면 훨씬 더 편하게 도커를 관리할 수 있다. Portainer 사용해 보기 설치하기 sudo docker run \ -d -p 9000:9000 \ --name=portainer \ -v /var/run/docker.sock:/var/run/docker.sock \ -v portainer_data:/data \ --restart=always \ portainer/portainer 도커를 설치한 후 위 명령만 내리면 Portainer를 사용할 수 있다. 세팅하기 http://.. 2021. 1. 4.
Ubuntu에 Docker 설치하기 Docker가 뭔가요? Docker는 컨테이너 기반의 오픈소스 가상화 플랫폼이다. 기존에는 여러 환경을 구성하려면 OS를 가상화 하여 세팅을 해왔다.(ex. Vmware, VirtualBox) 하지만 이는 매우 무겁고 느려서 비효율적이다. 그래서 OS전체를 가상화하지 않고, 프로세스를 격리시키는 방식(컨테이너)이 나왔고, 그 중 하나가 Docker이다. Docker를 사용하면 여러 서비스를 한 서버에서 운영할 때 극강의 편리함을 느낄 수 있다. Ubuntu에 Docker를 설치해보자 설치 버전은 Ubuntu 18.04, 최신 release 를 기준으로 설명하겠다. Docker 설치를 위해 필요한 소프트웨어 설치 $ sudo apt-get update $ sudo apt-get install \ apt-t.. 2021. 1. 4.
GCP에서 Cloud(Compute Engine) 무료로 사용하기 GCP(Google Cloud Platform)이 무엇인가요? 이름에서 유추 가능하듯이 구글에서 제공하는 클라우드 플랫폼이다. 제공하는 서비스를 찾아보면 꽤나 좋은 서비스들이 많다. 첫 사용시 12개월동안 사용할수 있는 $300 크레딧이 제공되며, 일부 서비스는 성능이 낮지만 무료로 제공된다. 자세한 정책은 링크를 타고 들어가서 확인바란다. 무료로 제공되는 클라우드 서버(Compute Engine) 정책 GCP에서는 일부 리전에서 f1-micro VM 인스턴스 1개(HDD 30GB) 를 항상 무료로 제공한다. 무료로 제공되는 리전 오리건: us-west1 아이오와: us-central1 사우스캐롤라이나: us-east1 직접 이용해보자 1. GCP접속 후 ComputeEngine을 선택한다. 2. 프로젝.. 2021. 1. 4.
Proxy 서버란? 정의 프록시 서버는 클라이언트가 자신을 통해 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 서버이다. 한마디로 중계 서버이다. 프록시를 사용하는 목적 익명으로 컴퓨터 네트워크 이용 프록시 서버를 이용하면 프록시 서버가 대신 리소스를 요청하기 때문에 익명으로 네트워크를 사용할 수 있다. 네트워크 서비스 제공을 제한하거나 관제하기 위해 게이트웨이에 프록시를 두게 되면 하위 망들의 인터넷 사용 기록을 수집을 할 수 있으며, 컨텐츠를 필터링 할 수 있다.(ex.학교에서 게임 사이트 접근 제한) 캐싱을 사용 자원 재요청시 원격서버에 접속할 필요 없이 프록시 서버 내의 정보를 제공받아 트래픽을 줄이며, 네트워크 대역을 아낄 수 있다. 위 항목 이외에도 여러 많은 목적으로 사용되어가고 있다. 프록시 서버의.. 2021. 1. 4.
Proxy Pass를 사용하여 Apache Web Server에 WAS 연동하기 무엇을 할 것인가 본 게시글은 아파치를 사용하여 한 서버에 여러 서비스를 호스팅 하고 싶을때 리버스 프록시를 사용해 구현하는 법을 서술할 것이다. apache를 WAS랑 연동할때 이 방법을 사용하여도 좋다.(오히려 간단해서 좋다) 본 게시글에서는 HTTPS를 지원하는 것을 전제로 한다. 직접 해보기 리버스 프록시를 사용하여 웹 어플리케이션을 연동을 하기 위해선 apache conf파일에 아래와같이 VirtualHost를 추가해 주면 된다. ServerName domain.com ServerAlias ex)blog.domain.com or www.domain.com... ServerAdmin ProxyRequests Off SSLProxyEngine on ProxyPreserveHost On AllowEn.. 2021. 1. 4.