시작자 가이드: n8n을 사용하여 Azure 스토리지 계정 컨테이너와 Blob 관리
고급
이것은Content Creation, Multimodal AI분야의자동화 워크플로우로, 21개의 노드를 포함합니다.주로 Set, AzureStorage, ManualTrigger, Agent, OpenAi 등의 노드를 사용하며. DALL-E와 Azure Blob 스토리지를 사용하여 AI 이미지 생성 및 저장
사전 요구사항
- •OpenAI API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"id": "IGIdimfXbsBQsxOh",
"meta": {
"instanceId": "4a2e6764ba7a6bc9890d9225f4b21d570ce88fc9bd57549c89057fcee58fed0f",
"templateCredsSetupCompleted": true
},
"name": "Beginner’s Tutorial: Manage Azure Storage Account Container & Blob with n8n",
"tags": [
{
"id": "H6NyYd16Iwa0j4cx",
"name": "azure",
"createdAt": "2025-08-20T13:18:12.992Z",
"updatedAt": "2025-08-20T13:18:12.992Z"
}
],
"nodes": [
{
"id": "e85e1121-c0c5-4205-bde6-f1a9de3f0bd7",
"name": "OpenAI 채팅 모델",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
448,
280
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4.1-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "PPSwAKeLQYgAPobT",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "b9c2618f-3f0e-487a-b8d7-2664b502e069",
"name": "이미지 생성",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
752,
56
],
"parameters": {
"prompt": "={{ $json.output }}",
"options": {},
"resource": "image"
},
"credentials": {
"openAiApi": {
"id": "PPSwAKeLQYgAPobT",
"name": "OpenAi account"
}
},
"typeVersion": 1.8
},
{
"id": "fd4d4869-27e2-4848-a78e-441f8cdcf11e",
"name": "프롬프트 생성 에이전트",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
352,
56
],
"parameters": {
"text": "=You're prompt generator agent, you will create prompt for the open-ai image generation model with a random topic among:\n- Education\n- Science \n- Sport\n- Economy\n- Health\nOutput the prompt only, nothing else",
"options": {},
"promptType": "define"
},
"typeVersion": 2.1
},
{
"id": "2ce43600-134f-410d-b960-f43ab32f1571",
"name": "워크플로 실행 시",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-320,
-92
],
"parameters": {},
"typeVersion": 1
},
{
"id": "ca6f581a-0c4c-4259-8c90-95a23c815633",
"name": "필드 편집",
"type": "n8n-nodes-base.set",
"position": [
-96,
-92
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "af3e6c69-fbfe-49f4-9c29-3a68a821c5a6",
"name": "container_name",
"type": "string",
"value": "trungtrandemon8n1"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "c28e2f34-43d2-41cd-890f-43d028f2f32f",
"name": "스티커 노트",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1648,
-736
],
"parameters": {
"width": 1056,
"height": 2512,
"content": "# Beginner’s Tutorial: Manage Azure Storage Account Container & Blob with n8n\n[](https://www.youtube.com/watch?v=vh06fpMkalw)\n> This beginner-friendly n8n workflow shows you how to generate AI images using OpenAI, store them in Azure Blob Storage, and manage blob containers, all with zero code.\n\n## 👤 Who’s it for\n\nThis workflow is perfect for:\n- **Beginners learning Azure + OpenAI integration**\n- **No-code developers** experimenting with image generation\n- **Cloud learners** who want hands-on Blob Storage use cases\n- Anyone who wants to automate storing AI-generated content in the cloud\n\n## ⚙️ How it works / What it does\n\n1. 🖱️ Trigger the workflow manually using the `Execute Workflow` node.\n2. ✏️ Use the `Edit Fields` node to input:\n - `containerName` (e.g., `demo-images`)\n - `imageIdea` (e.g., \"a robot holding a coffee cup\")\n3. 📦 Create a new Azure Blob container (`Create container`).\n4. 🤖 Use an OpenAI-powered **Prompt Generation Agent** to craft the perfect image prompt.\n5. 🎨 Generate an image using OpenAI’s DALL·E model.\n6. ☁️ Upload the generated image to Azure Blob Storage (`Create Blob`).\n7. 📂 List blobs in the container (`Get many blobs`).\n8. 🧹 Delete any blob as needed (`Delete Blob`).\n9. (Optional) 🗑️ Remove the entire container (`Delete container`).\n\n## 🔧 How to set up\n\n1. **🧠 Set up OpenAI**\n - Create an OpenAI account and get your API key.\n - In n8n, go to **Credentials → OpenAI** and paste your key.\n\n2. **🪣 Set up Azure Blob Storage**\n - Log in to your Azure Portal.\n - Create a **Storage Account** (e.g., `mystorageaccount`).\n - Go to **Access Keys** tab and copy:\n - **Storage Account Name**\n - **Key1**\n - In n8n, create a new **Azure Blob Storage Credential** using:\n - **Account Name** = your storage account name\n - **Access Key** = key1 value\n\n > 📝 This demo uses **Access Key** authentication. You can also configure Shared Access Signatures (SAS) or OAuth in production setups.\n\n3. **Run the Workflow**\n - Enter your image idea and container name.\n - Click “Execute Workflow” to test it.\n\n## 📋 Requirements\n\n| Requirement | Description |\n|------------------------|--------------------------------------------------|\n| Azure Storage Account | With container-level read/write access |\n| OpenAI API Key | For image and prompt generation |\n| n8n Version | v1.0+ recommended |\n| Image Credits | OpenAI charges tokens for DALL·E image creation |\n\n\n## 🛠️ How to customize the workflow\n\n### 🧠 Adjust Prompt Generation\nUpdate the **Prompt Agent** to include:\n- Specific style (3D, anime, cyberpunk)\n- Brand elements\n- Multiple language options\n\n### 📁 Organize by Date/User\nModify the `containerName` to auto-include:\n- Date (e.g., `images-2025-08-20`)\n- Username or session ID\n\n### 📤 Send Image Output\n- Add Slack, Telegram, or Email nodes to deliver the image\n- Create public links using Azure’s blob permissions\n\n### 🔁 Cleanup Logic\n- Auto-delete blobs after X days\n- Add versioning or backup logic"
},
"typeVersion": 1
},
{
"id": "8247314b-fa19-4b6e-96d5-f2729451236e",
"name": "스티커 노트1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-448,
-304
],
"parameters": {
"width": 352,
"content": "### 1. 🖱️ Trigger the Workflow\n**Node:** `When clicking 'Execute workflow'` \nThis node allows you to manually start the workflow by clicking the “Execute Workflow” button in n8n. Great for testing or interactive usage."
},
"typeVersion": 1
},
{
"id": "09234a75-00ef-4d24-b832-4cbf77a70191",
"name": "스티커 노트2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-176,
80
],
"parameters": {
"height": 256,
"content": "### 2. ✍️ Input Your Fields\n**Node:** `Edit Fields` \nThis is where you define inputs like:\n- `containerName`: Name of the Azure Blob container\n\nThe input used in the following steps to dynamically name resources and build prompts."
},
"typeVersion": 1
},
{
"id": "51421218-ac6a-4254-9460-57fd393cfaeb",
"name": "스티커 노트3",
"type": "n8n-nodes-base.stickyNote",
"position": [
112,
224
],
"parameters": {
"height": 192,
"content": "### 3. 📦 Create Blob Container\n**Node:** `Create container` \nCreates a new container in your Azure Blob Storage account using the container name you provided. If the container already exists, it will not be duplicated."
},
"typeVersion": 1
},
{
"id": "3275fa4c-e3c8-4cb7-9fbe-5fbc18bc43bc",
"name": "스티커 노트4",
"type": "n8n-nodes-base.stickyNote",
"position": [
656,
224
],
"parameters": {
"width": 288,
"height": 144,
"content": "### 5. 🎨 Generate the Image\n**Node:** `Generate an image` \nUses the prompt from the previous step to create an AI-generated image (e.g., via DALL·E). The result is a direct image file output."
},
"typeVersion": 1
},
{
"id": "72ad0a7b-b85d-4a78-8e19-b00ea74f055a",
"name": "스티커 노트5",
"type": "n8n-nodes-base.stickyNote",
"position": [
272,
-96
],
"parameters": {
"width": 432,
"height": 128,
"content": "### 4. 🤖 Generate AI Prompt\n**Node:** `Prompt Generation Agent` \nUses OpenAI’s Chat Model to generate a detailed and creative image prompt based on your `imageIdea`. This helps get better and more accurate AI images.\n"
},
"typeVersion": 1
},
{
"id": "08afa880-39cc-4aa9-a4c6-60cc4988c86c",
"name": "스티커 노트6",
"type": "n8n-nodes-base.stickyNote",
"position": [
880,
-144
],
"parameters": {
"height": 176,
"content": "### 6. ☁️ Upload Image to Azure Blob\n**Node:** `Create Blob` \nUploads the generated image to the Azure Blob container you created. The image is now stored in the cloud and ready to use or share.\n"
},
"typeVersion": 1
},
{
"id": "6f22fd69-6469-4ced-b5b9-adfdc7f4cab0",
"name": "스티커 노트7",
"type": "n8n-nodes-base.stickyNote",
"position": [
368,
-432
],
"parameters": {
"width": 272,
"content": "### 9. 🗑️ (Optional) Delete the Container\n**Node:** `Delete container` \nIf needed, you can delete the entire container to clean up your storage environment. Be careful—this deletes all blobs inside."
},
"typeVersion": 1
},
{
"id": "00315b96-ca0b-4c64-b796-54e0eb0f5acb",
"name": "컨테이너 생성",
"type": "n8n-nodes-base.azureStorage",
"position": [
128,
56
],
"parameters": {
"options": {},
"operation": "create",
"requestOptions": {},
"containerCreate": "={{ $json.container_name }}"
},
"credentials": {
"azureStorageSharedKeyApi": {
"id": "lSgRw5GzgoCfmMdO",
"name": "Azure Storage Shared Key account"
}
},
"typeVersion": 1
},
{
"id": "2cc5dc43-64e0-406a-98b0-2854143d2cc9",
"name": "여러 컨테이너 가져오기",
"type": "n8n-nodes-base.azureStorage",
"position": [
128,
-240
],
"parameters": {
"options": {},
"requestOptions": {}
},
"credentials": {
"azureStorageSharedKeyApi": {
"id": "lSgRw5GzgoCfmMdO",
"name": "Azure Storage Shared Key account"
}
},
"typeVersion": 1
},
{
"id": "0cce44bd-54ad-4444-a351-b395af7e7875",
"name": "컨테이너 삭제",
"type": "n8n-nodes-base.azureStorage",
"position": [
440,
-240
],
"parameters": {
"container": {
"__rl": true,
"mode": "id",
"value": "={{ $json.name }}"
},
"operation": "delete",
"requestOptions": {}
},
"credentials": {
"azureStorageSharedKeyApi": {
"id": "lSgRw5GzgoCfmMdO",
"name": "Azure Storage Shared Key account"
}
},
"typeVersion": 1
},
{
"id": "e7fbd4a2-9988-4f2e-8985-4c0691b9ce27",
"name": "Blob 삭제",
"type": "n8n-nodes-base.azureStorage",
"position": [
1424,
56
],
"parameters": {
"blob": {
"__rl": true,
"mode": "id",
"value": "={{ $json.name }}"
},
"options": {},
"resource": "blob",
"container": {
"__rl": true,
"mode": "id",
"value": "={{ $('Edit Fields').item.json.container_name }}"
},
"operation": "delete",
"requestOptions": {}
},
"credentials": {
"azureStorageSharedKeyApi": {
"id": "lSgRw5GzgoCfmMdO",
"name": "Azure Storage Shared Key account"
}
},
"typeVersion": 1
},
{
"id": "0b9b0d80-3932-4592-869f-1b88d275c061",
"name": "Blob 생성",
"type": "n8n-nodes-base.azureStorage",
"position": [
976,
56
],
"parameters": {
"options": {},
"resource": "blob",
"container": {
"__rl": true,
"mode": "id",
"value": "={{ $('Edit Fields').item.json.container_name }}"
},
"operation": "create",
"blobCreate": "mydemoblob",
"requestOptions": {}
},
"credentials": {
"azureStorageSharedKeyApi": {
"id": "lSgRw5GzgoCfmMdO",
"name": "Azure Storage Shared Key account"
}
},
"typeVersion": 1
},
{
"id": "9080e615-b339-40e9-a2be-afec373f19e8",
"name": "여러 Blob 가져오기",
"type": "n8n-nodes-base.azureStorage",
"position": [
1200,
56
],
"parameters": {
"options": {},
"resource": "blob",
"container": {
"__rl": true,
"mode": "id",
"value": "={{ $('Edit Fields').item.json.container_name }}"
},
"requestOptions": {}
},
"credentials": {
"azureStorageSharedKeyApi": {
"id": "lSgRw5GzgoCfmMdO",
"name": "Azure Storage Shared Key account"
}
},
"typeVersion": 1
},
{
"id": "766a2aad-6a08-4fb2-a24d-f897bdcba105",
"name": "스티커 노트8",
"type": "n8n-nodes-base.stickyNote",
"position": [
1136,
224
],
"parameters": {
"width": 208,
"content": "### 7. 📂 List All Blobs\n**Node:** `Get many blobs` \nRetrieves all the blobs (files) inside your container so you can review, download, or manage them."
},
"typeVersion": 1
},
{
"id": "d649dd7f-11c5-4191-ae9b-fdae6581c48a",
"name": "스티커 노트9",
"type": "n8n-nodes-base.stickyNote",
"position": [
1360,
-128
],
"parameters": {
"content": "### 8. 🧹 Delete Specific Blob\n**Node:** `Delete Blob` \nDeletes a specific blob (image) from your container. This step can be made dynamic based on blob name or user choice."
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "6883fbaa-7aae-4627-8ac4-b77da1494f46",
"connections": {
"0b9b0d80-3932-4592-869f-1b88d275c061": {
"main": [
[
{
"node": "9080e615-b339-40e9-a2be-afec373f19e8",
"type": "main",
"index": 0
}
]
]
},
"ca6f581a-0c4c-4259-8c90-95a23c815633": {
"main": [
[
{
"node": "00315b96-ca0b-4c64-b796-54e0eb0f5acb",
"type": "main",
"index": 0
},
{
"node": "2cc5dc43-64e0-406a-98b0-2854143d2cc9",
"type": "main",
"index": 0
}
]
]
},
"9080e615-b339-40e9-a2be-afec373f19e8": {
"main": [
[
{
"node": "e7fbd4a2-9988-4f2e-8985-4c0691b9ce27",
"type": "main",
"index": 0
}
]
]
},
"00315b96-ca0b-4c64-b796-54e0eb0f5acb": {
"main": [
[
{
"node": "fd4d4869-27e2-4848-a78e-441f8cdcf11e",
"type": "main",
"index": 0
}
]
]
},
"b9c2618f-3f0e-487a-b8d7-2664b502e069": {
"main": [
[
{
"node": "0b9b0d80-3932-4592-869f-1b88d275c061",
"type": "main",
"index": 0
}
]
]
},
"e85e1121-c0c5-4205-bde6-f1a9de3f0bd7": {
"ai_languageModel": [
[
{
"node": "fd4d4869-27e2-4848-a78e-441f8cdcf11e",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"2cc5dc43-64e0-406a-98b0-2854143d2cc9": {
"main": [
[
{
"node": "0cce44bd-54ad-4444-a351-b395af7e7875",
"type": "main",
"index": 0
}
]
]
},
"fd4d4869-27e2-4848-a78e-441f8cdcf11e": {
"main": [
[
{
"node": "b9c2618f-3f0e-487a-b8d7-2664b502e069",
"type": "main",
"index": 0
}
]
]
},
"2ce43600-134f-410d-b960-f43ab32f1571": {
"main": [
[
{
"node": "ca6f581a-0c4c-4259-8c90-95a23c815633",
"type": "main",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
고급 - 콘텐츠 제작, 멀티모달 AI
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
AI Tool Node와 GPT-4, DALL-E의 다중 지능체 책 작성 워크플로우 생성
GPT-4.1-mini, DALL-E, Google Drive, AWS S3로 AI 생성 도서 생성
Set
Aws S3
Markdown
+
Set
Aws S3
Markdown
25 노드Trung Tran
콘텐츠 제작
초보자 가이드: n8n을 사용하여 Google Cloud Storage 스토리지 버킷과 오브젝트 관리
GPT-4 Mini AI 이미지 생성을 사용하여 Google Cloud Storage 관리
Set
Manual Trigger
Agent
+
Set
Manual Trigger
Agent
18 노드Trung Tran
파일 관리
AI驱动의이메일分诊与자동回复系统,통합OpenAI에이전트및Gmail
AI驱动의이메일分诊与자동回复系统,통합OpenAI에이전트및Gmail
If
Set
Gmail
+
If
Set
Gmail
68 노드Abdullahi Ahmed
콘텐츠 제작
OpenAI, ElevenLabs 및 Fal.ai를 사용한 비디오, 팟캐스트 및 ASMR용 바이럴 콘텐츠 제작 자동화
OpenAI, ElevenLabs 및 Fal.ai를 사용한 비디오, 팟캐스트 및 ASMR용 바이럴 콘텐츠 제작 자동화
Set
Code
Wait
+
Set
Code
Wait
97 노드Adam Crafts
콘텐츠 제작
YouTube 비디오 기반 자율 블로그 게시
ChatGPT, Sheets, Apify, Pexels, WordPress를 사용하여 YouTube 비디오를 자동으로 블로그에 게시합니다.
If
Set
Code
+
If
Set
Code
80 노드Oriol Seguí
콘텐츠 제작
다중 인공지능 아키텍처 무료 시작 템플릿
협력 판매 계획: 다중 인공지능 AI, Google 문서 및 Slack
Set
Slack
Google Drive
+
Set
Slack
Google Drive
24 노드Trung Tran
문서 추출
워크플로우 정보
난이도
고급
노드 수21
카테고리2
노드 유형7
저자
Trung Tran
@trungtranEmpowering small and medium businesses with smart automation and practical AI, no big tech team required.
외부 링크
n8n.io에서 보기 →
이 워크플로우 공유