Hébergement autonome S3
이 튜토리얼에서 다룰 내용은?
이 튜토리얼은 capgo와 함께 작동하도록 minio를 설정하는 방법을 보여줍니다.
이는 capgo를 실행하는 데 기술적으로 필요하지는 않습니다.
S3를 설정하면 CLI에서 번들을 업로드할 수 있습니다.
요구사항
시작하기
먼저, 새 디렉토리를 만듭니다
그런 다음 내부에 data
라는 폴더를 만듭니다
그리고 다음 명령을 실행합니다:
docker run \ -p 9000:9000 \ -p 9090:9090 \ --user $(id -u):$(id -g) \ --name minio1 \ -e "MINIO_ROOT_USER=ROOTUSER" \ -e "MINIO_ROOT_PASSWORD=CHANGEME123" \ -v PATH_TO_DATA_FOLDER_CREATED_IN_PREVIOUS_STEP:/data \ quayio/minio/minio server /data --console-address ":9090"
이 컨테이너가 있는 콘솔 창을 닫은 경우 다음과 같이 시작할 수 있습니다:
docker start minio1
minio 구성을 변경해야 하는 경우 다음 명령을 실행하여 컨테이너를 제거할 수 있습니다:
docker rm minio1
⚠️ 이 명령은 minio 데이터를 제거하지 않습니다
엣지 함수 설정하기
이제 S3 서버가 실행 중이므로 capgo 엣지 함수가 S3 서버를 사용하도록 설정해야 합니다
이를 위해 capgo/supabase
에 envlocal
이라는 ENV 파일을 생성해야 합니다
이 파일은 다음과 같아야 합니다:
STRIPE_WEBHOOK_SECRET=testSTRIPE_SECRET_KEY=testAPI_SECRET=testsecretPLAN_MAKER=testPLAN_SOLO=testPLAN_TEAM=test# 아래는 S3 설정에 실제로 중요한 부분입니다S3_ENDPOINT=hostdockerinternalS3_REGION=dev-regionS3_PORT=9000S3_SSL=falseR2_ACCESS_KEY_ID=ROOTUSERR2_SECRET_ACCESS_KEY=CHANGEME123
hostdockerinternal
IP는 도커 내부에서만 도달할 수 있지만, minio가 localhost에서 도달할 수 있도록 코드에서 0000
으로 대체됩니다
새 env 파일로 엣지 함수를 실행하려면 다음을 사용하세요
supabase functions serve --env-file /supabase/envlocal
CLI를 S3와 함께 사용하도록 설정하기
CLI는 기본적으로 minio와 작동하지 않습니다. capacitorconfig.ts
1에 다음과 같은 변경이 필요합니다
const config: CapacitorConfig = { appId: 'com.demo.app', appName: 'demoApp', webDir: 'dist', bundledWebRuntime: false, plugins: { CapacitorUpdater : { // 이 localS3가 없으면 업로드 명령이 실패합니다 localS3: true }, },};
Footnotes
-
파일은 앱 디렉토리에 있습니다 ↩