준비 사항
https://portal.azure.com/#home
들어가셔서 Azure 계정이 없으시다면 가입을 해주세요
왼쪽 메뉴바에서 스토리지 계정을 클릭
전이미 스트로지 계정이 있으므로 없으신분들은 생성해주시면 됩니다.
Blob 컨테이너 밑에있는 Container list가 쉽게 생각하면 하나의 폴더라고 생각하시면 되고 그 컨테이너에 이름을 지정하고 파일을 업로드 하는 방식입니다.
연결문자열 및 키 가져오기
엑세스 키를 누르신다음 연결 문자열을 복사해주세요
python 프로젝트로 오셔서 .env 파일을 만드신다음 CON_STRING 에는 복사한 키를 넣어주시고 CONTAINER_NAME 에는 사용하실 컨테이너 이름을 적어주세요
AZURE_CON_STRING=
AZURE_CONTAINER_NAME=
test.py 파일을 만드신뒤
from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient
from dotenv import dotenv_values
config = dotenv_values(".env")
blob_service_client = BlobServiceClient.from_connection_string(
config["AZURE_CON_STRING"]
)
container_name = config["AZURE_CONTAINER_NAME"]
with open(file_name, "rb") as data:
blob_client.upload_blob(data)
print(blob_client.url)
dotenv-python 라이브러리를 이용해서 .env 파일에 설정한 변수들을 불러왔습니다.
컨테이너가 없으신분들은 컨테이너를 생성하는 부분도 추가해주셔야합니다.
마지막으로 blob_client.url 을 print 하게되면 업로드된 파일의 url이 나오게됩니다.
공식문서를 참고하여 만들었습니다.
https://docs.microsoft.com/ko-kr/azure/storage/blobs/storage-quickstart-blobs-python
이미지를 외부에서도 public하게 접근해주기 위해서는 공용 액세스 수준을 blob read 로 변경해주시면 됩니다.