TL;DR
이슈
- 스터디 그룹의 SQL 실습 지원을 위해 공용 DB를 사용할 요건이 생김
- 아무리 중요하지 않은 Cloud의 VM이여도 다양한 토이 프로젝트가 모여있는 소듕한 서버라 DNS을 쓰고싶음
- postgresql을 oracle vm에서 기동하였으나 free tier는 처음 한 달 이내에 DNS 설정을 하지 않으면 나중에는 불가능함(유료)
시도
localtunnel
- node를 사랑하는 나는 익숙한
localtunnel을 시도해 보았다
- 무료이고 subdomain 설정도 가능하니 좋긴만한 줄 알았는데 DB 연결 시 ssh 인증 에러 계속 발생
- 알고보니 http(s) 만 지원했다
해결
ngrok
- free 1 plan으로는 한 개의 process만 지원
- free의 경우 subdomain불가, port 랜덤
- http(s), tcp tls를 지원
- postgres 기동
pg_ctl start
- install ngrok + auth
https://ngrok.com/download
ngrok authtoken <token>
- ngrok을 nohup으로 수행
nohup ngrok tcp 5432 > logfile 2>&1 &
- ngrok url, 포트확인
curl localhost:4040/api/tunnels
- 원격지에서 psql, postico 등의 클라이언트로 접속 확인