도커 컨테이너 백업

도커 컨테이너 백업하기 Intro 최근 집에서 서버로 사용중이던 컴퓨터가 알수없는 이유로 자꾸 다운이 되는 바람에 우분투 서버를 한번 새로 깔아보려고 합니다. 저번에 아무 대책 없이 다 날리고 우분투를 깔았다가 서버를 다시 셋팅하느라 참 고생을 했었는데.. 그 때 그 고생을 줄이기 위해 로컬에는 아무것도 올리지 않고 도커만 사용하고 있습니다. 사실 회사에서는 능력이 출중하신 선배님께서 docker-compose 를 이용해 모두 세팅을 마쳐 두시고, 볼륨도 다 지정 해 두었기에 서버를 옮기거나 한다고 해도 docker-compose.yml 을 비롯한 셋팅 파일과 볼륨 폴더만 쏙 빼가면 되는데.. 제가 세팅했을 때에는 그런 환경을 몰랐을 때라 도커도 힘겹게 셋팅했던 기억이 납니다. 지금이라도 compose로..

Development/DevOps 2021.11.25
SSH를 이용한 Proxy, Dynamic Port Forwarding (SOCKS)

Intro Dynamic Port Forwarding 을 이용하면 ssh client의 로컬에 SOCKS 프록시 서버로 동작하는 소켓을 만들 수 있습니다. 클라이언트가 해당 포트에 접속하면, 그 연결은 리모트(ssh server) 머신으로 포워딩 되며, 목적지의 dynamic port로 전달 됩니다. 이 때, SOCKS proxy를 사용하는 모든 어플리케이션은 해당 SSH 서버에 접속되며, 서버는 모든 트래픽을 실제 목적지로 전달 합니다. Linux, macOS 등 Unix 시스템에서는 아래와 같은 방법으로 dynamic port forwarding(SOCKS)을 생성 할 수 있습니다. ssh -D [로컬아이피:]로컬포트 [USER아이디@]SSH서버 실습 바로 실습 해 보겠습니다. 아래의 주소의 curl..

Development/DevOps 2021.10.28
나만의 라이브러리 만들어 jitPack으로 배포하고 Maven/Gradle 에서 사용하기

Intro 나만의 유틸리티 / 모듈 프로젝트를 배포 해야 하는 이유 중복 코드 프로젝트를 진행하다 보면 여러 프로젝트 에서 공통으로 사용되는 유틸리티성 클래스를 만들 때가 있습니다. Apache의 Commons같은 경우가 재 사용 가능한 자바 기반의 컴포넌트들을 아놓은 통합 프로젝트로서 그런 용도로 사용됩니다. 하지만 모든 사용자에게 맞는건 아니여서 누구든 자주 사용하던 자신만의 유틸성 클래스를 꼭 만들게 되는데요. 여기저기 사용 된다고 해서 한번 만든 유틸성 클래스를 여러곳에 복사해서 붙여넣으면, 작업하다가 어디에선가 문제가 발견되었을때 여태까지 해당 클래스를 사용한 모든 클래스를 하나 하나 열어 코드를 일일히 찾아서 바꿔줘야 하는 번거로움이 있습니다. 자신만의 하나의 유틸리티성 통합 프로젝트를 만들어..

Development/DevOps 2021.09.12
docker container에서 localhost 접속하기 host.docker.internal

Intro docker에서 컨테이너들이 실행 중인 서버를 바라 봐야 할 경우가 있습니다. Docker Compose를 이용해 여러개의 도커 컨테이너를 실행해서 하나의 어플리케이션을 담당한다고 했을때, 하나의 네트워크로 연결해 사용하게 되는데요. 정작 컨테이너에서 로컬 서버에는 어떻게 접근해야 할까요? 제 맥북에서 사용중인 Docker에는 컨테이너가 아직 PostgreSQL 하나밖에 없어서, 이 컨테이너를 이용해서 시도 해 보겠습니다. 제 컨테이너 같이 DB 서버라면 사실 필요할 일은 없지만, Apache나 NginX 같은 웹 서버의 경우는 흔하게 필요한 상황이 발생 할 수 있겠습니다. 실습 일단 제일 먼저 해당 Container로 접속 해 보겠습니다. 컨테이너 접속 GUI Github Desktop을 사..

Development/DevOps 2021.08.21