minio with portainer
S3 minio self hosted your synology nas
- 안내말 입니다.
- 개인적으로 남기는 글입니다. 아래의 경우를 미리 공지합니다.
- 높임말은 없는 경우가 있습니다.
- 영어, 일본어, 베트남어를 공부하고 있습니다. 경우에 따라서 사용됩니다.
- 보기 거북하다면 뒤로가기 해주세요.
이야기 시작-
준비
- 시놀로지에 설치를 합니다.
- 폴더를 만든다.
- portainer를 사용하지 않고, dockage or container manager의 yaml를 만들어도된다.
portainer 을 이용해서 설치
stack 부분에 아래의 내용에서 필요한 부분을 변경하자.
Docker compose
services:
minio:
image: 'quay.io/minio/minio:latest'
command: 'server /data --console-address ":9001"'
environment:
- MINIO_SERVER_URL=$MINIO_SERVER_URL
- MINIO_BROWSER_REDIRECT_URL=$MINIO_BROWSER_REDIRECT_URL
- MINIO_ROOT_USER=$SERVICE_USER_MINIO
- MINIO_ROOT_PASSWORD=$SERVICE_PASSWORD_MINIO
volumes:
- '변경을하자/data:/data'
- '변경을하자/config:/root/.minio'
ports:
- 7412:9000 #minio_api연결용
- 7413:9001 #minio_web_console연결용
healthcheck:
test:
- CMD
- mc
- ready
- local
interval: 5s
timeout: 20s
retries: 10
SERVICE_PASSWORD_MINIO=32자의_강력한_token
SERVICE_USER_MINIO=16자의_강력한_token
MINIO_BROWSER_REDIRECT_URL=https://minioconsole.도메인
MINIO_ROOT_PASSWORD=$SERVICE_PASSWORD_MINIO
MINIO_ROOT_USER=$SERVICE_USER_MINIO
MINIO_SERVER_URL=https://minioapi.도메인
deploy 하면 조금 시간은 걸린다.
시놀로지 역방향 설정
- cname 설정은 본인의 시스템 설정에 맞도록 하면됩니다.
(시놀로지 dns서버 or 가비아 dns, cloudflare... etc) - 시놀로지 역방향에서
https://minioapi.도메인 => localhost:7412
https://minioconsole.도메인 => localhost:7413 - 2번에서 역방향만드는 부분에서 web소켓을 열어줍니다. (2개 도메인모두)
web UI console
Buckets & API key
활용방법
버켓을 누구나 읽기 설정을 해두었기에, 전역접속url 할 수 있으면 해당파일에 접근을 할 수 있다. 이 방식은 노션도 같다.
예를 들어서, 노션에서 이미지를 업로드 후 이미지를 노션에서는 삭제를 하지만, 이이미지의 URL을 미리 알고 있다면 당연히 직접 접근을 할 수 있다.
url_share직접접속링크
따라서, api URL로 접근을 하시면 됩니다. 위에 stack에서 api url 을 만들었으니, 아래 방식입니다.
https://minioapi.도메인/buckets_name/업로드파일이름.확장자
필자는? 어떻게?
mac에서는 아래의 앱에 S3지원하지에 Transmit 앱, Dropzone 앱, cloudmount 앱, mountain duck 앱 등이 있습니다.
cloudmount
아래처럼 세팅해서 파일 업로드 후 링크를 직접 만들어서 공유할 수 있다.
나머지 앱도 같은 방식으로 접속을 할 수 있다.
끝.