티스토리 뷰
요즘에는 서비스를 운영하면서 누군가가 업로드한 파일이나 이미지를 서버에 저장하기 보다는 s3에 저장하는 경우가 많습니다.
당연히 개발하는 코드도 aws-sdk를 사용해서 s3에 파일을 저장하는 코드를 사용하겠죠
아마도 s3를 이용해서 어플리케이션을 만들고 계신 여러분들은
서로 다른 계정의 access key와 secret을 이용해서
개발환경에서 쓰는 계정, 라이브환경에서 쓰는 계정 이렇게 나눠 쓰실수도 있고,
같은 계정을 쓰되 버킷을 다른곳에 저장하시는 분들도 계실거예요
근데 s3를 aws 계정없이도 로컬개발환경에서 셋업해서 로컬에서만 쓰는용도로 쓰면 매우 좋겠다 라는 생각이 듭니다
바로 이럴때 쓸수 있는 minio를 소개합니다.
minio는 s3와 비슷한 오브젝트 스토리지 서버입니다
그러니깐 이걸 이용해서 s3같은 서비스를 운영할수 있다는것입니다
매우 설치도 간편합니다
맥 환경에서는
$ brew install minio/stable/minio
$ minio server ~/data
brew 를 통해서 서버를 설치하고
파일이 저장될 경로를 포함하여 minio 서버를 실행시키면 끝입니다
참 쉽죠?
그렇게 되면 기본설정으로 9000번 포트에서
http://localhost:9000
접속을 통해서 매우 깔끔한 minio 인터페이스를 만날수 있습니다
여기서 버킷을 생성하거나, 파일의 업로드와 삭제 등이 가능합니다.
minio는 사실상 업계표준이라고 할수 있는 s3의 API를 완벽하게 호환하여 지원합니다.
그러니깐 s3 sdk를 사용해서 endpoint만 minio 서버주소로만 바꾸면
다른 코드를 바꾸지 않아도 동작하는 뜻입니다.
pre signed 를 사용하는 기능도 물론 당연히 동작하구요
https://docs.min.io/docs/upload-files-from-browser-using-pre-signed-urls.html
다양한 환경에서의 쿡북도 많은 자료가 제공되고있습니다
https://docs.min.io/docs/how-to-use-aws-sdk-for-javascript-with-minio-server.html
여러분의 로컬환경에 minio를 설치하여
로컬에서 개발하시고
라이브환경에서는 aws의 환경변수를 사용하도록 바꾸면
더욱 깔끔한 어플리케이션 개발이 가능합니다
저도 laravel 개발때 minio를 처음 알게되었는데요
지금은 다른 언어 개발할때도 매우 유용하게 사용하고 있답니다
'WEB2.0 > 프로그래밍' 카테고리의 다른 글
iOS 앱스토어 심사에서 발견된 crash 파일(크래시 리포트) 분석하기 (0) | 2020.05.03 |
---|---|
애플의 업데이트 요청 그리고 인증서 오류 (0) | 2020.05.02 |
이미 진행중인 프로젝트에 vue 직접 추가해보기 (0) | 2020.04.17 |
mongodb 3.2에서 4.2 로 업그레이드해보니 (0) | 2020.04.07 |
구형 리눅스(centos5)에서 아파치 2.4 설치하기 (0) | 2020.04.06 |
- Total
- Today
- Yesterday
- 애플
- 공모전
- 스마트폰
- 아이폰
- 트위터
- Apple
- 모바일
- 안드로이드
- JavaScript
- iPhone
- php
- CSS
- 아이디어
- 앱
- 창업
- 구글
- 벤처
- android
- 앱스토어
- 자바스크립트
- 경진대회
- 웹표준
- 네이버
- 어플리케이션
- 대학생
- 소프트웨어
- AWS
- 게임
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |