Files
dify/reference/env-1.7.1.example

10180 lines
334 KiB
Plaintext

<!DOCTYPE html>
<html lang="zh-CN" data-theme="gitea-auto">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>dify/.env.example 位于 main - dify - Git for Colovu Tech.</title>
<link rel="manifest" href="data:application/json;base64,eyJuYW1lIjoiR2l0IGZvciBDb2xvdnUgVGVjaC4iLCJzaG9ydF9uYW1lIjoiR2l0IGZvciBDb2xvdnUgVGVjaC4iLCJzdGFydF91cmwiOiJodHRwczovL2dpdC5jb2xvdnUuY29tLyIsImljb25zIjpbeyJzcmMiOiJodHRwczovL2dpdC5jb2xvdnUuY29tL2Fzc2V0cy9pbWcvbG9nby5wbmciLCJ0eXBlIjoiaW1hZ2UvcG5nIiwic2l6ZXMiOiI1MTJ4NTEyIn0seyJzcmMiOiJodHRwczovL2dpdC5jb2xvdnUuY29tL2Fzc2V0cy9pbWcvbG9nby5zdmciLCJ0eXBlIjoiaW1hZ2Uvc3ZnK3htbCIsInNpemVzIjoiNTEyeDUxMiJ9XX0=">
<meta name="author" content="third">
<meta name="description" content="dify - Dify is an open-source LLM app development platform. Dify&#39;s intuitive interface combines AI workflow, RAG pipeline, agent capabilities, model management, observability features and more, letting you quickly go from prototype to production.">
<meta name="keywords" content="go,git,self-hosted,gitea">
<meta name="referrer" content="no-referrer">
<link rel="alternate" type="application/atom+xml" title="" href="/third/dify.atom">
<link rel="alternate" type="application/rss+xml" title="" href="/third/dify.rss">
<link rel="icon" href="/assets/img/favicon.svg" type="image/svg+xml">
<link rel="alternate icon" href="/assets/img/favicon.png" type="image/png">
<script>
window.addEventListener('error', function(e) {window._globalHandlerErrors=window._globalHandlerErrors||[]; window._globalHandlerErrors.push(e);});
window.addEventListener('unhandledrejection', function(e) {window._globalHandlerErrors=window._globalHandlerErrors||[]; window._globalHandlerErrors.push(e);});
window.config = {
appUrl: 'https:\/\/git.colovu.com\/',
appSubUrl: '',
assetVersionEncoded: encodeURIComponent('1.23.6'),
assetUrlPrefix: '\/assets',
runModeIsProd: true ,
customEmojis: {"codeberg":":codeberg:","git":":git:","gitea":":gitea:","github":":github:","gitlab":":gitlab:","gogs":":gogs:"},
csrfToken: '4cnVGY21n3iUm7tVY7NUim9JqRQ6MTc1Mzg0NTM1NjQzOTY5MDQ5NQ',
pageData: {},
notificationSettings: {"EventSourceUpdateTime":10000,"MaxTimeout":60000,"MinTimeout":10000,"TimeoutStep":10000},
enableTimeTracking: true ,
mermaidMaxSourceCharacters: 5000 ,
i18n: {
copy_success: "复制成功!",
copy_error: "复制失败",
error_occurred: "发生了一个错误",
network_error: "网络错误",
remove_label_str: "删除标签 \"%s\"",
modal_confirm: "确认",
modal_cancel: "取消",
more_items: "更多选项",
},
};
window.config.pageData = window.config.pageData || {};
</script>
<script src="/assets/js/webcomponents.js?v=1.23.6"></script>
<noscript>
<style>
.dropdown:hover > .menu { display: block; }
.ui.secondary.menu .dropdown.item > .menu { margin-top: 0; }
</style>
</noscript>
<meta property="og:title" content="dify/.env.example 位于 main">
<meta property="og:url" content="https://git.colovu.com//third/dify/src/branch/main/docker/.env.example">
<meta property="og:type" content="object">
<meta property="og:image" content="https://git.colovu.com:443/avatars/dd5c8bf51558ffcbe5007071908e9524">
<meta property="og:site_name" content="Git for Colovu Tech.">
<link rel="stylesheet" href="/assets/css/index.css?v=1.23.6">
<link rel="stylesheet" href="/assets/css/theme-gitea-auto.css?v=1.23.6">
</head>
<body hx-headers='{"x-csrf-token": "4cnVGY21n3iUm7tVY7NUim9JqRQ6MTc1Mzg0NTM1NjQzOTY5MDQ5NQ"}' hx-swap="outerHTML" hx-ext="morph" hx-push-url="false">
<div class="full height">
<noscript>此网站需要 JavaScript。</noscript>
<nav id="navbar" aria-label="导航栏">
<div class="navbar-left">
<a class="item" id="navbar-logo" href="/" aria-label="首页">
<img width="30" height="30" src="/assets/img/logo.svg" alt="徽标" aria-hidden="true">
</a>
<div class="ui secondary menu navbar-mobile-right only-mobile">
<a id="mobile-notifications-icon" class="item tw-w-auto tw-p-2" href="/notifications" data-tooltip-content="通知" aria-label="通知">
<div class="tw-relative">
<svg viewBox="0 0 16 16" class="svg octicon-bell" aria-hidden="true" width="16" height="16"><path d="M8 16a2 2 0 0 0 1.985-1.75c.017-.137-.097-.25-.235-.25h-3.5c-.138 0-.252.113-.235.25A2 2 0 0 0 8 16M3 5a5 5 0 0 1 10 0v2.947q0 .076.042.139l1.703 2.555A1.519 1.519 0 0 1 13.482 13H2.518a1.516 1.516 0 0 1-1.263-2.36l1.703-2.554A.26.26 0 0 0 3 7.947Zm5-3.5A3.5 3.5 0 0 0 4.5 5v2.947c0 .346-.102.683-.294.97l-1.703 2.556-.003.01.001.006q0 .003.004.006l.006.004.007.001h10.964l.007-.001.006-.004.004-.006.001-.007-.003-.01-1.703-2.554a1.75 1.75 0 0 1-.294-.97V5A3.5 3.5 0 0 0 8 1.5"/></svg>
<span class="notification_count tw-hidden">0</span>
</div>
</a>
<button class="item tw-w-auto ui icon mini button tw-p-2 tw-m-0" id="navbar-expand-toggle" aria-label="导航菜单"><svg viewBox="0 0 16 16" class="svg octicon-three-bars" aria-hidden="true" width="16" height="16"><path d="M1 2.75A.75.75 0 0 1 1.75 2h12.5a.75.75 0 0 1 0 1.5H1.75A.75.75 0 0 1 1 2.75m0 5A.75.75 0 0 1 1.75 7h12.5a.75.75 0 0 1 0 1.5H1.75A.75.75 0 0 1 1 7.75M1.75 12h12.5a.75.75 0 0 1 0 1.5H1.75a.75.75 0 0 1 0-1.5"/></svg></button>
</div>
<a class="item" href="/issues">工单管理</a>
<a class="item" href="/pulls">合并请求</a>
<a class="item" href="/milestones">里程碑</a>
<a class="item" href="/explore/repos">探索</a>
</div>
<div class="navbar-right">
<a class="item not-mobile tw-mx-0" href="/notifications" data-tooltip-content="通知" aria-label="通知">
<div class="tw-relative">
<svg viewBox="0 0 16 16" class="svg octicon-bell" aria-hidden="true" width="16" height="16"><path d="M8 16a2 2 0 0 0 1.985-1.75c.017-.137-.097-.25-.235-.25h-3.5c-.138 0-.252.113-.235.25A2 2 0 0 0 8 16M3 5a5 5 0 0 1 10 0v2.947q0 .076.042.139l1.703 2.555A1.519 1.519 0 0 1 13.482 13H2.518a1.516 1.516 0 0 1-1.263-2.36l1.703-2.554A.26.26 0 0 0 3 7.947Zm5-3.5A3.5 3.5 0 0 0 4.5 5v2.947c0 .346-.102.683-.294.97l-1.703 2.556-.003.01.001.006q0 .003.004.006l.006.004.007.001h10.964l.007-.001.006-.004.004-.006.001-.007-.003-.01-1.703-2.554a1.75 1.75 0 0 1-.294-.97V5A3.5 3.5 0 0 0 8 1.5"/></svg>
<span class="notification_count tw-hidden">0</span>
</div>
</a>
<div class="ui dropdown jump item tw-mx-0 tw-pr-2" data-tooltip-content="创建…">
<span class="text">
<svg viewBox="0 0 16 16" class="svg octicon-plus" aria-hidden="true" width="16" height="16"><path d="M7.75 2a.75.75 0 0 1 .75.75V7h4.25a.75.75 0 0 1 0 1.5H8.5v4.25a.75.75 0 0 1-1.5 0V8.5H2.75a.75.75 0 0 1 0-1.5H7V2.75A.75.75 0 0 1 7.75 2"/></svg>
<span class="not-mobile"><svg viewBox="0 0 16 16" class="svg octicon-triangle-down" aria-hidden="true" width="16" height="16"><path d="m4.427 7.427 3.396 3.396a.25.25 0 0 0 .354 0l3.396-3.396A.25.25 0 0 0 11.396 7H4.604a.25.25 0 0 0-.177.427"/></svg></span>
<span class="only-mobile">创建…</span>
</span>
<div class="menu">
<a class="item" href="/repo/create">
<svg viewBox="0 0 16 16" class="svg octicon-plus" aria-hidden="true" width="16" height="16"><path d="M7.75 2a.75.75 0 0 1 .75.75V7h4.25a.75.75 0 0 1 0 1.5H8.5v4.25a.75.75 0 0 1-1.5 0V8.5H2.75a.75.75 0 0 1 0-1.5H7V2.75A.75.75 0 0 1 7.75 2"/></svg> 创建仓库
</a>
<a class="item" href="/repo/migrate">
<svg viewBox="0 0 16 16" class="svg octicon-repo-push" aria-hidden="true" width="16" height="16"><path d="M1 2.5A2.5 2.5 0 0 1 3.5 0h8.75a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0V1.5h-8a1 1 0 0 0-1 1v6.708A2.5 2.5 0 0 1 3.5 9h3.25a.75.75 0 0 1 0 1.5H3.5a1 1 0 0 0 0 2h5.75a.75.75 0 0 1 0 1.5H3.5A2.5 2.5 0 0 1 1 11.5Zm13.23 7.79zl-1.224-1.224v6.184a.75.75 0 0 1-1.5 0V9.066L10.28 10.29a.75.75 0 0 1-1.06-1.061l2.505-2.504a.75.75 0 0 1 1.06 0L15.29 9.23a.75.75 0 0 1-.018 1.042.75.75 0 0 1-1.042.018"/></svg> 迁移外部仓库
</a>
<a class="item" href="/org/create">
<svg viewBox="0 0 16 16" class="svg octicon-organization" aria-hidden="true" width="16" height="16"><path d="M1.75 16A1.75 1.75 0 0 1 0 14.25V1.75C0 .784.784 0 1.75 0h8.5C11.216 0 12 .784 12 1.75v12.5q0 .127-.018.25h2.268a.25.25 0 0 0 .25-.25V8.285a.25.25 0 0 0-.111-.208l-1.055-.703a.749.749 0 1 1 .832-1.248l1.055.703c.487.325.779.871.779 1.456v5.965A1.75 1.75 0 0 1 14.25 16h-3.5a.8.8 0 0 1-.197-.026q-.148.026-.303.026h-3a.75.75 0 0 1-.75-.75V14h-1v1.25a.75.75 0 0 1-.75.75Zm-.25-1.75c0 .138.112.25.25.25H4v-1.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 .75.75v1.25h2.25a.25.25 0 0 0 .25-.25V1.75a.25.25 0 0 0-.25-.25h-8.5a.25.25 0 0 0-.25.25ZM3.75 6h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5M3 3.75A.75.75 0 0 1 3.75 3h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 3 3.75m4 3A.75.75 0 0 1 7.75 6h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 7 6.75M7.75 3h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5M3 9.75A.75.75 0 0 1 3.75 9h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 3 9.75M7.75 9h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5"/></svg> 创建组织
</a>
</div>
</div>
<div class="ui dropdown jump item tw-mx-0 tw-pr-2" data-tooltip-content="个人信息和配置">
<span class="text tw-flex tw-items-center">
<img loading="lazy" class="ui avatar tw-align-middle tw-mr-1" src="/avatars/98ec9cd80937f30b1db4b26e0701fbd9?size=48" title="Endial Fang" width="24" height="24"/>
<span class="only-mobile tw-ml-2">endial</span>
<span class="not-mobile"><svg viewBox="0 0 16 16" class="svg octicon-triangle-down" aria-hidden="true" width="16" height="16"><path d="m4.427 7.427 3.396 3.396a.25.25 0 0 0 .354 0l3.396-3.396A.25.25 0 0 0 11.396 7H4.604a.25.25 0 0 0-.177.427"/></svg></span>
</span>
<div class="menu user-menu">
<div class="header">
已登录用户 <strong>endial</strong>
</div>
<div class="divider"></div>
<a class="item" href="/endial">
<svg viewBox="0 0 16 16" class="svg octicon-person" aria-hidden="true" width="16" height="16"><path d="M10.561 8.073a6 6 0 0 1 3.432 5.142.75.75 0 1 1-1.498.07 4.5 4.5 0 0 0-8.99 0 .75.75 0 0 1-1.498-.07 6 6 0 0 1 3.431-5.142 3.999 3.999 0 1 1 5.123 0M10.5 5a2.5 2.5 0 1 0-5 0 2.5 2.5 0 0 0 5 0"/></svg>
个人信息
</a>
<a class="item" href="/endial?tab=stars">
<svg viewBox="0 0 16 16" class="svg octicon-star" aria-hidden="true" width="16" height="16"><path d="M8 .25a.75.75 0 0 1 .673.418l1.882 3.815 4.21.612a.75.75 0 0 1 .416 1.279l-3.046 2.97.719 4.192a.751.751 0 0 1-1.088.791L8 12.347l-3.766 1.98a.75.75 0 0 1-1.088-.79l.72-4.194L.818 6.374a.75.75 0 0 1 .416-1.28l4.21-.611L7.327.668A.75.75 0 0 1 8 .25m0 2.445L6.615 5.5a.75.75 0 0 1-.564.41l-3.097.45 2.24 2.184a.75.75 0 0 1 .216.664l-.528 3.084 2.769-1.456a.75.75 0 0 1 .698 0l2.77 1.456-.53-3.084a.75.75 0 0 1 .216-.664l2.24-2.183-3.096-.45a.75.75 0 0 1-.564-.41z"/></svg>
已点赞
</a>
<a class="item" href="/notifications/subscriptions">
<svg viewBox="0 0 16 16" class="svg octicon-bell" aria-hidden="true" width="16" height="16"><path d="M8 16a2 2 0 0 0 1.985-1.75c.017-.137-.097-.25-.235-.25h-3.5c-.138 0-.252.113-.235.25A2 2 0 0 0 8 16M3 5a5 5 0 0 1 10 0v2.947q0 .076.042.139l1.703 2.555A1.519 1.519 0 0 1 13.482 13H2.518a1.516 1.516 0 0 1-1.263-2.36l1.703-2.554A.26.26 0 0 0 3 7.947Zm5-3.5A3.5 3.5 0 0 0 4.5 5v2.947c0 .346-.102.683-.294.97l-1.703 2.556-.003.01.001.006q0 .003.004.006l.006.004.007.001h10.964l.007-.001.006-.004.004-.006.001-.007-.003-.01-1.703-2.554a1.75 1.75 0 0 1-.294-.97V5A3.5 3.5 0 0 0 8 1.5"/></svg>
订阅
</a>
<a class="item" href="/user/settings">
<svg viewBox="0 0 16 16" class="svg octicon-tools" aria-hidden="true" width="16" height="16"><path d="M5.433 2.304A4.49 4.49 0 0 0 3.5 6c0 1.598.832 3.002 2.09 3.802.518.328.929.923.902 1.64v.008l-.164 3.337a.75.75 0 1 1-1.498-.073l.163-3.33c.002-.085-.05-.216-.207-.316A6 6 0 0 1 2 6a6 6 0 0 1 2.567-4.92 1.48 1.48 0 0 1 1.673-.04c.462.296.76.827.76 1.423v2.82c0 .082.041.16.11.206l.75.51a.25.25 0 0 0 .28 0l.75-.51A.25.25 0 0 0 9 5.282V2.463c0-.596.298-1.127.76-1.423a1.48 1.48 0 0 1 1.673.04A6 6 0 0 1 14 6a6 6 0 0 1-2.786 5.068c-.157.1-.209.23-.207.315l.163 3.33a.752.752 0 0 1-1.094.714.75.75 0 0 1-.404-.64l-.164-3.345c-.027-.717.384-1.312.902-1.64A4.5 4.5 0 0 0 12.5 6a4.49 4.49 0 0 0-1.933-3.696c-.024.017-.067.067-.067.16v2.818a1.75 1.75 0 0 1-.767 1.448l-.75.51a1.75 1.75 0 0 1-1.966 0l-.75-.51A1.75 1.75 0 0 1 5.5 5.282V2.463c0-.092-.043-.142-.067-.159"/></svg>
设置
</a>
<a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.com">
<svg viewBox="0 0 16 16" class="svg octicon-question" aria-hidden="true" width="16" height="16"><path d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8m8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13M6.92 6.085h.001a.749.749 0 1 1-1.342-.67c.169-.339.436-.701.849-.977C6.845 4.16 7.369 4 8 4a2.76 2.76 0 0 1 1.637.525c.503.377.863.965.863 1.725 0 .448-.115.83-.329 1.15-.205.307-.47.513-.692.662-.109.072-.22.138-.313.195l-.006.004a6 6 0 0 0-.26.16 1 1 0 0 0-.276.245.75.75 0 0 1-1.248-.832c.184-.264.42-.489.692-.661q.154-.1.313-.195l.007-.004c.1-.061.182-.11.258-.161a1 1 0 0 0 .277-.245C8.96 6.514 9 6.427 9 6.25a.61.61 0 0 0-.262-.525A1.27 1.27 0 0 0 8 5.5c-.369 0-.595.09-.74.187a1 1 0 0 0-.34.398M9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0"/></svg>
帮助
</a>
<div class="divider"></div>
<a class="item link-action" href data-url="/user/logout">
<svg viewBox="0 0 16 16" class="svg octicon-sign-out" aria-hidden="true" width="16" height="16"><path d="M2 2.75C2 1.784 2.784 1 3.75 1h2.5a.75.75 0 0 1 0 1.5h-2.5a.25.25 0 0 0-.25.25v10.5c0 .138.112.25.25.25h2.5a.75.75 0 0 1 0 1.5h-2.5A1.75 1.75 0 0 1 2 13.25Zm10.44 4.5-1.97-1.97a.749.749 0 0 1 .326-1.275.75.75 0 0 1 .734.215l3.25 3.25a.75.75 0 0 1 0 1.06l-3.25 3.25a.749.749 0 0 1-1.275-.326.75.75 0 0 1 .215-.734l1.97-1.97H6.75a.75.75 0 0 1 0-1.5Z"/></svg>
退出
</a>
</div>
</div>
</div>
</nav>
<div role="main" aria-label="dify/.env.example 位于 main" class="page-content repository file list ">
<div class="secondary-nav">
<div class="ui container">
<div class="repo-header">
<div class="flex-item tw-items-center">
<div class="flex-item-leading">
<svg viewBox="0 0 16 16" class="svg octicon-mirror" aria-hidden="true" width="24" height="24"><path d="M15.547 3.061A.75.75 0 0 1 16 3.75v8.5a.751.751 0 0 1-1.265.545l-4.5-4.25a.75.75 0 0 1 0-1.09l4.5-4.25a.75.75 0 0 1 .812-.144M0 12.25v-8.5a.751.751 0 0 1 1.265-.545l4.5 4.25a.75.75 0 0 1 0 1.09l-4.5 4.25A.75.75 0 0 1 0 12.25m1.5-6.76v5.02L4.158 8ZM11.842 8l2.658 2.51V5.49ZM8 4a.75.75 0 0 1 .75.75v.5a.75.75 0 0 1-1.5 0v-.5A.75.75 0 0 1 8 4m.75-2.25v.5a.75.75 0 0 1-1.5 0v-.5a.75.75 0 0 1 1.5 0m0 6v.5a.75.75 0 0 1-1.5 0v-.5a.75.75 0 0 1 1.5 0M8 10a.75.75 0 0 1 .75.75v.5a.75.75 0 0 1-1.5 0v-.5A.75.75 0 0 1 8 10m0 3a.75.75 0 0 1 .75.75v.5a.75.75 0 0 1-1.5 0v-.5A.75.75 0 0 1 8 13"/></svg>
</div>
<div class="flex-item-main">
<div class="flex-item-title tw-text-18">
<a class="muted tw-font-normal" href="/third">third</a>/<a class="muted" href="/third/dify">dify</a>
</div>
</div>
<div class="flex-item-trailing">
<span class="ui basic label not-mobile">私有库</span>
<div class="repo-icon only-mobile" data-tooltip-content="私有库"><svg viewBox="0 0 16 16" class="svg octicon-lock" aria-hidden="true" width="18" height="18"><path d="M4 4a4 4 0 0 1 8 0v2h.25c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 12.25 15h-8.5A1.75 1.75 0 0 1 2 13.25v-5.5C2 6.784 2.784 6 3.75 6H4Zm8.25 3.5h-8.5a.25.25 0 0 0-.25.25v5.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25M10.5 6V4a2.5 2.5 0 1 0-5 0v2Z"/></svg></div>
</div>
</div>
<div class="repo-buttons">
<a class="ui compact small basic button" href="/third/dify.rss" data-tooltip-content="RSS 订阅源">
<svg viewBox="0 0 16 16" class="svg octicon-rss" aria-hidden="true" width="16" height="16"><path d="M2.002 2.725a.75.75 0 0 1 .797-.699C8.79 2.42 13.58 7.21 13.974 13.201a.75.75 0 0 1-1.497.098 10.5 10.5 0 0 0-9.776-9.776.747.747 0 0 1-.7-.798ZM2.84 7.05h-.002a7 7 0 0 1 6.113 6.111.75.75 0 0 1-1.49.178 5.5 5.5 0 0 0-4.8-4.8.75.75 0 0 1 .179-1.489M2 13a1 1 0 1 1 2 0 1 1 0 0 1-2 0"/></svg>
</a>
<form hx-boost="true" hx-target="this" method="post" action="/third/dify/action/unwatch">
<div class="ui labeled button" >
<button type="submit" class="ui compact small basic button" aria-label="取消关注">
<svg viewBox="0 0 16 16" class="svg octicon-eye" aria-hidden="true" width="16" height="16"><path d="M8 2c1.981 0 3.671.992 4.933 2.078 1.27 1.091 2.187 2.345 2.637 3.023a1.62 1.62 0 0 1 0 1.798c-.45.678-1.367 1.932-2.637 3.023C11.67 13.008 9.981 14 8 14s-3.671-.992-4.933-2.078C1.797 10.83.88 9.576.43 8.898a1.62 1.62 0 0 1 0-1.798c.45-.677 1.367-1.931 2.637-3.022C4.33 2.992 6.019 2 8 2M1.679 7.932a.12.12 0 0 0 0 .136c.411.622 1.241 1.75 2.366 2.717C5.176 11.758 6.527 12.5 8 12.5s2.825-.742 3.955-1.715c1.124-.967 1.954-2.096 2.366-2.717a.12.12 0 0 0 0-.136c-.412-.621-1.242-1.75-2.366-2.717C10.824 4.242 9.473 3.5 8 3.5s-2.825.742-3.955 1.715c-1.124.967-1.954 2.096-2.366 2.717M8 10a2 2 0 1 1-.001-3.999A2 2 0 0 1 8 10"/></svg>
<span aria-hidden="true">取消关注</span>
</button>
<a hx-boost="false" class="ui basic label" href="/third/dify/watchers">
1
</a>
</div>
</form>
<form hx-boost="true" hx-target="this" method="post" action="/third/dify/action/star">
<div class="ui labeled button" >
<button type="submit" class="ui compact small basic button" aria-label="点赞">
<svg viewBox="0 0 16 16" class="svg octicon-star" aria-hidden="true" width="16" height="16"><path d="M8 .25a.75.75 0 0 1 .673.418l1.882 3.815 4.21.612a.75.75 0 0 1 .416 1.279l-3.046 2.97.719 4.192a.751.751 0 0 1-1.088.791L8 12.347l-3.766 1.98a.75.75 0 0 1-1.088-.79l.72-4.194L.818 6.374a.75.75 0 0 1 .416-1.28l4.21-.611L7.327.668A.75.75 0 0 1 8 .25m0 2.445L6.615 5.5a.75.75 0 0 1-.564.41l-3.097.45 2.24 2.184a.75.75 0 0 1 .216.664l-.528 3.084 2.769-1.456a.75.75 0 0 1 .698 0l2.77 1.456-.53-3.084a.75.75 0 0 1 .216-.664l2.24-2.183-3.096-.45a.75.75 0 0 1-.564-.41z"/></svg>
<span aria-hidden="true">点赞</span>
</button>
<a hx-boost="false" class="ui basic label" href="/third/dify/stars">
0
</a>
</div>
</form>
<div class="ui labeled button
"
>
<a class="ui compact small basic button"
href="/third/dify/fork"
>
<svg viewBox="0 0 16 16" class="svg octicon-repo-forked" aria-hidden="true" width="16" height="16"><path d="M5 5.372v.878c0 .414.336.75.75.75h4.5a.75.75 0 0 0 .75-.75v-.878a2.25 2.25 0 1 1 1.5 0v.878a2.25 2.25 0 0 1-2.25 2.25h-1.5v2.128a2.251 2.251 0 1 1-1.5 0V8.5h-1.5A2.25 2.25 0 0 1 3.5 6.25v-.878a2.25 2.25 0 1 1 1.5 0M5 3.25a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0m6.75.75a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5m-3 8.75a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0"/></svg><span class="text not-mobile">派生</span>
</a>
<a class="ui basic label" href="/third/dify/forks">
0
</a>
</div>
<div class="ui small modal" id="fork-repo-modal">
<div class="header">
你已经派生过 dify
</div>
<div class="content tw-text-left">
<div class="ui list">
</div>
<div class="divider"></div>
<a href="/third/dify/fork">派生到其他账号</a>
</div>
</div>
</div>
</div>
<div class="fork-flag">
镜像自地址
<a target="_blank" rel="noopener noreferrer" href="https://github.com/langgenius/dify.git">https://github.com/langgenius/dify.git</a>
已同步 <relative-time prefix="" tense="past" datetime="2025-07-30T10:17:19+08:00" data-tooltip-content data-tooltip-interactive="true">2025-07-30 10:17:19 +08:00</relative-time>
</div>
</div>
<div class="ui container">
<overflow-menu class="ui secondary pointing menu">
<div class="overflow-menu-items">
<a class="active item" href="/third/dify">
<svg viewBox="0 0 16 16" class="svg octicon-code" aria-hidden="true" width="16" height="16"><path d="m11.28 3.22 4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.749.749 0 0 1-1.275-.326.75.75 0 0 1 .215-.734L13.94 8l-3.72-3.72a.749.749 0 0 1 .326-1.275.75.75 0 0 1 .734.215m-6.56 0a.75.75 0 0 1 1.042.018.75.75 0 0 1 .018 1.042L2.06 8l3.72 3.72a.749.749 0 0 1-.326 1.275.75.75 0 0 1-.734-.215L.47 8.53a.75.75 0 0 1 0-1.06Z"/></svg> 代码
</a>
<a class="item" href="/third/dify/issues">
<svg viewBox="0 0 16 16" class="svg octicon-issue-opened" aria-hidden="true" width="16" height="16"><path d="M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3"/><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0M1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0"/></svg> 工单
</a>
<a href="/third/dify/packages" class="item">
<svg viewBox="0 0 16 16" class="svg octicon-package" aria-hidden="true" width="16" height="16"><path d="m8.878.392 5.25 3.045c.54.314.872.89.872 1.514v6.098a1.75 1.75 0 0 1-.872 1.514l-5.25 3.045a1.75 1.75 0 0 1-1.756 0l-5.25-3.045A1.75 1.75 0 0 1 1 11.049V4.951c0-.624.332-1.201.872-1.514L7.122.392a1.75 1.75 0 0 1 1.756 0M7.875 1.69l-4.63 2.685L8 7.133l4.755-2.758-4.63-2.685a.25.25 0 0 0-.25 0M2.5 5.677v5.372c0 .09.047.171.125.216l4.625 2.683V8.432Zm6.25 8.271 4.625-2.683a.25.25 0 0 0 .125-.216V5.677L8.75 8.432Z"/></svg> 软件包
</a>
<a href="/third/dify/projects" class="item">
<svg viewBox="0 0 16 16" class="svg octicon-project" aria-hidden="true" width="16" height="16"><path d="M1.75 0h12.5C15.216 0 16 .784 16 1.75v12.5A1.75 1.75 0 0 1 14.25 16H1.75A1.75 1.75 0 0 1 0 14.25V1.75C0 .784.784 0 1.75 0M1.5 1.75v12.5c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25V1.75a.25.25 0 0 0-.25-.25H1.75a.25.25 0 0 0-.25.25M11.75 3a.75.75 0 0 1 .75.75v7.5a.75.75 0 0 1-1.5 0v-7.5a.75.75 0 0 1 .75-.75m-8.25.75a.75.75 0 0 1 1.5 0v5.5a.75.75 0 0 1-1.5 0ZM8 3a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 3"/></svg> 项目
</a>
<a class="item" href="/third/dify/releases">
<svg viewBox="0 0 16 16" class="svg octicon-tag" aria-hidden="true" width="16" height="16"><path d="M1 7.775V2.75C1 1.784 1.784 1 2.75 1h5.025c.464 0 .91.184 1.238.513l6.25 6.25a1.75 1.75 0 0 1 0 2.474l-5.026 5.026a1.75 1.75 0 0 1-2.474 0l-6.25-6.25A1.75 1.75 0 0 1 1 7.775m1.5 0c0 .066.026.13.073.177l6.25 6.25a.25.25 0 0 0 .354 0l5.025-5.025a.25.25 0 0 0 0-.354l-6.25-6.25a.25.25 0 0 0-.177-.073H2.75a.25.25 0 0 0-.25.25ZM6 5a1 1 0 1 1 0 2 1 1 0 0 1 0-2"/></svg> 版本发布
</a>
<a class="item" href="/third/dify/wiki">
<svg viewBox="0 0 16 16" class="svg octicon-book" aria-hidden="true" width="16" height="16"><path d="M0 1.75A.75.75 0 0 1 .75 1h4.253c1.227 0 2.317.59 3 1.501A3.74 3.74 0 0 1 11.006 1h4.245a.75.75 0 0 1 .75.75v10.5a.75.75 0 0 1-.75.75h-4.507a2.25 2.25 0 0 0-1.591.659l-.622.621a.75.75 0 0 1-1.06 0l-.622-.621A2.25 2.25 0 0 0 5.258 13H.75a.75.75 0 0 1-.75-.75Zm7.251 10.324.004-5.073-.002-2.253A2.25 2.25 0 0 0 5.003 2.5H1.5v9h3.757a3.75 3.75 0 0 1 1.994.574M8.755 4.75l-.004 7.322a3.75 3.75 0 0 1 1.992-.572H14.5v-9h-3.495a2.25 2.25 0 0 0-2.25 2.25"/></svg> 百科
</a>
<a class="item" href="/third/dify/activity">
<svg viewBox="0 0 16 16" class="svg octicon-pulse" aria-hidden="true" width="16" height="16"><path d="M6 2c.306 0 .582.187.696.471L10 10.731l1.304-3.26A.75.75 0 0 1 12 7h3.25a.75.75 0 0 1 0 1.5h-2.742l-1.812 4.528a.751.751 0 0 1-1.392 0L6 4.77 4.696 8.03A.75.75 0 0 1 4 8.5H.75a.75.75 0 0 1 0-1.5h2.742l1.812-4.529A.75.75 0 0 1 6 2"/></svg> 动态
</a>
<span class="item-flex-space"></span>
<a class=" item" href="/third/dify/settings">
<svg viewBox="0 0 16 16" class="svg octicon-tools" aria-hidden="true" width="16" height="16"><path d="M5.433 2.304A4.49 4.49 0 0 0 3.5 6c0 1.598.832 3.002 2.09 3.802.518.328.929.923.902 1.64v.008l-.164 3.337a.75.75 0 1 1-1.498-.073l.163-3.33c.002-.085-.05-.216-.207-.316A6 6 0 0 1 2 6a6 6 0 0 1 2.567-4.92 1.48 1.48 0 0 1 1.673-.04c.462.296.76.827.76 1.423v2.82c0 .082.041.16.11.206l.75.51a.25.25 0 0 0 .28 0l.75-.51A.25.25 0 0 0 9 5.282V2.463c0-.596.298-1.127.76-1.423a1.48 1.48 0 0 1 1.673.04A6 6 0 0 1 14 6a6 6 0 0 1-2.786 5.068c-.157.1-.209.23-.207.315l.163 3.33a.752.752 0 0 1-1.094.714.75.75 0 0 1-.404-.64l-.164-3.345c-.027-.717.384-1.312.902-1.64A4.5 4.5 0 0 0 12.5 6a4.49 4.49 0 0 0-1.933-3.696c-.024.017-.067.067-.067.16v2.818a1.75 1.75 0 0 1-.767 1.448l-.75.51a1.75 1.75 0 0 1-1.966 0l-.75-.51A1.75 1.75 0 0 1 5.5 5.282V2.463c0-.092-.043-.142-.067-.159"/></svg> 设置
</a>
</div>
</overflow-menu>
</div>
<div class="ui tabs divider"></div>
</div>
<div class="ui container ">
<div class="repo-grid-filelist-only">
<div class="repo-home-filelist">
<div class="repo-button-row">
<div class="repo-button-row-left">
<div class="js-branch-tag-selector "
data-text-release-compare="比较"
data-text-branches="分支列表"
data-text-tags="标签列表"
data-text-filter-branch="过滤分支"
data-text-filter-tag="查找Git标签"
data-text-default-branch-label="默认"
data-text-create-tag="创建标签 %s"
data-text-create-branch="创建分支 %s"
data-text-create-ref-from="从 %s"
data-text-no-results="未找到结果"
data-text-view-all-branches="查看所有分支"
data-text-view-all-tags="查看所有标签"
data-current-repo-default-branch="main"
data-current-repo-link="/third/dify"
data-current-tree-path="docker/.env.example"
data-current-ref-type="branch"
data-current-ref-short-name="main"
data-ref-link-template="{RepoLink}/src/{RefType}/{RefShortName}/{TreePath}"
data-ref-form-action-template=""
data-dropdown-fixed-text=""
data-show-tab-branches="true"
data-show-tab-tags="true"
data-allow-create-new-ref="false"
data-show-view-all-refs-entry="true"
data-enable-feed="true"
>
<div class="ui dropdown custom branch-selector-dropdown ellipsis-items-nowrap">
<div class="ui button branch-dropdown-button">
<span class="flex-text-block gt-ellipsis">
<svg viewBox="0 0 16 16" class="svg octicon-tag" aria-hidden="true" width="16" height="16"><path d="M1 7.775V2.75C1 1.784 1.784 1 2.75 1h5.025c.464 0 .91.184 1.238.513l6.25 6.25a1.75 1.75 0 0 1 0 2.474l-5.026 5.026a1.75 1.75 0 0 1-2.474 0l-6.25-6.25A1.75 1.75 0 0 1 1 7.775m1.5 0c0 .066.026.13.073.177l6.25 6.25a.25.25 0 0 0 .354 0l5.025-5.025a.25.25 0 0 0 0-.354l-6.25-6.25a.25.25 0 0 0-.177-.073H2.75a.25.25 0 0 0-.25.25ZM6 5a1 1 0 1 1 0 2 1 1 0 0 1 0-2"/></svg>
<strong class="tw-ml-2 tw-inline-block gt-ellipsis"></strong>
</span>
<svg viewBox="0 0 16 16" class="dropdown icon svg octicon-triangle-down" aria-hidden="true" width="14" height="14"><path d="m4.427 7.427 3.396 3.396a.25.25 0 0 0 .354 0l3.396-3.396A.25.25 0 0 0 11.396 7H4.604a.25.25 0 0 0-.177.427"/></svg>
</div>
</div>
</div>
<span class="breadcrumb repo-path tw-ml-1">
<a class="section" href="/third/dify/src/branch/main" title="dify">dify</a><span class="breadcrumb-divider">/</span><span class="section"><a href="/third/dify/src/branch/main/docker" title="docker">docker</a></span><span class="breadcrumb-divider">/</span><span class="active section" title=".env.example">.env.example</span>
<button class="btn interact-fg tw-mx-1" data-clipboard-text="docker/.env.example" data-tooltip-content="复制路径"><svg viewBox="0 0 16 16" class="svg octicon-copy" aria-hidden="true" width="14" height="14"><path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"/><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"/></svg></button></span>
</div>
<div class="repo-button-row-right">
</div>
</div>
<div class="tab-size-4 non-diff-file-content">
<div id="repo-file-commit-box" class="ui segment list-header tw-mb-4 tw-flex tw-justify-between">
<div class="latest-commit">
<img loading="lazy" class="ui avatar tw-align-middle" src="/assets/img/avatar_default.png" title="znn" width="24" height="24"/>
<span class="author-wrapper" title="znn"><strong>znn</strong></span>
<a rel="nofollow" class="ui sha label isSigned " href="/third/dify/commit/d776a7cde79750fd5fea8134257abb2a4286feed">
<span class="shortsha">d776a7cde7</span>
<div class="ui detail icon button">
<span title="找不到此签名对应的密钥"><svg viewBox="0 0 14 16" class="svg gitea-unlock" aria-hidden="true" width="16" height="16"><path d="M12.5 8H4.75V4.778c0-1.237.99-2.265 2.228-2.278A2.253 2.253 0 0 1 9.25 4.75v.5c0 .416.334.75.75.75h1c.416 0 .75-.334.75-.75v-.5c0-2.625-2.14-4.76-4.766-4.75C4.36.01 2.25 2.172 2.25 4.797V8H1.5A1.5 1.5 0 0 0 0 9.5v5A1.5 1.5 0 0 0 1.5 16h11a1.5 1.5 0 0 0 1.5-1.5v-5A1.5 1.5 0 0 0 12.5 8"/></svg></span>
</div>
</a>
<span class="grey commit-summary" title="adding LANG LC_ALL PYTHONIOENCODING UTF-8 (#22928)"><span class="message-wrapper"><a href="/third/dify/commit/d776a7cde79750fd5fea8134257abb2a4286feed" class="muted">adding LANG LC_ALL PYTHONIOENCODING UTF-8 (</a><a href="/third/dify/issues/22928" data-markdown-generated-content="" class="ref-issue">#22928</a><a href="/third/dify/commit/d776a7cde79750fd5fea8134257abb2a4286feed" class="muted">)</a></span>
<button class="ui button js-toggle-commit-body ellipsis-button" aria-expanded="false">...</button>
<pre class="commit-body tw-hidden">Co-authored-by: Copilot &lt;175728472+Copilot@users.noreply.github.com&gt;</pre>
</span>
</div>
<div class="text grey age">
<relative-time prefix="" tense="past" datetime="2025-07-27T09:19:13+08:00" data-tooltip-content data-tooltip-interactive="true">2025-07-27 09:19:13 +08:00</relative-time>
</div>
</div>
<h4 class="file-header ui top attached header tw-flex tw-items-center tw-justify-between tw-flex-wrap">
<div class="file-header-left tw-flex tw-items-center tw-py-2 tw-pr-4">
<div class="file-info tw-font-mono">
<div class="file-info-entry">
1186 行
</div>
<div class="file-info-entry">
39 KiB
</div>
<div class="file-info-entry">
Plaintext
</div>
</div>
</div>
<div class="file-header-right file-actions tw-flex tw-items-center tw-flex-wrap">
<div class="ui buttons tw-mr-1">
<a class="ui mini basic button" href="/third/dify/raw/branch/main/docker/.env.example">原始文件</a>
<a class="ui mini basic button" href="/third/dify/src/commit/72a2c3decf2b53d1c74c8f04ddabe4762b76827c/docker/.env.example">永久链接</a>
<a class="ui mini basic button" href="/third/dify/blame/branch/main/docker/.env.example">Blame</a>
<a class="ui mini basic button" href="/third/dify/commits/branch/main/docker/.env.example">文件历史</a>
</div>
<a download class="btn-octicon" data-tooltip-content="下载文件" href="/third/dify/raw/branch/main/docker/.env.example"><svg viewBox="0 0 16 16" class="svg octicon-download" aria-hidden="true" width="16" height="16"><path d="M2.75 14A1.75 1.75 0 0 1 1 12.25v-2.5a.75.75 0 0 1 1.5 0v2.5c0 .138.112.25.25.25h10.5a.25.25 0 0 0 .25-.25v-2.5a.75.75 0 0 1 1.5 0v2.5A1.75 1.75 0 0 1 13.25 14Z"/><path d="M7.25 7.689V2a.75.75 0 0 1 1.5 0v5.689l1.97-1.969a.749.749 0 1 1 1.06 1.06l-3.25 3.25a.75.75 0 0 1-1.06 0L4.22 6.78a.749.749 0 1 1 1.06-1.06z"/></svg></a>
<a id="copy-content" class="btn-octicon " data-tooltip-content="复制内容"><svg viewBox="0 0 16 16" class="svg octicon-copy" aria-hidden="true" width="16" height="16"><path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"/><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"/></svg></a>
<a class="btn-octicon" href="/third/dify/rss/branch/main/docker/.env.example" data-tooltip-content="RSS 订阅源">
<svg viewBox="0 0 16 16" class="svg octicon-rss" aria-hidden="true" width="16" height="16"><path d="M2.002 2.725a.75.75 0 0 1 .797-.699C8.79 2.42 13.58 7.21 13.974 13.201a.75.75 0 0 1-1.497.098 10.5 10.5 0 0 0-9.776-9.776.747.747 0 0 1-.7-.798ZM2.84 7.05h-.002a7 7 0 0 1 6.113 6.111.75.75 0 0 1-1.49.178 5.5 5.5 0 0 0-4.8-4.8.75.75 0 0 1 .179-1.489M2 13a1 1 0 1 1 2 0 1 1 0 0 1-2 0"/></svg>
</a>
</div>
</h4>
<div class="ui bottom attached table unstackable segment">
<div class="file-view code-view">
<table>
<tbody>
<tr>
<td id="L1" class="lines-num"><span id="L1" data-line-number="1"></span></td>
<td rel="L1" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L2" class="lines-num"><span id="L2" data-line-number="2"></span></td>
<td rel="L2" class="lines-code chroma"><code class="code-inner"># Environment Variables for API service &amp; worker
</code></td>
</tr>
<tr>
<td id="L3" class="lines-num"><span id="L3" data-line-number="3"></span></td>
<td rel="L3" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L4" class="lines-num"><span id="L4" data-line-number="4"></span></td>
<td rel="L4" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L5" class="lines-num"><span id="L5" data-line-number="5"></span></td>
<td rel="L5" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L6" class="lines-num"><span id="L6" data-line-number="6"></span></td>
<td rel="L6" class="lines-code chroma"><code class="code-inner"># Common Variables
</code></td>
</tr>
<tr>
<td id="L7" class="lines-num"><span id="L7" data-line-number="7"></span></td>
<td rel="L7" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L8" class="lines-num"><span id="L8" data-line-number="8"></span></td>
<td rel="L8" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L9" class="lines-num"><span id="L9" data-line-number="9"></span></td>
<td rel="L9" class="lines-code chroma"><code class="code-inner"># The backend URL of the console API,
</code></td>
</tr>
<tr>
<td id="L10" class="lines-num"><span id="L10" data-line-number="10"></span></td>
<td rel="L10" class="lines-code chroma"><code class="code-inner"># used to concatenate the authorization callback.
</code></td>
</tr>
<tr>
<td id="L11" class="lines-num"><span id="L11" data-line-number="11"></span></td>
<td rel="L11" class="lines-code chroma"><code class="code-inner"># If empty, it is the same domain.
</code></td>
</tr>
<tr>
<td id="L12" class="lines-num"><span id="L12" data-line-number="12"></span></td>
<td rel="L12" class="lines-code chroma"><code class="code-inner"># Example: https://api.console.dify.ai
</code></td>
</tr>
<tr>
<td id="L13" class="lines-num"><span id="L13" data-line-number="13"></span></td>
<td rel="L13" class="lines-code chroma"><code class="code-inner">CONSOLE_API_URL=
</code></td>
</tr>
<tr>
<td id="L14" class="lines-num"><span id="L14" data-line-number="14"></span></td>
<td rel="L14" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L15" class="lines-num"><span id="L15" data-line-number="15"></span></td>
<td rel="L15" class="lines-code chroma"><code class="code-inner"># The front-end URL of the console web,
</code></td>
</tr>
<tr>
<td id="L16" class="lines-num"><span id="L16" data-line-number="16"></span></td>
<td rel="L16" class="lines-code chroma"><code class="code-inner"># used to concatenate some front-end addresses and for CORS configuration use.
</code></td>
</tr>
<tr>
<td id="L17" class="lines-num"><span id="L17" data-line-number="17"></span></td>
<td rel="L17" class="lines-code chroma"><code class="code-inner"># If empty, it is the same domain.
</code></td>
</tr>
<tr>
<td id="L18" class="lines-num"><span id="L18" data-line-number="18"></span></td>
<td rel="L18" class="lines-code chroma"><code class="code-inner"># Example: https://console.dify.ai
</code></td>
</tr>
<tr>
<td id="L19" class="lines-num"><span id="L19" data-line-number="19"></span></td>
<td rel="L19" class="lines-code chroma"><code class="code-inner">CONSOLE_WEB_URL=
</code></td>
</tr>
<tr>
<td id="L20" class="lines-num"><span id="L20" data-line-number="20"></span></td>
<td rel="L20" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L21" class="lines-num"><span id="L21" data-line-number="21"></span></td>
<td rel="L21" class="lines-code chroma"><code class="code-inner"># Service API Url,
</code></td>
</tr>
<tr>
<td id="L22" class="lines-num"><span id="L22" data-line-number="22"></span></td>
<td rel="L22" class="lines-code chroma"><code class="code-inner"># used to display Service API Base Url to the front-end.
</code></td>
</tr>
<tr>
<td id="L23" class="lines-num"><span id="L23" data-line-number="23"></span></td>
<td rel="L23" class="lines-code chroma"><code class="code-inner"># If empty, it is the same domain.
</code></td>
</tr>
<tr>
<td id="L24" class="lines-num"><span id="L24" data-line-number="24"></span></td>
<td rel="L24" class="lines-code chroma"><code class="code-inner"># Example: https://api.dify.ai
</code></td>
</tr>
<tr>
<td id="L25" class="lines-num"><span id="L25" data-line-number="25"></span></td>
<td rel="L25" class="lines-code chroma"><code class="code-inner">SERVICE_API_URL=
</code></td>
</tr>
<tr>
<td id="L26" class="lines-num"><span id="L26" data-line-number="26"></span></td>
<td rel="L26" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L27" class="lines-num"><span id="L27" data-line-number="27"></span></td>
<td rel="L27" class="lines-code chroma"><code class="code-inner"># WebApp API backend Url,
</code></td>
</tr>
<tr>
<td id="L28" class="lines-num"><span id="L28" data-line-number="28"></span></td>
<td rel="L28" class="lines-code chroma"><code class="code-inner"># used to declare the back-end URL for the front-end API.
</code></td>
</tr>
<tr>
<td id="L29" class="lines-num"><span id="L29" data-line-number="29"></span></td>
<td rel="L29" class="lines-code chroma"><code class="code-inner"># If empty, it is the same domain.
</code></td>
</tr>
<tr>
<td id="L30" class="lines-num"><span id="L30" data-line-number="30"></span></td>
<td rel="L30" class="lines-code chroma"><code class="code-inner"># Example: https://api.app.dify.ai
</code></td>
</tr>
<tr>
<td id="L31" class="lines-num"><span id="L31" data-line-number="31"></span></td>
<td rel="L31" class="lines-code chroma"><code class="code-inner">APP_API_URL=
</code></td>
</tr>
<tr>
<td id="L32" class="lines-num"><span id="L32" data-line-number="32"></span></td>
<td rel="L32" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L33" class="lines-num"><span id="L33" data-line-number="33"></span></td>
<td rel="L33" class="lines-code chroma"><code class="code-inner"># WebApp Url,
</code></td>
</tr>
<tr>
<td id="L34" class="lines-num"><span id="L34" data-line-number="34"></span></td>
<td rel="L34" class="lines-code chroma"><code class="code-inner"># used to display WebAPP API Base Url to the front-end.
</code></td>
</tr>
<tr>
<td id="L35" class="lines-num"><span id="L35" data-line-number="35"></span></td>
<td rel="L35" class="lines-code chroma"><code class="code-inner"># If empty, it is the same domain.
</code></td>
</tr>
<tr>
<td id="L36" class="lines-num"><span id="L36" data-line-number="36"></span></td>
<td rel="L36" class="lines-code chroma"><code class="code-inner"># Example: https://app.dify.ai
</code></td>
</tr>
<tr>
<td id="L37" class="lines-num"><span id="L37" data-line-number="37"></span></td>
<td rel="L37" class="lines-code chroma"><code class="code-inner">APP_WEB_URL=
</code></td>
</tr>
<tr>
<td id="L38" class="lines-num"><span id="L38" data-line-number="38"></span></td>
<td rel="L38" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L39" class="lines-num"><span id="L39" data-line-number="39"></span></td>
<td rel="L39" class="lines-code chroma"><code class="code-inner"># File preview or download Url prefix.
</code></td>
</tr>
<tr>
<td id="L40" class="lines-num"><span id="L40" data-line-number="40"></span></td>
<td rel="L40" class="lines-code chroma"><code class="code-inner"># used to display File preview or download Url to the front-end or as Multi-model inputs;
</code></td>
</tr>
<tr>
<td id="L41" class="lines-num"><span id="L41" data-line-number="41"></span></td>
<td rel="L41" class="lines-code chroma"><code class="code-inner"># Url is signed and has expiration time.
</code></td>
</tr>
<tr>
<td id="L42" class="lines-num"><span id="L42" data-line-number="42"></span></td>
<td rel="L42" class="lines-code chroma"><code class="code-inner"># Setting FILES_URL is required for file processing plugins.
</code></td>
</tr>
<tr>
<td id="L43" class="lines-num"><span id="L43" data-line-number="43"></span></td>
<td rel="L43" class="lines-code chroma"><code class="code-inner"># - For https://example.com, use FILES_URL=https://example.com
</code></td>
</tr>
<tr>
<td id="L44" class="lines-num"><span id="L44" data-line-number="44"></span></td>
<td rel="L44" class="lines-code chroma"><code class="code-inner"># - For http://example.com, use FILES_URL=http://example.com
</code></td>
</tr>
<tr>
<td id="L45" class="lines-num"><span id="L45" data-line-number="45"></span></td>
<td rel="L45" class="lines-code chroma"><code class="code-inner"># Recommendation: use a dedicated domain (e.g., https://upload.example.com).
</code></td>
</tr>
<tr>
<td id="L46" class="lines-num"><span id="L46" data-line-number="46"></span></td>
<td rel="L46" class="lines-code chroma"><code class="code-inner"># Alternatively, use http://&lt;your-ip&gt;:5001 or http://api:5001,
</code></td>
</tr>
<tr>
<td id="L47" class="lines-num"><span id="L47" data-line-number="47"></span></td>
<td rel="L47" class="lines-code chroma"><code class="code-inner"># ensuring port 5001 is externally accessible (see docker-compose.yaml).
</code></td>
</tr>
<tr>
<td id="L48" class="lines-num"><span id="L48" data-line-number="48"></span></td>
<td rel="L48" class="lines-code chroma"><code class="code-inner">FILES_URL=
</code></td>
</tr>
<tr>
<td id="L49" class="lines-num"><span id="L49" data-line-number="49"></span></td>
<td rel="L49" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L50" class="lines-num"><span id="L50" data-line-number="50"></span></td>
<td rel="L50" class="lines-code chroma"><code class="code-inner"># INTERNAL_FILES_URL is used for plugin daemon communication within Docker network.
</code></td>
</tr>
<tr>
<td id="L51" class="lines-num"><span id="L51" data-line-number="51"></span></td>
<td rel="L51" class="lines-code chroma"><code class="code-inner"># Set this to the internal Docker service URL for proper plugin file access.
</code></td>
</tr>
<tr>
<td id="L52" class="lines-num"><span id="L52" data-line-number="52"></span></td>
<td rel="L52" class="lines-code chroma"><code class="code-inner"># Example: INTERNAL_FILES_URL=http://api:5001
</code></td>
</tr>
<tr>
<td id="L53" class="lines-num"><span id="L53" data-line-number="53"></span></td>
<td rel="L53" class="lines-code chroma"><code class="code-inner">INTERNAL_FILES_URL=
</code></td>
</tr>
<tr>
<td id="L54" class="lines-num"><span id="L54" data-line-number="54"></span></td>
<td rel="L54" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L55" class="lines-num"><span id="L55" data-line-number="55"></span></td>
<td rel="L55" class="lines-code chroma"><code class="code-inner"># Ensure UTF-8 encoding
</code></td>
</tr>
<tr>
<td id="L56" class="lines-num"><span id="L56" data-line-number="56"></span></td>
<td rel="L56" class="lines-code chroma"><code class="code-inner">LANG=en_US.UTF-8
</code></td>
</tr>
<tr>
<td id="L57" class="lines-num"><span id="L57" data-line-number="57"></span></td>
<td rel="L57" class="lines-code chroma"><code class="code-inner">LC_ALL=en_US.UTF-8
</code></td>
</tr>
<tr>
<td id="L58" class="lines-num"><span id="L58" data-line-number="58"></span></td>
<td rel="L58" class="lines-code chroma"><code class="code-inner">PYTHONIOENCODING=utf-8
</code></td>
</tr>
<tr>
<td id="L59" class="lines-num"><span id="L59" data-line-number="59"></span></td>
<td rel="L59" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L60" class="lines-num"><span id="L60" data-line-number="60"></span></td>
<td rel="L60" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L61" class="lines-num"><span id="L61" data-line-number="61"></span></td>
<td rel="L61" class="lines-code chroma"><code class="code-inner"># Server Configuration
</code></td>
</tr>
<tr>
<td id="L62" class="lines-num"><span id="L62" data-line-number="62"></span></td>
<td rel="L62" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L63" class="lines-num"><span id="L63" data-line-number="63"></span></td>
<td rel="L63" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L64" class="lines-num"><span id="L64" data-line-number="64"></span></td>
<td rel="L64" class="lines-code chroma"><code class="code-inner"># The log level for the application.
</code></td>
</tr>
<tr>
<td id="L65" class="lines-num"><span id="L65" data-line-number="65"></span></td>
<td rel="L65" class="lines-code chroma"><code class="code-inner"># Supported values are `DEBUG`, `INFO`, `WARNING`, `ERROR`, `CRITICAL`
</code></td>
</tr>
<tr>
<td id="L66" class="lines-num"><span id="L66" data-line-number="66"></span></td>
<td rel="L66" class="lines-code chroma"><code class="code-inner">LOG_LEVEL=INFO
</code></td>
</tr>
<tr>
<td id="L67" class="lines-num"><span id="L67" data-line-number="67"></span></td>
<td rel="L67" class="lines-code chroma"><code class="code-inner"># Log file path
</code></td>
</tr>
<tr>
<td id="L68" class="lines-num"><span id="L68" data-line-number="68"></span></td>
<td rel="L68" class="lines-code chroma"><code class="code-inner">LOG_FILE=/app/logs/server.log
</code></td>
</tr>
<tr>
<td id="L69" class="lines-num"><span id="L69" data-line-number="69"></span></td>
<td rel="L69" class="lines-code chroma"><code class="code-inner"># Log file max size, the unit is MB
</code></td>
</tr>
<tr>
<td id="L70" class="lines-num"><span id="L70" data-line-number="70"></span></td>
<td rel="L70" class="lines-code chroma"><code class="code-inner">LOG_FILE_MAX_SIZE=20
</code></td>
</tr>
<tr>
<td id="L71" class="lines-num"><span id="L71" data-line-number="71"></span></td>
<td rel="L71" class="lines-code chroma"><code class="code-inner"># Log file max backup count
</code></td>
</tr>
<tr>
<td id="L72" class="lines-num"><span id="L72" data-line-number="72"></span></td>
<td rel="L72" class="lines-code chroma"><code class="code-inner">LOG_FILE_BACKUP_COUNT=5
</code></td>
</tr>
<tr>
<td id="L73" class="lines-num"><span id="L73" data-line-number="73"></span></td>
<td rel="L73" class="lines-code chroma"><code class="code-inner"># Log dateformat
</code></td>
</tr>
<tr>
<td id="L74" class="lines-num"><span id="L74" data-line-number="74"></span></td>
<td rel="L74" class="lines-code chroma"><code class="code-inner">LOG_DATEFORMAT=%Y-%m-%d %H:%M:%S
</code></td>
</tr>
<tr>
<td id="L75" class="lines-num"><span id="L75" data-line-number="75"></span></td>
<td rel="L75" class="lines-code chroma"><code class="code-inner"># Log Timezone
</code></td>
</tr>
<tr>
<td id="L76" class="lines-num"><span id="L76" data-line-number="76"></span></td>
<td rel="L76" class="lines-code chroma"><code class="code-inner">LOG_TZ=UTC
</code></td>
</tr>
<tr>
<td id="L77" class="lines-num"><span id="L77" data-line-number="77"></span></td>
<td rel="L77" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L78" class="lines-num"><span id="L78" data-line-number="78"></span></td>
<td rel="L78" class="lines-code chroma"><code class="code-inner"># Debug mode, default is false.
</code></td>
</tr>
<tr>
<td id="L79" class="lines-num"><span id="L79" data-line-number="79"></span></td>
<td rel="L79" class="lines-code chroma"><code class="code-inner"># It is recommended to turn on this configuration for local development
</code></td>
</tr>
<tr>
<td id="L80" class="lines-num"><span id="L80" data-line-number="80"></span></td>
<td rel="L80" class="lines-code chroma"><code class="code-inner"># to prevent some problems caused by monkey patch.
</code></td>
</tr>
<tr>
<td id="L81" class="lines-num"><span id="L81" data-line-number="81"></span></td>
<td rel="L81" class="lines-code chroma"><code class="code-inner">DEBUG=false
</code></td>
</tr>
<tr>
<td id="L82" class="lines-num"><span id="L82" data-line-number="82"></span></td>
<td rel="L82" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L83" class="lines-num"><span id="L83" data-line-number="83"></span></td>
<td rel="L83" class="lines-code chroma"><code class="code-inner"># Flask debug mode, it can output trace information at the interface when turned on,
</code></td>
</tr>
<tr>
<td id="L84" class="lines-num"><span id="L84" data-line-number="84"></span></td>
<td rel="L84" class="lines-code chroma"><code class="code-inner"># which is convenient for debugging.
</code></td>
</tr>
<tr>
<td id="L85" class="lines-num"><span id="L85" data-line-number="85"></span></td>
<td rel="L85" class="lines-code chroma"><code class="code-inner">FLASK_DEBUG=false
</code></td>
</tr>
<tr>
<td id="L86" class="lines-num"><span id="L86" data-line-number="86"></span></td>
<td rel="L86" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L87" class="lines-num"><span id="L87" data-line-number="87"></span></td>
<td rel="L87" class="lines-code chroma"><code class="code-inner"># Enable request logging, which will log the request and response information.
</code></td>
</tr>
<tr>
<td id="L88" class="lines-num"><span id="L88" data-line-number="88"></span></td>
<td rel="L88" class="lines-code chroma"><code class="code-inner"># And the log level is DEBUG
</code></td>
</tr>
<tr>
<td id="L89" class="lines-num"><span id="L89" data-line-number="89"></span></td>
<td rel="L89" class="lines-code chroma"><code class="code-inner">ENABLE_REQUEST_LOGGING=False
</code></td>
</tr>
<tr>
<td id="L90" class="lines-num"><span id="L90" data-line-number="90"></span></td>
<td rel="L90" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L91" class="lines-num"><span id="L91" data-line-number="91"></span></td>
<td rel="L91" class="lines-code chroma"><code class="code-inner"># A secret key that is used for securely signing the session cookie
</code></td>
</tr>
<tr>
<td id="L92" class="lines-num"><span id="L92" data-line-number="92"></span></td>
<td rel="L92" class="lines-code chroma"><code class="code-inner"># and encrypting sensitive information on the database.
</code></td>
</tr>
<tr>
<td id="L93" class="lines-num"><span id="L93" data-line-number="93"></span></td>
<td rel="L93" class="lines-code chroma"><code class="code-inner"># You can generate a strong key using `openssl rand -base64 42`.
</code></td>
</tr>
<tr>
<td id="L94" class="lines-num"><span id="L94" data-line-number="94"></span></td>
<td rel="L94" class="lines-code chroma"><code class="code-inner">SECRET_KEY=sk-9f73s3ljTXVcMT3Blb3ljTqtsKiGHXVcMT3BlbkFJLK7U
</code></td>
</tr>
<tr>
<td id="L95" class="lines-num"><span id="L95" data-line-number="95"></span></td>
<td rel="L95" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L96" class="lines-num"><span id="L96" data-line-number="96"></span></td>
<td rel="L96" class="lines-code chroma"><code class="code-inner"># Password for admin user initialization.
</code></td>
</tr>
<tr>
<td id="L97" class="lines-num"><span id="L97" data-line-number="97"></span></td>
<td rel="L97" class="lines-code chroma"><code class="code-inner"># If left unset, admin user will not be prompted for a password
</code></td>
</tr>
<tr>
<td id="L98" class="lines-num"><span id="L98" data-line-number="98"></span></td>
<td rel="L98" class="lines-code chroma"><code class="code-inner"># when creating the initial admin account.
</code></td>
</tr>
<tr>
<td id="L99" class="lines-num"><span id="L99" data-line-number="99"></span></td>
<td rel="L99" class="lines-code chroma"><code class="code-inner"># The length of the password cannot exceed 30 characters.
</code></td>
</tr>
<tr>
<td id="L100" class="lines-num"><span id="L100" data-line-number="100"></span></td>
<td rel="L100" class="lines-code chroma"><code class="code-inner">INIT_PASSWORD=
</code></td>
</tr>
<tr>
<td id="L101" class="lines-num"><span id="L101" data-line-number="101"></span></td>
<td rel="L101" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L102" class="lines-num"><span id="L102" data-line-number="102"></span></td>
<td rel="L102" class="lines-code chroma"><code class="code-inner"># Deployment environment.
</code></td>
</tr>
<tr>
<td id="L103" class="lines-num"><span id="L103" data-line-number="103"></span></td>
<td rel="L103" class="lines-code chroma"><code class="code-inner"># Supported values are `PRODUCTION`, `TESTING`. Default is `PRODUCTION`.
</code></td>
</tr>
<tr>
<td id="L104" class="lines-num"><span id="L104" data-line-number="104"></span></td>
<td rel="L104" class="lines-code chroma"><code class="code-inner"># Testing environment. There will be a distinct color label on the front-end page,
</code></td>
</tr>
<tr>
<td id="L105" class="lines-num"><span id="L105" data-line-number="105"></span></td>
<td rel="L105" class="lines-code chroma"><code class="code-inner"># indicating that this environment is a testing environment.
</code></td>
</tr>
<tr>
<td id="L106" class="lines-num"><span id="L106" data-line-number="106"></span></td>
<td rel="L106" class="lines-code chroma"><code class="code-inner">DEPLOY_ENV=PRODUCTION
</code></td>
</tr>
<tr>
<td id="L107" class="lines-num"><span id="L107" data-line-number="107"></span></td>
<td rel="L107" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L108" class="lines-num"><span id="L108" data-line-number="108"></span></td>
<td rel="L108" class="lines-code chroma"><code class="code-inner"># Whether to enable the version check policy.
</code></td>
</tr>
<tr>
<td id="L109" class="lines-num"><span id="L109" data-line-number="109"></span></td>
<td rel="L109" class="lines-code chroma"><code class="code-inner"># If set to empty, https://updates.dify.ai will be called for version check.
</code></td>
</tr>
<tr>
<td id="L110" class="lines-num"><span id="L110" data-line-number="110"></span></td>
<td rel="L110" class="lines-code chroma"><code class="code-inner">CHECK_UPDATE_URL=https://updates.dify.ai
</code></td>
</tr>
<tr>
<td id="L111" class="lines-num"><span id="L111" data-line-number="111"></span></td>
<td rel="L111" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L112" class="lines-num"><span id="L112" data-line-number="112"></span></td>
<td rel="L112" class="lines-code chroma"><code class="code-inner"># Used to change the OpenAI base address, default is https://api.openai.com/v1.
</code></td>
</tr>
<tr>
<td id="L113" class="lines-num"><span id="L113" data-line-number="113"></span></td>
<td rel="L113" class="lines-code chroma"><code class="code-inner"># When OpenAI cannot be accessed in China, replace it with a domestic mirror address,
</code></td>
</tr>
<tr>
<td id="L114" class="lines-num"><span id="L114" data-line-number="114"></span></td>
<td rel="L114" class="lines-code chroma"><code class="code-inner"># or when a local model provides OpenAI compatible API, it can be replaced.
</code></td>
</tr>
<tr>
<td id="L115" class="lines-num"><span id="L115" data-line-number="115"></span></td>
<td rel="L115" class="lines-code chroma"><code class="code-inner">OPENAI_API_BASE=https://api.openai.com/v1
</code></td>
</tr>
<tr>
<td id="L116" class="lines-num"><span id="L116" data-line-number="116"></span></td>
<td rel="L116" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L117" class="lines-num"><span id="L117" data-line-number="117"></span></td>
<td rel="L117" class="lines-code chroma"><code class="code-inner"># When enabled, migrations will be executed prior to application startup
</code></td>
</tr>
<tr>
<td id="L118" class="lines-num"><span id="L118" data-line-number="118"></span></td>
<td rel="L118" class="lines-code chroma"><code class="code-inner"># and the application will start after the migrations have completed.
</code></td>
</tr>
<tr>
<td id="L119" class="lines-num"><span id="L119" data-line-number="119"></span></td>
<td rel="L119" class="lines-code chroma"><code class="code-inner">MIGRATION_ENABLED=true
</code></td>
</tr>
<tr>
<td id="L120" class="lines-num"><span id="L120" data-line-number="120"></span></td>
<td rel="L120" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L121" class="lines-num"><span id="L121" data-line-number="121"></span></td>
<td rel="L121" class="lines-code chroma"><code class="code-inner"># File Access Time specifies a time interval in seconds for the file to be accessed.
</code></td>
</tr>
<tr>
<td id="L122" class="lines-num"><span id="L122" data-line-number="122"></span></td>
<td rel="L122" class="lines-code chroma"><code class="code-inner"># The default value is 300 seconds.
</code></td>
</tr>
<tr>
<td id="L123" class="lines-num"><span id="L123" data-line-number="123"></span></td>
<td rel="L123" class="lines-code chroma"><code class="code-inner">FILES_ACCESS_TIMEOUT=300
</code></td>
</tr>
<tr>
<td id="L124" class="lines-num"><span id="L124" data-line-number="124"></span></td>
<td rel="L124" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L125" class="lines-num"><span id="L125" data-line-number="125"></span></td>
<td rel="L125" class="lines-code chroma"><code class="code-inner"># Access token expiration time in minutes
</code></td>
</tr>
<tr>
<td id="L126" class="lines-num"><span id="L126" data-line-number="126"></span></td>
<td rel="L126" class="lines-code chroma"><code class="code-inner">ACCESS_TOKEN_EXPIRE_MINUTES=60
</code></td>
</tr>
<tr>
<td id="L127" class="lines-num"><span id="L127" data-line-number="127"></span></td>
<td rel="L127" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L128" class="lines-num"><span id="L128" data-line-number="128"></span></td>
<td rel="L128" class="lines-code chroma"><code class="code-inner"># Refresh token expiration time in days
</code></td>
</tr>
<tr>
<td id="L129" class="lines-num"><span id="L129" data-line-number="129"></span></td>
<td rel="L129" class="lines-code chroma"><code class="code-inner">REFRESH_TOKEN_EXPIRE_DAYS=30
</code></td>
</tr>
<tr>
<td id="L130" class="lines-num"><span id="L130" data-line-number="130"></span></td>
<td rel="L130" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L131" class="lines-num"><span id="L131" data-line-number="131"></span></td>
<td rel="L131" class="lines-code chroma"><code class="code-inner"># The maximum number of active requests for the application, where 0 means unlimited, should be a non-negative integer.
</code></td>
</tr>
<tr>
<td id="L132" class="lines-num"><span id="L132" data-line-number="132"></span></td>
<td rel="L132" class="lines-code chroma"><code class="code-inner">APP_MAX_ACTIVE_REQUESTS=0
</code></td>
</tr>
<tr>
<td id="L133" class="lines-num"><span id="L133" data-line-number="133"></span></td>
<td rel="L133" class="lines-code chroma"><code class="code-inner">APP_MAX_EXECUTION_TIME=1200
</code></td>
</tr>
<tr>
<td id="L134" class="lines-num"><span id="L134" data-line-number="134"></span></td>
<td rel="L134" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L135" class="lines-num"><span id="L135" data-line-number="135"></span></td>
<td rel="L135" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L136" class="lines-num"><span id="L136" data-line-number="136"></span></td>
<td rel="L136" class="lines-code chroma"><code class="code-inner"># Container Startup Related Configuration
</code></td>
</tr>
<tr>
<td id="L137" class="lines-num"><span id="L137" data-line-number="137"></span></td>
<td rel="L137" class="lines-code chroma"><code class="code-inner"># Only effective when starting with docker image or docker-compose.
</code></td>
</tr>
<tr>
<td id="L138" class="lines-num"><span id="L138" data-line-number="138"></span></td>
<td rel="L138" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L139" class="lines-num"><span id="L139" data-line-number="139"></span></td>
<td rel="L139" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L140" class="lines-num"><span id="L140" data-line-number="140"></span></td>
<td rel="L140" class="lines-code chroma"><code class="code-inner"># API service binding address, default: 0.0.0.0, i.e., all addresses can be accessed.
</code></td>
</tr>
<tr>
<td id="L141" class="lines-num"><span id="L141" data-line-number="141"></span></td>
<td rel="L141" class="lines-code chroma"><code class="code-inner">DIFY_BIND_ADDRESS=0.0.0.0
</code></td>
</tr>
<tr>
<td id="L142" class="lines-num"><span id="L142" data-line-number="142"></span></td>
<td rel="L142" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L143" class="lines-num"><span id="L143" data-line-number="143"></span></td>
<td rel="L143" class="lines-code chroma"><code class="code-inner"># API service binding port number, default 5001.
</code></td>
</tr>
<tr>
<td id="L144" class="lines-num"><span id="L144" data-line-number="144"></span></td>
<td rel="L144" class="lines-code chroma"><code class="code-inner">DIFY_PORT=5001
</code></td>
</tr>
<tr>
<td id="L145" class="lines-num"><span id="L145" data-line-number="145"></span></td>
<td rel="L145" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L146" class="lines-num"><span id="L146" data-line-number="146"></span></td>
<td rel="L146" class="lines-code chroma"><code class="code-inner"># The number of API server workers, i.e., the number of workers.
</code></td>
</tr>
<tr>
<td id="L147" class="lines-num"><span id="L147" data-line-number="147"></span></td>
<td rel="L147" class="lines-code chroma"><code class="code-inner"># Formula: number of cpu cores x 2 + 1 for sync, 1 for Gevent
</code></td>
</tr>
<tr>
<td id="L148" class="lines-num"><span id="L148" data-line-number="148"></span></td>
<td rel="L148" class="lines-code chroma"><code class="code-inner"># Reference: https://docs.gunicorn.org/en/stable/design.html#how-many-workers
</code></td>
</tr>
<tr>
<td id="L149" class="lines-num"><span id="L149" data-line-number="149"></span></td>
<td rel="L149" class="lines-code chroma"><code class="code-inner">SERVER_WORKER_AMOUNT=1
</code></td>
</tr>
<tr>
<td id="L150" class="lines-num"><span id="L150" data-line-number="150"></span></td>
<td rel="L150" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L151" class="lines-num"><span id="L151" data-line-number="151"></span></td>
<td rel="L151" class="lines-code chroma"><code class="code-inner"># Defaults to gevent. If using windows, it can be switched to sync or solo.
</code></td>
</tr>
<tr>
<td id="L152" class="lines-num"><span id="L152" data-line-number="152"></span></td>
<td rel="L152" class="lines-code chroma"><code class="code-inner">SERVER_WORKER_CLASS=gevent
</code></td>
</tr>
<tr>
<td id="L153" class="lines-num"><span id="L153" data-line-number="153"></span></td>
<td rel="L153" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L154" class="lines-num"><span id="L154" data-line-number="154"></span></td>
<td rel="L154" class="lines-code chroma"><code class="code-inner"># Default number of worker connections, the default is 10.
</code></td>
</tr>
<tr>
<td id="L155" class="lines-num"><span id="L155" data-line-number="155"></span></td>
<td rel="L155" class="lines-code chroma"><code class="code-inner">SERVER_WORKER_CONNECTIONS=10
</code></td>
</tr>
<tr>
<td id="L156" class="lines-num"><span id="L156" data-line-number="156"></span></td>
<td rel="L156" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L157" class="lines-num"><span id="L157" data-line-number="157"></span></td>
<td rel="L157" class="lines-code chroma"><code class="code-inner"># Similar to SERVER_WORKER_CLASS.
</code></td>
</tr>
<tr>
<td id="L158" class="lines-num"><span id="L158" data-line-number="158"></span></td>
<td rel="L158" class="lines-code chroma"><code class="code-inner"># If using windows, it can be switched to sync or solo.
</code></td>
</tr>
<tr>
<td id="L159" class="lines-num"><span id="L159" data-line-number="159"></span></td>
<td rel="L159" class="lines-code chroma"><code class="code-inner">CELERY_WORKER_CLASS=
</code></td>
</tr>
<tr>
<td id="L160" class="lines-num"><span id="L160" data-line-number="160"></span></td>
<td rel="L160" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L161" class="lines-num"><span id="L161" data-line-number="161"></span></td>
<td rel="L161" class="lines-code chroma"><code class="code-inner"># Request handling timeout. The default is 200,
</code></td>
</tr>
<tr>
<td id="L162" class="lines-num"><span id="L162" data-line-number="162"></span></td>
<td rel="L162" class="lines-code chroma"><code class="code-inner"># it is recommended to set it to 360 to support a longer sse connection time.
</code></td>
</tr>
<tr>
<td id="L163" class="lines-num"><span id="L163" data-line-number="163"></span></td>
<td rel="L163" class="lines-code chroma"><code class="code-inner">GUNICORN_TIMEOUT=360
</code></td>
</tr>
<tr>
<td id="L164" class="lines-num"><span id="L164" data-line-number="164"></span></td>
<td rel="L164" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L165" class="lines-num"><span id="L165" data-line-number="165"></span></td>
<td rel="L165" class="lines-code chroma"><code class="code-inner"># The number of Celery workers. The default is 1, and can be set as needed.
</code></td>
</tr>
<tr>
<td id="L166" class="lines-num"><span id="L166" data-line-number="166"></span></td>
<td rel="L166" class="lines-code chroma"><code class="code-inner">CELERY_WORKER_AMOUNT=
</code></td>
</tr>
<tr>
<td id="L167" class="lines-num"><span id="L167" data-line-number="167"></span></td>
<td rel="L167" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L168" class="lines-num"><span id="L168" data-line-number="168"></span></td>
<td rel="L168" class="lines-code chroma"><code class="code-inner"># Flag indicating whether to enable autoscaling of Celery workers.
</code></td>
</tr>
<tr>
<td id="L169" class="lines-num"><span id="L169" data-line-number="169"></span></td>
<td rel="L169" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L170" class="lines-num"><span id="L170" data-line-number="170"></span></td>
<td rel="L170" class="lines-code chroma"><code class="code-inner"># Autoscaling is useful when tasks are CPU intensive and can be dynamically
</code></td>
</tr>
<tr>
<td id="L171" class="lines-num"><span id="L171" data-line-number="171"></span></td>
<td rel="L171" class="lines-code chroma"><code class="code-inner"># allocated and deallocated based on the workload.
</code></td>
</tr>
<tr>
<td id="L172" class="lines-num"><span id="L172" data-line-number="172"></span></td>
<td rel="L172" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L173" class="lines-num"><span id="L173" data-line-number="173"></span></td>
<td rel="L173" class="lines-code chroma"><code class="code-inner"># When autoscaling is enabled, the maximum and minimum number of workers can
</code></td>
</tr>
<tr>
<td id="L174" class="lines-num"><span id="L174" data-line-number="174"></span></td>
<td rel="L174" class="lines-code chroma"><code class="code-inner"># be specified. The autoscaling algorithm will dynamically adjust the number
</code></td>
</tr>
<tr>
<td id="L175" class="lines-num"><span id="L175" data-line-number="175"></span></td>
<td rel="L175" class="lines-code chroma"><code class="code-inner"># of workers within the specified range.
</code></td>
</tr>
<tr>
<td id="L176" class="lines-num"><span id="L176" data-line-number="176"></span></td>
<td rel="L176" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L177" class="lines-num"><span id="L177" data-line-number="177"></span></td>
<td rel="L177" class="lines-code chroma"><code class="code-inner"># Default is false (i.e., autoscaling is disabled).
</code></td>
</tr>
<tr>
<td id="L178" class="lines-num"><span id="L178" data-line-number="178"></span></td>
<td rel="L178" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L179" class="lines-num"><span id="L179" data-line-number="179"></span></td>
<td rel="L179" class="lines-code chroma"><code class="code-inner"># Example:
</code></td>
</tr>
<tr>
<td id="L180" class="lines-num"><span id="L180" data-line-number="180"></span></td>
<td rel="L180" class="lines-code chroma"><code class="code-inner"># CELERY_AUTO_SCALE=true
</code></td>
</tr>
<tr>
<td id="L181" class="lines-num"><span id="L181" data-line-number="181"></span></td>
<td rel="L181" class="lines-code chroma"><code class="code-inner">CELERY_AUTO_SCALE=false
</code></td>
</tr>
<tr>
<td id="L182" class="lines-num"><span id="L182" data-line-number="182"></span></td>
<td rel="L182" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L183" class="lines-num"><span id="L183" data-line-number="183"></span></td>
<td rel="L183" class="lines-code chroma"><code class="code-inner"># The maximum number of Celery workers that can be autoscaled.
</code></td>
</tr>
<tr>
<td id="L184" class="lines-num"><span id="L184" data-line-number="184"></span></td>
<td rel="L184" class="lines-code chroma"><code class="code-inner"># This is optional and only used when autoscaling is enabled.
</code></td>
</tr>
<tr>
<td id="L185" class="lines-num"><span id="L185" data-line-number="185"></span></td>
<td rel="L185" class="lines-code chroma"><code class="code-inner"># Default is not set.
</code></td>
</tr>
<tr>
<td id="L186" class="lines-num"><span id="L186" data-line-number="186"></span></td>
<td rel="L186" class="lines-code chroma"><code class="code-inner">CELERY_MAX_WORKERS=
</code></td>
</tr>
<tr>
<td id="L187" class="lines-num"><span id="L187" data-line-number="187"></span></td>
<td rel="L187" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L188" class="lines-num"><span id="L188" data-line-number="188"></span></td>
<td rel="L188" class="lines-code chroma"><code class="code-inner"># The minimum number of Celery workers that can be autoscaled.
</code></td>
</tr>
<tr>
<td id="L189" class="lines-num"><span id="L189" data-line-number="189"></span></td>
<td rel="L189" class="lines-code chroma"><code class="code-inner"># This is optional and only used when autoscaling is enabled.
</code></td>
</tr>
<tr>
<td id="L190" class="lines-num"><span id="L190" data-line-number="190"></span></td>
<td rel="L190" class="lines-code chroma"><code class="code-inner"># Default is not set.
</code></td>
</tr>
<tr>
<td id="L191" class="lines-num"><span id="L191" data-line-number="191"></span></td>
<td rel="L191" class="lines-code chroma"><code class="code-inner">CELERY_MIN_WORKERS=
</code></td>
</tr>
<tr>
<td id="L192" class="lines-num"><span id="L192" data-line-number="192"></span></td>
<td rel="L192" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L193" class="lines-num"><span id="L193" data-line-number="193"></span></td>
<td rel="L193" class="lines-code chroma"><code class="code-inner"># API Tool configuration
</code></td>
</tr>
<tr>
<td id="L194" class="lines-num"><span id="L194" data-line-number="194"></span></td>
<td rel="L194" class="lines-code chroma"><code class="code-inner">API_TOOL_DEFAULT_CONNECT_TIMEOUT=10
</code></td>
</tr>
<tr>
<td id="L195" class="lines-num"><span id="L195" data-line-number="195"></span></td>
<td rel="L195" class="lines-code chroma"><code class="code-inner">API_TOOL_DEFAULT_READ_TIMEOUT=60
</code></td>
</tr>
<tr>
<td id="L196" class="lines-num"><span id="L196" data-line-number="196"></span></td>
<td rel="L196" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L197" class="lines-num"><span id="L197" data-line-number="197"></span></td>
<td rel="L197" class="lines-code chroma"><code class="code-inner"># -------------------------------
</code></td>
</tr>
<tr>
<td id="L198" class="lines-num"><span id="L198" data-line-number="198"></span></td>
<td rel="L198" class="lines-code chroma"><code class="code-inner"># Datasource Configuration
</code></td>
</tr>
<tr>
<td id="L199" class="lines-num"><span id="L199" data-line-number="199"></span></td>
<td rel="L199" class="lines-code chroma"><code class="code-inner"># --------------------------------
</code></td>
</tr>
<tr>
<td id="L200" class="lines-num"><span id="L200" data-line-number="200"></span></td>
<td rel="L200" class="lines-code chroma"><code class="code-inner">ENABLE_WEBSITE_JINAREADER=true
</code></td>
</tr>
<tr>
<td id="L201" class="lines-num"><span id="L201" data-line-number="201"></span></td>
<td rel="L201" class="lines-code chroma"><code class="code-inner">ENABLE_WEBSITE_FIRECRAWL=true
</code></td>
</tr>
<tr>
<td id="L202" class="lines-num"><span id="L202" data-line-number="202"></span></td>
<td rel="L202" class="lines-code chroma"><code class="code-inner">ENABLE_WEBSITE_WATERCRAWL=true
</code></td>
</tr>
<tr>
<td id="L203" class="lines-num"><span id="L203" data-line-number="203"></span></td>
<td rel="L203" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L204" class="lines-num"><span id="L204" data-line-number="204"></span></td>
<td rel="L204" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L205" class="lines-num"><span id="L205" data-line-number="205"></span></td>
<td rel="L205" class="lines-code chroma"><code class="code-inner"># Database Configuration
</code></td>
</tr>
<tr>
<td id="L206" class="lines-num"><span id="L206" data-line-number="206"></span></td>
<td rel="L206" class="lines-code chroma"><code class="code-inner"># The database uses PostgreSQL. Please use the public schema.
</code></td>
</tr>
<tr>
<td id="L207" class="lines-num"><span id="L207" data-line-number="207"></span></td>
<td rel="L207" class="lines-code chroma"><code class="code-inner"># It is consistent with the configuration in the &#39;db&#39; service below.
</code></td>
</tr>
<tr>
<td id="L208" class="lines-num"><span id="L208" data-line-number="208"></span></td>
<td rel="L208" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L209" class="lines-num"><span id="L209" data-line-number="209"></span></td>
<td rel="L209" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L210" class="lines-num"><span id="L210" data-line-number="210"></span></td>
<td rel="L210" class="lines-code chroma"><code class="code-inner">DB_USERNAME=postgres
</code></td>
</tr>
<tr>
<td id="L211" class="lines-num"><span id="L211" data-line-number="211"></span></td>
<td rel="L211" class="lines-code chroma"><code class="code-inner">DB_PASSWORD=difyai123456
</code></td>
</tr>
<tr>
<td id="L212" class="lines-num"><span id="L212" data-line-number="212"></span></td>
<td rel="L212" class="lines-code chroma"><code class="code-inner">DB_HOST=db
</code></td>
</tr>
<tr>
<td id="L213" class="lines-num"><span id="L213" data-line-number="213"></span></td>
<td rel="L213" class="lines-code chroma"><code class="code-inner">DB_PORT=5432
</code></td>
</tr>
<tr>
<td id="L214" class="lines-num"><span id="L214" data-line-number="214"></span></td>
<td rel="L214" class="lines-code chroma"><code class="code-inner">DB_DATABASE=dify
</code></td>
</tr>
<tr>
<td id="L215" class="lines-num"><span id="L215" data-line-number="215"></span></td>
<td rel="L215" class="lines-code chroma"><code class="code-inner"># The size of the database connection pool.
</code></td>
</tr>
<tr>
<td id="L216" class="lines-num"><span id="L216" data-line-number="216"></span></td>
<td rel="L216" class="lines-code chroma"><code class="code-inner"># The default is 30 connections, which can be appropriately increased.
</code></td>
</tr>
<tr>
<td id="L217" class="lines-num"><span id="L217" data-line-number="217"></span></td>
<td rel="L217" class="lines-code chroma"><code class="code-inner">SQLALCHEMY_POOL_SIZE=30
</code></td>
</tr>
<tr>
<td id="L218" class="lines-num"><span id="L218" data-line-number="218"></span></td>
<td rel="L218" class="lines-code chroma"><code class="code-inner"># Database connection pool recycling time, the default is 3600 seconds.
</code></td>
</tr>
<tr>
<td id="L219" class="lines-num"><span id="L219" data-line-number="219"></span></td>
<td rel="L219" class="lines-code chroma"><code class="code-inner">SQLALCHEMY_POOL_RECYCLE=3600
</code></td>
</tr>
<tr>
<td id="L220" class="lines-num"><span id="L220" data-line-number="220"></span></td>
<td rel="L220" class="lines-code chroma"><code class="code-inner"># Whether to print SQL, default is false.
</code></td>
</tr>
<tr>
<td id="L221" class="lines-num"><span id="L221" data-line-number="221"></span></td>
<td rel="L221" class="lines-code chroma"><code class="code-inner">SQLALCHEMY_ECHO=false
</code></td>
</tr>
<tr>
<td id="L222" class="lines-num"><span id="L222" data-line-number="222"></span></td>
<td rel="L222" class="lines-code chroma"><code class="code-inner"># If True, will test connections for liveness upon each checkout
</code></td>
</tr>
<tr>
<td id="L223" class="lines-num"><span id="L223" data-line-number="223"></span></td>
<td rel="L223" class="lines-code chroma"><code class="code-inner">SQLALCHEMY_POOL_PRE_PING=false
</code></td>
</tr>
<tr>
<td id="L224" class="lines-num"><span id="L224" data-line-number="224"></span></td>
<td rel="L224" class="lines-code chroma"><code class="code-inner"># Whether to enable the Last in first out option or use default FIFO queue if is false
</code></td>
</tr>
<tr>
<td id="L225" class="lines-num"><span id="L225" data-line-number="225"></span></td>
<td rel="L225" class="lines-code chroma"><code class="code-inner">SQLALCHEMY_POOL_USE_LIFO=false
</code></td>
</tr>
<tr>
<td id="L226" class="lines-num"><span id="L226" data-line-number="226"></span></td>
<td rel="L226" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L227" class="lines-num"><span id="L227" data-line-number="227"></span></td>
<td rel="L227" class="lines-code chroma"><code class="code-inner"># Maximum number of connections to the database
</code></td>
</tr>
<tr>
<td id="L228" class="lines-num"><span id="L228" data-line-number="228"></span></td>
<td rel="L228" class="lines-code chroma"><code class="code-inner"># Default is 100
</code></td>
</tr>
<tr>
<td id="L229" class="lines-num"><span id="L229" data-line-number="229"></span></td>
<td rel="L229" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L230" class="lines-num"><span id="L230" data-line-number="230"></span></td>
<td rel="L230" class="lines-code chroma"><code class="code-inner"># Reference: https://www.postgresql.org/docs/current/runtime-config-connection.html#GUC-MAX-CONNECTIONS
</code></td>
</tr>
<tr>
<td id="L231" class="lines-num"><span id="L231" data-line-number="231"></span></td>
<td rel="L231" class="lines-code chroma"><code class="code-inner">POSTGRES_MAX_CONNECTIONS=100
</code></td>
</tr>
<tr>
<td id="L232" class="lines-num"><span id="L232" data-line-number="232"></span></td>
<td rel="L232" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L233" class="lines-num"><span id="L233" data-line-number="233"></span></td>
<td rel="L233" class="lines-code chroma"><code class="code-inner"># Sets the amount of shared memory used for postgres&#39;s shared buffers.
</code></td>
</tr>
<tr>
<td id="L234" class="lines-num"><span id="L234" data-line-number="234"></span></td>
<td rel="L234" class="lines-code chroma"><code class="code-inner"># Default is 128MB
</code></td>
</tr>
<tr>
<td id="L235" class="lines-num"><span id="L235" data-line-number="235"></span></td>
<td rel="L235" class="lines-code chroma"><code class="code-inner"># Recommended value: 25% of available memory
</code></td>
</tr>
<tr>
<td id="L236" class="lines-num"><span id="L236" data-line-number="236"></span></td>
<td rel="L236" class="lines-code chroma"><code class="code-inner"># Reference: https://www.postgresql.org/docs/current/runtime-config-resource.html#GUC-SHARED-BUFFERS
</code></td>
</tr>
<tr>
<td id="L237" class="lines-num"><span id="L237" data-line-number="237"></span></td>
<td rel="L237" class="lines-code chroma"><code class="code-inner">POSTGRES_SHARED_BUFFERS=128MB
</code></td>
</tr>
<tr>
<td id="L238" class="lines-num"><span id="L238" data-line-number="238"></span></td>
<td rel="L238" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L239" class="lines-num"><span id="L239" data-line-number="239"></span></td>
<td rel="L239" class="lines-code chroma"><code class="code-inner"># Sets the amount of memory used by each database worker for working space.
</code></td>
</tr>
<tr>
<td id="L240" class="lines-num"><span id="L240" data-line-number="240"></span></td>
<td rel="L240" class="lines-code chroma"><code class="code-inner"># Default is 4MB
</code></td>
</tr>
<tr>
<td id="L241" class="lines-num"><span id="L241" data-line-number="241"></span></td>
<td rel="L241" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L242" class="lines-num"><span id="L242" data-line-number="242"></span></td>
<td rel="L242" class="lines-code chroma"><code class="code-inner"># Reference: https://www.postgresql.org/docs/current/runtime-config-resource.html#GUC-WORK-MEM
</code></td>
</tr>
<tr>
<td id="L243" class="lines-num"><span id="L243" data-line-number="243"></span></td>
<td rel="L243" class="lines-code chroma"><code class="code-inner">POSTGRES_WORK_MEM=4MB
</code></td>
</tr>
<tr>
<td id="L244" class="lines-num"><span id="L244" data-line-number="244"></span></td>
<td rel="L244" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L245" class="lines-num"><span id="L245" data-line-number="245"></span></td>
<td rel="L245" class="lines-code chroma"><code class="code-inner"># Sets the amount of memory reserved for maintenance activities.
</code></td>
</tr>
<tr>
<td id="L246" class="lines-num"><span id="L246" data-line-number="246"></span></td>
<td rel="L246" class="lines-code chroma"><code class="code-inner"># Default is 64MB
</code></td>
</tr>
<tr>
<td id="L247" class="lines-num"><span id="L247" data-line-number="247"></span></td>
<td rel="L247" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L248" class="lines-num"><span id="L248" data-line-number="248"></span></td>
<td rel="L248" class="lines-code chroma"><code class="code-inner"># Reference: https://www.postgresql.org/docs/current/runtime-config-resource.html#GUC-MAINTENANCE-WORK-MEM
</code></td>
</tr>
<tr>
<td id="L249" class="lines-num"><span id="L249" data-line-number="249"></span></td>
<td rel="L249" class="lines-code chroma"><code class="code-inner">POSTGRES_MAINTENANCE_WORK_MEM=64MB
</code></td>
</tr>
<tr>
<td id="L250" class="lines-num"><span id="L250" data-line-number="250"></span></td>
<td rel="L250" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L251" class="lines-num"><span id="L251" data-line-number="251"></span></td>
<td rel="L251" class="lines-code chroma"><code class="code-inner"># Sets the planner&#39;s assumption about the effective cache size.
</code></td>
</tr>
<tr>
<td id="L252" class="lines-num"><span id="L252" data-line-number="252"></span></td>
<td rel="L252" class="lines-code chroma"><code class="code-inner"># Default is 4096MB
</code></td>
</tr>
<tr>
<td id="L253" class="lines-num"><span id="L253" data-line-number="253"></span></td>
<td rel="L253" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L254" class="lines-num"><span id="L254" data-line-number="254"></span></td>
<td rel="L254" class="lines-code chroma"><code class="code-inner"># Reference: https://www.postgresql.org/docs/current/runtime-config-query.html#GUC-EFFECTIVE-CACHE-SIZE
</code></td>
</tr>
<tr>
<td id="L255" class="lines-num"><span id="L255" data-line-number="255"></span></td>
<td rel="L255" class="lines-code chroma"><code class="code-inner">POSTGRES_EFFECTIVE_CACHE_SIZE=4096MB
</code></td>
</tr>
<tr>
<td id="L256" class="lines-num"><span id="L256" data-line-number="256"></span></td>
<td rel="L256" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L257" class="lines-num"><span id="L257" data-line-number="257"></span></td>
<td rel="L257" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L258" class="lines-num"><span id="L258" data-line-number="258"></span></td>
<td rel="L258" class="lines-code chroma"><code class="code-inner"># Redis Configuration
</code></td>
</tr>
<tr>
<td id="L259" class="lines-num"><span id="L259" data-line-number="259"></span></td>
<td rel="L259" class="lines-code chroma"><code class="code-inner"># This Redis configuration is used for caching and for pub/sub during conversation.
</code></td>
</tr>
<tr>
<td id="L260" class="lines-num"><span id="L260" data-line-number="260"></span></td>
<td rel="L260" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L261" class="lines-num"><span id="L261" data-line-number="261"></span></td>
<td rel="L261" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L262" class="lines-num"><span id="L262" data-line-number="262"></span></td>
<td rel="L262" class="lines-code chroma"><code class="code-inner">REDIS_HOST=redis
</code></td>
</tr>
<tr>
<td id="L263" class="lines-num"><span id="L263" data-line-number="263"></span></td>
<td rel="L263" class="lines-code chroma"><code class="code-inner">REDIS_PORT=6379
</code></td>
</tr>
<tr>
<td id="L264" class="lines-num"><span id="L264" data-line-number="264"></span></td>
<td rel="L264" class="lines-code chroma"><code class="code-inner">REDIS_USERNAME=
</code></td>
</tr>
<tr>
<td id="L265" class="lines-num"><span id="L265" data-line-number="265"></span></td>
<td rel="L265" class="lines-code chroma"><code class="code-inner">REDIS_PASSWORD=difyai123456
</code></td>
</tr>
<tr>
<td id="L266" class="lines-num"><span id="L266" data-line-number="266"></span></td>
<td rel="L266" class="lines-code chroma"><code class="code-inner">REDIS_USE_SSL=false
</code></td>
</tr>
<tr>
<td id="L267" class="lines-num"><span id="L267" data-line-number="267"></span></td>
<td rel="L267" class="lines-code chroma"><code class="code-inner">REDIS_DB=0
</code></td>
</tr>
<tr>
<td id="L268" class="lines-num"><span id="L268" data-line-number="268"></span></td>
<td rel="L268" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L269" class="lines-num"><span id="L269" data-line-number="269"></span></td>
<td rel="L269" class="lines-code chroma"><code class="code-inner"># Whether to use Redis Sentinel mode.
</code></td>
</tr>
<tr>
<td id="L270" class="lines-num"><span id="L270" data-line-number="270"></span></td>
<td rel="L270" class="lines-code chroma"><code class="code-inner"># If set to true, the application will automatically discover and connect to the master node through Sentinel.
</code></td>
</tr>
<tr>
<td id="L271" class="lines-num"><span id="L271" data-line-number="271"></span></td>
<td rel="L271" class="lines-code chroma"><code class="code-inner">REDIS_USE_SENTINEL=false
</code></td>
</tr>
<tr>
<td id="L272" class="lines-num"><span id="L272" data-line-number="272"></span></td>
<td rel="L272" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L273" class="lines-num"><span id="L273" data-line-number="273"></span></td>
<td rel="L273" class="lines-code chroma"><code class="code-inner"># List of Redis Sentinel nodes. If Sentinel mode is enabled, provide at least one Sentinel IP and port.
</code></td>
</tr>
<tr>
<td id="L274" class="lines-num"><span id="L274" data-line-number="274"></span></td>
<td rel="L274" class="lines-code chroma"><code class="code-inner"># Format: `&lt;sentinel1_ip&gt;:&lt;sentinel1_port&gt;,&lt;sentinel2_ip&gt;:&lt;sentinel2_port&gt;,&lt;sentinel3_ip&gt;:&lt;sentinel3_port&gt;`
</code></td>
</tr>
<tr>
<td id="L275" class="lines-num"><span id="L275" data-line-number="275"></span></td>
<td rel="L275" class="lines-code chroma"><code class="code-inner">REDIS_SENTINELS=
</code></td>
</tr>
<tr>
<td id="L276" class="lines-num"><span id="L276" data-line-number="276"></span></td>
<td rel="L276" class="lines-code chroma"><code class="code-inner">REDIS_SENTINEL_SERVICE_NAME=
</code></td>
</tr>
<tr>
<td id="L277" class="lines-num"><span id="L277" data-line-number="277"></span></td>
<td rel="L277" class="lines-code chroma"><code class="code-inner">REDIS_SENTINEL_USERNAME=
</code></td>
</tr>
<tr>
<td id="L278" class="lines-num"><span id="L278" data-line-number="278"></span></td>
<td rel="L278" class="lines-code chroma"><code class="code-inner">REDIS_SENTINEL_PASSWORD=
</code></td>
</tr>
<tr>
<td id="L279" class="lines-num"><span id="L279" data-line-number="279"></span></td>
<td rel="L279" class="lines-code chroma"><code class="code-inner">REDIS_SENTINEL_SOCKET_TIMEOUT=0.1
</code></td>
</tr>
<tr>
<td id="L280" class="lines-num"><span id="L280" data-line-number="280"></span></td>
<td rel="L280" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L281" class="lines-num"><span id="L281" data-line-number="281"></span></td>
<td rel="L281" class="lines-code chroma"><code class="code-inner"># List of Redis Cluster nodes. If Cluster mode is enabled, provide at least one Cluster IP and port.
</code></td>
</tr>
<tr>
<td id="L282" class="lines-num"><span id="L282" data-line-number="282"></span></td>
<td rel="L282" class="lines-code chroma"><code class="code-inner"># Format: `&lt;Cluster1_ip&gt;:&lt;Cluster1_port&gt;,&lt;Cluster2_ip&gt;:&lt;Cluster2_port&gt;,&lt;Cluster3_ip&gt;:&lt;Cluster3_port&gt;`
</code></td>
</tr>
<tr>
<td id="L283" class="lines-num"><span id="L283" data-line-number="283"></span></td>
<td rel="L283" class="lines-code chroma"><code class="code-inner">REDIS_USE_CLUSTERS=false
</code></td>
</tr>
<tr>
<td id="L284" class="lines-num"><span id="L284" data-line-number="284"></span></td>
<td rel="L284" class="lines-code chroma"><code class="code-inner">REDIS_CLUSTERS=
</code></td>
</tr>
<tr>
<td id="L285" class="lines-num"><span id="L285" data-line-number="285"></span></td>
<td rel="L285" class="lines-code chroma"><code class="code-inner">REDIS_CLUSTERS_PASSWORD=
</code></td>
</tr>
<tr>
<td id="L286" class="lines-num"><span id="L286" data-line-number="286"></span></td>
<td rel="L286" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L287" class="lines-num"><span id="L287" data-line-number="287"></span></td>
<td rel="L287" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L288" class="lines-num"><span id="L288" data-line-number="288"></span></td>
<td rel="L288" class="lines-code chroma"><code class="code-inner"># Celery Configuration
</code></td>
</tr>
<tr>
<td id="L289" class="lines-num"><span id="L289" data-line-number="289"></span></td>
<td rel="L289" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L290" class="lines-num"><span id="L290" data-line-number="290"></span></td>
<td rel="L290" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L291" class="lines-num"><span id="L291" data-line-number="291"></span></td>
<td rel="L291" class="lines-code chroma"><code class="code-inner"># Use standalone redis as the broker, and redis db 1 for celery broker. (redis_username is usually set by defualt as empty)
</code></td>
</tr>
<tr>
<td id="L292" class="lines-num"><span id="L292" data-line-number="292"></span></td>
<td rel="L292" class="lines-code chroma"><code class="code-inner"># Format as follows: `redis://&lt;redis_username&gt;:&lt;redis_password&gt;@&lt;redis_host&gt;:&lt;redis_port&gt;/&lt;redis_database&gt;`.
</code></td>
</tr>
<tr>
<td id="L293" class="lines-num"><span id="L293" data-line-number="293"></span></td>
<td rel="L293" class="lines-code chroma"><code class="code-inner"># Example: redis://:difyai123456@redis:6379/1
</code></td>
</tr>
<tr>
<td id="L294" class="lines-num"><span id="L294" data-line-number="294"></span></td>
<td rel="L294" class="lines-code chroma"><code class="code-inner"># If use Redis Sentinel, format as follows: `sentinel://&lt;redis_username&gt;:&lt;redis_password&gt;@&lt;sentinel_host1&gt;:&lt;sentinel_port&gt;/&lt;redis_database&gt;`
</code></td>
</tr>
<tr>
<td id="L295" class="lines-num"><span id="L295" data-line-number="295"></span></td>
<td rel="L295" class="lines-code chroma"><code class="code-inner"># For high availability, you can configure multiple Sentinel nodes (if provided) separated by semicolons like below example:
</code></td>
</tr>
<tr>
<td id="L296" class="lines-num"><span id="L296" data-line-number="296"></span></td>
<td rel="L296" class="lines-code chroma"><code class="code-inner"># Example: sentinel://:difyai123456@localhost:26379/1;sentinel://:difyai12345@localhost:26379/1;sentinel://:difyai12345@localhost:26379/1
</code></td>
</tr>
<tr>
<td id="L297" class="lines-num"><span id="L297" data-line-number="297"></span></td>
<td rel="L297" class="lines-code chroma"><code class="code-inner">CELERY_BROKER_URL=redis://:difyai123456@redis:6379/1
</code></td>
</tr>
<tr>
<td id="L298" class="lines-num"><span id="L298" data-line-number="298"></span></td>
<td rel="L298" class="lines-code chroma"><code class="code-inner">CELERY_BACKEND=redis
</code></td>
</tr>
<tr>
<td id="L299" class="lines-num"><span id="L299" data-line-number="299"></span></td>
<td rel="L299" class="lines-code chroma"><code class="code-inner">BROKER_USE_SSL=false
</code></td>
</tr>
<tr>
<td id="L300" class="lines-num"><span id="L300" data-line-number="300"></span></td>
<td rel="L300" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L301" class="lines-num"><span id="L301" data-line-number="301"></span></td>
<td rel="L301" class="lines-code chroma"><code class="code-inner"># If you are using Redis Sentinel for high availability, configure the following settings.
</code></td>
</tr>
<tr>
<td id="L302" class="lines-num"><span id="L302" data-line-number="302"></span></td>
<td rel="L302" class="lines-code chroma"><code class="code-inner">CELERY_USE_SENTINEL=false
</code></td>
</tr>
<tr>
<td id="L303" class="lines-num"><span id="L303" data-line-number="303"></span></td>
<td rel="L303" class="lines-code chroma"><code class="code-inner">CELERY_SENTINEL_MASTER_NAME=
</code></td>
</tr>
<tr>
<td id="L304" class="lines-num"><span id="L304" data-line-number="304"></span></td>
<td rel="L304" class="lines-code chroma"><code class="code-inner">CELERY_SENTINEL_PASSWORD=
</code></td>
</tr>
<tr>
<td id="L305" class="lines-num"><span id="L305" data-line-number="305"></span></td>
<td rel="L305" class="lines-code chroma"><code class="code-inner">CELERY_SENTINEL_SOCKET_TIMEOUT=0.1
</code></td>
</tr>
<tr>
<td id="L306" class="lines-num"><span id="L306" data-line-number="306"></span></td>
<td rel="L306" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L307" class="lines-num"><span id="L307" data-line-number="307"></span></td>
<td rel="L307" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L308" class="lines-num"><span id="L308" data-line-number="308"></span></td>
<td rel="L308" class="lines-code chroma"><code class="code-inner"># CORS Configuration
</code></td>
</tr>
<tr>
<td id="L309" class="lines-num"><span id="L309" data-line-number="309"></span></td>
<td rel="L309" class="lines-code chroma"><code class="code-inner"># Used to set the front-end cross-domain access policy.
</code></td>
</tr>
<tr>
<td id="L310" class="lines-num"><span id="L310" data-line-number="310"></span></td>
<td rel="L310" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L311" class="lines-num"><span id="L311" data-line-number="311"></span></td>
<td rel="L311" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L312" class="lines-num"><span id="L312" data-line-number="312"></span></td>
<td rel="L312" class="lines-code chroma"><code class="code-inner"># Specifies the allowed origins for cross-origin requests to the Web API,
</code></td>
</tr>
<tr>
<td id="L313" class="lines-num"><span id="L313" data-line-number="313"></span></td>
<td rel="L313" class="lines-code chroma"><code class="code-inner"># e.g. https://dify.app or * for all origins.
</code></td>
</tr>
<tr>
<td id="L314" class="lines-num"><span id="L314" data-line-number="314"></span></td>
<td rel="L314" class="lines-code chroma"><code class="code-inner">WEB_API_CORS_ALLOW_ORIGINS=*
</code></td>
</tr>
<tr>
<td id="L315" class="lines-num"><span id="L315" data-line-number="315"></span></td>
<td rel="L315" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L316" class="lines-num"><span id="L316" data-line-number="316"></span></td>
<td rel="L316" class="lines-code chroma"><code class="code-inner"># Specifies the allowed origins for cross-origin requests to the console API,
</code></td>
</tr>
<tr>
<td id="L317" class="lines-num"><span id="L317" data-line-number="317"></span></td>
<td rel="L317" class="lines-code chroma"><code class="code-inner"># e.g. https://cloud.dify.ai or * for all origins.
</code></td>
</tr>
<tr>
<td id="L318" class="lines-num"><span id="L318" data-line-number="318"></span></td>
<td rel="L318" class="lines-code chroma"><code class="code-inner">CONSOLE_CORS_ALLOW_ORIGINS=*
</code></td>
</tr>
<tr>
<td id="L319" class="lines-num"><span id="L319" data-line-number="319"></span></td>
<td rel="L319" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L320" class="lines-num"><span id="L320" data-line-number="320"></span></td>
<td rel="L320" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L321" class="lines-num"><span id="L321" data-line-number="321"></span></td>
<td rel="L321" class="lines-code chroma"><code class="code-inner"># File Storage Configuration
</code></td>
</tr>
<tr>
<td id="L322" class="lines-num"><span id="L322" data-line-number="322"></span></td>
<td rel="L322" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L323" class="lines-num"><span id="L323" data-line-number="323"></span></td>
<td rel="L323" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L324" class="lines-num"><span id="L324" data-line-number="324"></span></td>
<td rel="L324" class="lines-code chroma"><code class="code-inner"># The type of storage to use for storing user files.
</code></td>
</tr>
<tr>
<td id="L325" class="lines-num"><span id="L325" data-line-number="325"></span></td>
<td rel="L325" class="lines-code chroma"><code class="code-inner">STORAGE_TYPE=opendal
</code></td>
</tr>
<tr>
<td id="L326" class="lines-num"><span id="L326" data-line-number="326"></span></td>
<td rel="L326" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L327" class="lines-num"><span id="L327" data-line-number="327"></span></td>
<td rel="L327" class="lines-code chroma"><code class="code-inner"># Apache OpenDAL Configuration
</code></td>
</tr>
<tr>
<td id="L328" class="lines-num"><span id="L328" data-line-number="328"></span></td>
<td rel="L328" class="lines-code chroma"><code class="code-inner"># The configuration for OpenDAL consists of the following format: OPENDAL_&lt;SCHEME_NAME&gt;_&lt;CONFIG_NAME&gt;.
</code></td>
</tr>
<tr>
<td id="L329" class="lines-num"><span id="L329" data-line-number="329"></span></td>
<td rel="L329" class="lines-code chroma"><code class="code-inner"># You can find all the service configurations (CONFIG_NAME) in the repository at: https://github.com/apache/opendal/tree/main/core/src/services.
</code></td>
</tr>
<tr>
<td id="L330" class="lines-num"><span id="L330" data-line-number="330"></span></td>
<td rel="L330" class="lines-code chroma"><code class="code-inner"># Dify will scan configurations starting with OPENDAL_&lt;SCHEME_NAME&gt; and automatically apply them.
</code></td>
</tr>
<tr>
<td id="L331" class="lines-num"><span id="L331" data-line-number="331"></span></td>
<td rel="L331" class="lines-code chroma"><code class="code-inner"># The scheme name for the OpenDAL storage.
</code></td>
</tr>
<tr>
<td id="L332" class="lines-num"><span id="L332" data-line-number="332"></span></td>
<td rel="L332" class="lines-code chroma"><code class="code-inner">OPENDAL_SCHEME=fs
</code></td>
</tr>
<tr>
<td id="L333" class="lines-num"><span id="L333" data-line-number="333"></span></td>
<td rel="L333" class="lines-code chroma"><code class="code-inner"># Configurations for OpenDAL Local File System.
</code></td>
</tr>
<tr>
<td id="L334" class="lines-num"><span id="L334" data-line-number="334"></span></td>
<td rel="L334" class="lines-code chroma"><code class="code-inner">OPENDAL_FS_ROOT=storage
</code></td>
</tr>
<tr>
<td id="L335" class="lines-num"><span id="L335" data-line-number="335"></span></td>
<td rel="L335" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L336" class="lines-num"><span id="L336" data-line-number="336"></span></td>
<td rel="L336" class="lines-code chroma"><code class="code-inner"># S3 Configuration
</code></td>
</tr>
<tr>
<td id="L337" class="lines-num"><span id="L337" data-line-number="337"></span></td>
<td rel="L337" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L338" class="lines-num"><span id="L338" data-line-number="338"></span></td>
<td rel="L338" class="lines-code chroma"><code class="code-inner">S3_ENDPOINT=
</code></td>
</tr>
<tr>
<td id="L339" class="lines-num"><span id="L339" data-line-number="339"></span></td>
<td rel="L339" class="lines-code chroma"><code class="code-inner">S3_REGION=us-east-1
</code></td>
</tr>
<tr>
<td id="L340" class="lines-num"><span id="L340" data-line-number="340"></span></td>
<td rel="L340" class="lines-code chroma"><code class="code-inner">S3_BUCKET_NAME=difyai
</code></td>
</tr>
<tr>
<td id="L341" class="lines-num"><span id="L341" data-line-number="341"></span></td>
<td rel="L341" class="lines-code chroma"><code class="code-inner">S3_ACCESS_KEY=
</code></td>
</tr>
<tr>
<td id="L342" class="lines-num"><span id="L342" data-line-number="342"></span></td>
<td rel="L342" class="lines-code chroma"><code class="code-inner">S3_SECRET_KEY=
</code></td>
</tr>
<tr>
<td id="L343" class="lines-num"><span id="L343" data-line-number="343"></span></td>
<td rel="L343" class="lines-code chroma"><code class="code-inner"># Whether to use AWS managed IAM roles for authenticating with the S3 service.
</code></td>
</tr>
<tr>
<td id="L344" class="lines-num"><span id="L344" data-line-number="344"></span></td>
<td rel="L344" class="lines-code chroma"><code class="code-inner"># If set to false, the access key and secret key must be provided.
</code></td>
</tr>
<tr>
<td id="L345" class="lines-num"><span id="L345" data-line-number="345"></span></td>
<td rel="L345" class="lines-code chroma"><code class="code-inner">S3_USE_AWS_MANAGED_IAM=false
</code></td>
</tr>
<tr>
<td id="L346" class="lines-num"><span id="L346" data-line-number="346"></span></td>
<td rel="L346" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L347" class="lines-num"><span id="L347" data-line-number="347"></span></td>
<td rel="L347" class="lines-code chroma"><code class="code-inner"># Azure Blob Configuration
</code></td>
</tr>
<tr>
<td id="L348" class="lines-num"><span id="L348" data-line-number="348"></span></td>
<td rel="L348" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L349" class="lines-num"><span id="L349" data-line-number="349"></span></td>
<td rel="L349" class="lines-code chroma"><code class="code-inner">AZURE_BLOB_ACCOUNT_NAME=difyai
</code></td>
</tr>
<tr>
<td id="L350" class="lines-num"><span id="L350" data-line-number="350"></span></td>
<td rel="L350" class="lines-code chroma"><code class="code-inner">AZURE_BLOB_ACCOUNT_KEY=difyai
</code></td>
</tr>
<tr>
<td id="L351" class="lines-num"><span id="L351" data-line-number="351"></span></td>
<td rel="L351" class="lines-code chroma"><code class="code-inner">AZURE_BLOB_CONTAINER_NAME=difyai-container
</code></td>
</tr>
<tr>
<td id="L352" class="lines-num"><span id="L352" data-line-number="352"></span></td>
<td rel="L352" class="lines-code chroma"><code class="code-inner">AZURE_BLOB_ACCOUNT_URL=https://&lt;your_account_name&gt;.blob.core.windows.net
</code></td>
</tr>
<tr>
<td id="L353" class="lines-num"><span id="L353" data-line-number="353"></span></td>
<td rel="L353" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L354" class="lines-num"><span id="L354" data-line-number="354"></span></td>
<td rel="L354" class="lines-code chroma"><code class="code-inner"># Google Storage Configuration
</code></td>
</tr>
<tr>
<td id="L355" class="lines-num"><span id="L355" data-line-number="355"></span></td>
<td rel="L355" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L356" class="lines-num"><span id="L356" data-line-number="356"></span></td>
<td rel="L356" class="lines-code chroma"><code class="code-inner">GOOGLE_STORAGE_BUCKET_NAME=your-bucket-name
</code></td>
</tr>
<tr>
<td id="L357" class="lines-num"><span id="L357" data-line-number="357"></span></td>
<td rel="L357" class="lines-code chroma"><code class="code-inner">GOOGLE_STORAGE_SERVICE_ACCOUNT_JSON_BASE64=
</code></td>
</tr>
<tr>
<td id="L358" class="lines-num"><span id="L358" data-line-number="358"></span></td>
<td rel="L358" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L359" class="lines-num"><span id="L359" data-line-number="359"></span></td>
<td rel="L359" class="lines-code chroma"><code class="code-inner"># The Alibaba Cloud OSS configurations,
</code></td>
</tr>
<tr>
<td id="L360" class="lines-num"><span id="L360" data-line-number="360"></span></td>
<td rel="L360" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L361" class="lines-num"><span id="L361" data-line-number="361"></span></td>
<td rel="L361" class="lines-code chroma"><code class="code-inner">ALIYUN_OSS_BUCKET_NAME=your-bucket-name
</code></td>
</tr>
<tr>
<td id="L362" class="lines-num"><span id="L362" data-line-number="362"></span></td>
<td rel="L362" class="lines-code chroma"><code class="code-inner">ALIYUN_OSS_ACCESS_KEY=your-access-key
</code></td>
</tr>
<tr>
<td id="L363" class="lines-num"><span id="L363" data-line-number="363"></span></td>
<td rel="L363" class="lines-code chroma"><code class="code-inner">ALIYUN_OSS_SECRET_KEY=your-secret-key
</code></td>
</tr>
<tr>
<td id="L364" class="lines-num"><span id="L364" data-line-number="364"></span></td>
<td rel="L364" class="lines-code chroma"><code class="code-inner">ALIYUN_OSS_ENDPOINT=https://oss-ap-southeast-1-internal.aliyuncs.com
</code></td>
</tr>
<tr>
<td id="L365" class="lines-num"><span id="L365" data-line-number="365"></span></td>
<td rel="L365" class="lines-code chroma"><code class="code-inner">ALIYUN_OSS_REGION=ap-southeast-1
</code></td>
</tr>
<tr>
<td id="L366" class="lines-num"><span id="L366" data-line-number="366"></span></td>
<td rel="L366" class="lines-code chroma"><code class="code-inner">ALIYUN_OSS_AUTH_VERSION=v4
</code></td>
</tr>
<tr>
<td id="L367" class="lines-num"><span id="L367" data-line-number="367"></span></td>
<td rel="L367" class="lines-code chroma"><code class="code-inner"># Don&#39;t start with &#39;/&#39;. OSS doesn&#39;t support leading slash in object names.
</code></td>
</tr>
<tr>
<td id="L368" class="lines-num"><span id="L368" data-line-number="368"></span></td>
<td rel="L368" class="lines-code chroma"><code class="code-inner">ALIYUN_OSS_PATH=your-path
</code></td>
</tr>
<tr>
<td id="L369" class="lines-num"><span id="L369" data-line-number="369"></span></td>
<td rel="L369" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L370" class="lines-num"><span id="L370" data-line-number="370"></span></td>
<td rel="L370" class="lines-code chroma"><code class="code-inner"># Tencent COS Configuration
</code></td>
</tr>
<tr>
<td id="L371" class="lines-num"><span id="L371" data-line-number="371"></span></td>
<td rel="L371" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L372" class="lines-num"><span id="L372" data-line-number="372"></span></td>
<td rel="L372" class="lines-code chroma"><code class="code-inner">TENCENT_COS_BUCKET_NAME=your-bucket-name
</code></td>
</tr>
<tr>
<td id="L373" class="lines-num"><span id="L373" data-line-number="373"></span></td>
<td rel="L373" class="lines-code chroma"><code class="code-inner">TENCENT_COS_SECRET_KEY=your-secret-key
</code></td>
</tr>
<tr>
<td id="L374" class="lines-num"><span id="L374" data-line-number="374"></span></td>
<td rel="L374" class="lines-code chroma"><code class="code-inner">TENCENT_COS_SECRET_ID=your-secret-id
</code></td>
</tr>
<tr>
<td id="L375" class="lines-num"><span id="L375" data-line-number="375"></span></td>
<td rel="L375" class="lines-code chroma"><code class="code-inner">TENCENT_COS_REGION=your-region
</code></td>
</tr>
<tr>
<td id="L376" class="lines-num"><span id="L376" data-line-number="376"></span></td>
<td rel="L376" class="lines-code chroma"><code class="code-inner">TENCENT_COS_SCHEME=your-scheme
</code></td>
</tr>
<tr>
<td id="L377" class="lines-num"><span id="L377" data-line-number="377"></span></td>
<td rel="L377" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L378" class="lines-num"><span id="L378" data-line-number="378"></span></td>
<td rel="L378" class="lines-code chroma"><code class="code-inner"># Oracle Storage Configuration
</code></td>
</tr>
<tr>
<td id="L379" class="lines-num"><span id="L379" data-line-number="379"></span></td>
<td rel="L379" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L380" class="lines-num"><span id="L380" data-line-number="380"></span></td>
<td rel="L380" class="lines-code chroma"><code class="code-inner">OCI_ENDPOINT=https://your-object-storage-namespace.compat.objectstorage.us-ashburn-1.oraclecloud.com
</code></td>
</tr>
<tr>
<td id="L381" class="lines-num"><span id="L381" data-line-number="381"></span></td>
<td rel="L381" class="lines-code chroma"><code class="code-inner">OCI_BUCKET_NAME=your-bucket-name
</code></td>
</tr>
<tr>
<td id="L382" class="lines-num"><span id="L382" data-line-number="382"></span></td>
<td rel="L382" class="lines-code chroma"><code class="code-inner">OCI_ACCESS_KEY=your-access-key
</code></td>
</tr>
<tr>
<td id="L383" class="lines-num"><span id="L383" data-line-number="383"></span></td>
<td rel="L383" class="lines-code chroma"><code class="code-inner">OCI_SECRET_KEY=your-secret-key
</code></td>
</tr>
<tr>
<td id="L384" class="lines-num"><span id="L384" data-line-number="384"></span></td>
<td rel="L384" class="lines-code chroma"><code class="code-inner">OCI_REGION=us-ashburn-1
</code></td>
</tr>
<tr>
<td id="L385" class="lines-num"><span id="L385" data-line-number="385"></span></td>
<td rel="L385" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L386" class="lines-num"><span id="L386" data-line-number="386"></span></td>
<td rel="L386" class="lines-code chroma"><code class="code-inner"># Huawei OBS Configuration
</code></td>
</tr>
<tr>
<td id="L387" class="lines-num"><span id="L387" data-line-number="387"></span></td>
<td rel="L387" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L388" class="lines-num"><span id="L388" data-line-number="388"></span></td>
<td rel="L388" class="lines-code chroma"><code class="code-inner">HUAWEI_OBS_BUCKET_NAME=your-bucket-name
</code></td>
</tr>
<tr>
<td id="L389" class="lines-num"><span id="L389" data-line-number="389"></span></td>
<td rel="L389" class="lines-code chroma"><code class="code-inner">HUAWEI_OBS_SECRET_KEY=your-secret-key
</code></td>
</tr>
<tr>
<td id="L390" class="lines-num"><span id="L390" data-line-number="390"></span></td>
<td rel="L390" class="lines-code chroma"><code class="code-inner">HUAWEI_OBS_ACCESS_KEY=your-access-key
</code></td>
</tr>
<tr>
<td id="L391" class="lines-num"><span id="L391" data-line-number="391"></span></td>
<td rel="L391" class="lines-code chroma"><code class="code-inner">HUAWEI_OBS_SERVER=your-server-url
</code></td>
</tr>
<tr>
<td id="L392" class="lines-num"><span id="L392" data-line-number="392"></span></td>
<td rel="L392" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L393" class="lines-num"><span id="L393" data-line-number="393"></span></td>
<td rel="L393" class="lines-code chroma"><code class="code-inner"># Volcengine TOS Configuration
</code></td>
</tr>
<tr>
<td id="L394" class="lines-num"><span id="L394" data-line-number="394"></span></td>
<td rel="L394" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L395" class="lines-num"><span id="L395" data-line-number="395"></span></td>
<td rel="L395" class="lines-code chroma"><code class="code-inner">VOLCENGINE_TOS_BUCKET_NAME=your-bucket-name
</code></td>
</tr>
<tr>
<td id="L396" class="lines-num"><span id="L396" data-line-number="396"></span></td>
<td rel="L396" class="lines-code chroma"><code class="code-inner">VOLCENGINE_TOS_SECRET_KEY=your-secret-key
</code></td>
</tr>
<tr>
<td id="L397" class="lines-num"><span id="L397" data-line-number="397"></span></td>
<td rel="L397" class="lines-code chroma"><code class="code-inner">VOLCENGINE_TOS_ACCESS_KEY=your-access-key
</code></td>
</tr>
<tr>
<td id="L398" class="lines-num"><span id="L398" data-line-number="398"></span></td>
<td rel="L398" class="lines-code chroma"><code class="code-inner">VOLCENGINE_TOS_ENDPOINT=your-server-url
</code></td>
</tr>
<tr>
<td id="L399" class="lines-num"><span id="L399" data-line-number="399"></span></td>
<td rel="L399" class="lines-code chroma"><code class="code-inner">VOLCENGINE_TOS_REGION=your-region
</code></td>
</tr>
<tr>
<td id="L400" class="lines-num"><span id="L400" data-line-number="400"></span></td>
<td rel="L400" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L401" class="lines-num"><span id="L401" data-line-number="401"></span></td>
<td rel="L401" class="lines-code chroma"><code class="code-inner"># Baidu OBS Storage Configuration
</code></td>
</tr>
<tr>
<td id="L402" class="lines-num"><span id="L402" data-line-number="402"></span></td>
<td rel="L402" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L403" class="lines-num"><span id="L403" data-line-number="403"></span></td>
<td rel="L403" class="lines-code chroma"><code class="code-inner">BAIDU_OBS_BUCKET_NAME=your-bucket-name
</code></td>
</tr>
<tr>
<td id="L404" class="lines-num"><span id="L404" data-line-number="404"></span></td>
<td rel="L404" class="lines-code chroma"><code class="code-inner">BAIDU_OBS_SECRET_KEY=your-secret-key
</code></td>
</tr>
<tr>
<td id="L405" class="lines-num"><span id="L405" data-line-number="405"></span></td>
<td rel="L405" class="lines-code chroma"><code class="code-inner">BAIDU_OBS_ACCESS_KEY=your-access-key
</code></td>
</tr>
<tr>
<td id="L406" class="lines-num"><span id="L406" data-line-number="406"></span></td>
<td rel="L406" class="lines-code chroma"><code class="code-inner">BAIDU_OBS_ENDPOINT=your-server-url
</code></td>
</tr>
<tr>
<td id="L407" class="lines-num"><span id="L407" data-line-number="407"></span></td>
<td rel="L407" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L408" class="lines-num"><span id="L408" data-line-number="408"></span></td>
<td rel="L408" class="lines-code chroma"><code class="code-inner"># Supabase Storage Configuration
</code></td>
</tr>
<tr>
<td id="L409" class="lines-num"><span id="L409" data-line-number="409"></span></td>
<td rel="L409" class="lines-code chroma"><code class="code-inner">#
</code></td>
</tr>
<tr>
<td id="L410" class="lines-num"><span id="L410" data-line-number="410"></span></td>
<td rel="L410" class="lines-code chroma"><code class="code-inner">SUPABASE_BUCKET_NAME=your-bucket-name
</code></td>
</tr>
<tr>
<td id="L411" class="lines-num"><span id="L411" data-line-number="411"></span></td>
<td rel="L411" class="lines-code chroma"><code class="code-inner">SUPABASE_API_KEY=your-access-key
</code></td>
</tr>
<tr>
<td id="L412" class="lines-num"><span id="L412" data-line-number="412"></span></td>
<td rel="L412" class="lines-code chroma"><code class="code-inner">SUPABASE_URL=your-server-url
</code></td>
</tr>
<tr>
<td id="L413" class="lines-num"><span id="L413" data-line-number="413"></span></td>
<td rel="L413" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L414" class="lines-num"><span id="L414" data-line-number="414"></span></td>
<td rel="L414" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L415" class="lines-num"><span id="L415" data-line-number="415"></span></td>
<td rel="L415" class="lines-code chroma"><code class="code-inner"># Vector Database Configuration
</code></td>
</tr>
<tr>
<td id="L416" class="lines-num"><span id="L416" data-line-number="416"></span></td>
<td rel="L416" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L417" class="lines-num"><span id="L417" data-line-number="417"></span></td>
<td rel="L417" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L418" class="lines-num"><span id="L418" data-line-number="418"></span></td>
<td rel="L418" class="lines-code chroma"><code class="code-inner"># The type of vector store to use.
</code></td>
</tr>
<tr>
<td id="L419" class="lines-num"><span id="L419" data-line-number="419"></span></td>
<td rel="L419" class="lines-code chroma"><code class="code-inner"># Supported values are `weaviate`, `qdrant`, `milvus`, `myscale`, `relyt`, `pgvector`, `pgvecto-rs`, `chroma`, `opensearch`, `oracle`, `tencent`, `elasticsearch`, `elasticsearch-ja`, `analyticdb`, `couchbase`, `vikingdb`, `oceanbase`, `opengauss`, `tablestore`,`vastbase`,`tidb`,`tidb_on_qdrant`,`baidu`,`lindorm`,`huawei_cloud`,`upstash`, `matrixone`.
</code></td>
</tr>
<tr>
<td id="L420" class="lines-num"><span id="L420" data-line-number="420"></span></td>
<td rel="L420" class="lines-code chroma"><code class="code-inner">VECTOR_STORE=weaviate
</code></td>
</tr>
<tr>
<td id="L421" class="lines-num"><span id="L421" data-line-number="421"></span></td>
<td rel="L421" class="lines-code chroma"><code class="code-inner"># Prefix used to create collection name in vector database
</code></td>
</tr>
<tr>
<td id="L422" class="lines-num"><span id="L422" data-line-number="422"></span></td>
<td rel="L422" class="lines-code chroma"><code class="code-inner">VECTOR_INDEX_NAME_PREFIX=Vector_index
</code></td>
</tr>
<tr>
<td id="L423" class="lines-num"><span id="L423" data-line-number="423"></span></td>
<td rel="L423" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L424" class="lines-num"><span id="L424" data-line-number="424"></span></td>
<td rel="L424" class="lines-code chroma"><code class="code-inner"># The Weaviate endpoint URL. Only available when VECTOR_STORE is `weaviate`.
</code></td>
</tr>
<tr>
<td id="L425" class="lines-num"><span id="L425" data-line-number="425"></span></td>
<td rel="L425" class="lines-code chroma"><code class="code-inner">WEAVIATE_ENDPOINT=http://weaviate:8080
</code></td>
</tr>
<tr>
<td id="L426" class="lines-num"><span id="L426" data-line-number="426"></span></td>
<td rel="L426" class="lines-code chroma"><code class="code-inner">WEAVIATE_API_KEY=WVF5YThaHlkYwhGUSmCRgsX3tD5ngdN8pkih
</code></td>
</tr>
<tr>
<td id="L427" class="lines-num"><span id="L427" data-line-number="427"></span></td>
<td rel="L427" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L428" class="lines-num"><span id="L428" data-line-number="428"></span></td>
<td rel="L428" class="lines-code chroma"><code class="code-inner"># The Qdrant endpoint URL. Only available when VECTOR_STORE is `qdrant`.
</code></td>
</tr>
<tr>
<td id="L429" class="lines-num"><span id="L429" data-line-number="429"></span></td>
<td rel="L429" class="lines-code chroma"><code class="code-inner">QDRANT_URL=http://qdrant:6333
</code></td>
</tr>
<tr>
<td id="L430" class="lines-num"><span id="L430" data-line-number="430"></span></td>
<td rel="L430" class="lines-code chroma"><code class="code-inner">QDRANT_API_KEY=difyai123456
</code></td>
</tr>
<tr>
<td id="L431" class="lines-num"><span id="L431" data-line-number="431"></span></td>
<td rel="L431" class="lines-code chroma"><code class="code-inner">QDRANT_CLIENT_TIMEOUT=20
</code></td>
</tr>
<tr>
<td id="L432" class="lines-num"><span id="L432" data-line-number="432"></span></td>
<td rel="L432" class="lines-code chroma"><code class="code-inner">QDRANT_GRPC_ENABLED=false
</code></td>
</tr>
<tr>
<td id="L433" class="lines-num"><span id="L433" data-line-number="433"></span></td>
<td rel="L433" class="lines-code chroma"><code class="code-inner">QDRANT_GRPC_PORT=6334
</code></td>
</tr>
<tr>
<td id="L434" class="lines-num"><span id="L434" data-line-number="434"></span></td>
<td rel="L434" class="lines-code chroma"><code class="code-inner">QDRANT_REPLICATION_FACTOR=1
</code></td>
</tr>
<tr>
<td id="L435" class="lines-num"><span id="L435" data-line-number="435"></span></td>
<td rel="L435" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L436" class="lines-num"><span id="L436" data-line-number="436"></span></td>
<td rel="L436" class="lines-code chroma"><code class="code-inner"># Milvus configuration. Only available when VECTOR_STORE is `milvus`.
</code></td>
</tr>
<tr>
<td id="L437" class="lines-num"><span id="L437" data-line-number="437"></span></td>
<td rel="L437" class="lines-code chroma"><code class="code-inner"># The milvus uri.
</code></td>
</tr>
<tr>
<td id="L438" class="lines-num"><span id="L438" data-line-number="438"></span></td>
<td rel="L438" class="lines-code chroma"><code class="code-inner">MILVUS_URI=http://host.docker.internal:19530
</code></td>
</tr>
<tr>
<td id="L439" class="lines-num"><span id="L439" data-line-number="439"></span></td>
<td rel="L439" class="lines-code chroma"><code class="code-inner">MILVUS_DATABASE=
</code></td>
</tr>
<tr>
<td id="L440" class="lines-num"><span id="L440" data-line-number="440"></span></td>
<td rel="L440" class="lines-code chroma"><code class="code-inner">MILVUS_TOKEN=
</code></td>
</tr>
<tr>
<td id="L441" class="lines-num"><span id="L441" data-line-number="441"></span></td>
<td rel="L441" class="lines-code chroma"><code class="code-inner">MILVUS_USER=
</code></td>
</tr>
<tr>
<td id="L442" class="lines-num"><span id="L442" data-line-number="442"></span></td>
<td rel="L442" class="lines-code chroma"><code class="code-inner">MILVUS_PASSWORD=
</code></td>
</tr>
<tr>
<td id="L443" class="lines-num"><span id="L443" data-line-number="443"></span></td>
<td rel="L443" class="lines-code chroma"><code class="code-inner">MILVUS_ENABLE_HYBRID_SEARCH=False
</code></td>
</tr>
<tr>
<td id="L444" class="lines-num"><span id="L444" data-line-number="444"></span></td>
<td rel="L444" class="lines-code chroma"><code class="code-inner">MILVUS_ANALYZER_PARAMS=
</code></td>
</tr>
<tr>
<td id="L445" class="lines-num"><span id="L445" data-line-number="445"></span></td>
<td rel="L445" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L446" class="lines-num"><span id="L446" data-line-number="446"></span></td>
<td rel="L446" class="lines-code chroma"><code class="code-inner"># MyScale configuration, only available when VECTOR_STORE is `myscale`
</code></td>
</tr>
<tr>
<td id="L447" class="lines-num"><span id="L447" data-line-number="447"></span></td>
<td rel="L447" class="lines-code chroma"><code class="code-inner"># For multi-language support, please set MYSCALE_FTS_PARAMS with referring to:
</code></td>
</tr>
<tr>
<td id="L448" class="lines-num"><span id="L448" data-line-number="448"></span></td>
<td rel="L448" class="lines-code chroma"><code class="code-inner"># https://myscale.com/docs/en/text-search/#understanding-fts-index-parameters
</code></td>
</tr>
<tr>
<td id="L449" class="lines-num"><span id="L449" data-line-number="449"></span></td>
<td rel="L449" class="lines-code chroma"><code class="code-inner">MYSCALE_HOST=myscale
</code></td>
</tr>
<tr>
<td id="L450" class="lines-num"><span id="L450" data-line-number="450"></span></td>
<td rel="L450" class="lines-code chroma"><code class="code-inner">MYSCALE_PORT=8123
</code></td>
</tr>
<tr>
<td id="L451" class="lines-num"><span id="L451" data-line-number="451"></span></td>
<td rel="L451" class="lines-code chroma"><code class="code-inner">MYSCALE_USER=default
</code></td>
</tr>
<tr>
<td id="L452" class="lines-num"><span id="L452" data-line-number="452"></span></td>
<td rel="L452" class="lines-code chroma"><code class="code-inner">MYSCALE_PASSWORD=
</code></td>
</tr>
<tr>
<td id="L453" class="lines-num"><span id="L453" data-line-number="453"></span></td>
<td rel="L453" class="lines-code chroma"><code class="code-inner">MYSCALE_DATABASE=dify
</code></td>
</tr>
<tr>
<td id="L454" class="lines-num"><span id="L454" data-line-number="454"></span></td>
<td rel="L454" class="lines-code chroma"><code class="code-inner">MYSCALE_FTS_PARAMS=
</code></td>
</tr>
<tr>
<td id="L455" class="lines-num"><span id="L455" data-line-number="455"></span></td>
<td rel="L455" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L456" class="lines-num"><span id="L456" data-line-number="456"></span></td>
<td rel="L456" class="lines-code chroma"><code class="code-inner"># Couchbase configurations, only available when VECTOR_STORE is `couchbase`
</code></td>
</tr>
<tr>
<td id="L457" class="lines-num"><span id="L457" data-line-number="457"></span></td>
<td rel="L457" class="lines-code chroma"><code class="code-inner"># The connection string must include hostname defined in the docker-compose file (couchbase-server in this case)
</code></td>
</tr>
<tr>
<td id="L458" class="lines-num"><span id="L458" data-line-number="458"></span></td>
<td rel="L458" class="lines-code chroma"><code class="code-inner">COUCHBASE_CONNECTION_STRING=couchbase://couchbase-server
</code></td>
</tr>
<tr>
<td id="L459" class="lines-num"><span id="L459" data-line-number="459"></span></td>
<td rel="L459" class="lines-code chroma"><code class="code-inner">COUCHBASE_USER=Administrator
</code></td>
</tr>
<tr>
<td id="L460" class="lines-num"><span id="L460" data-line-number="460"></span></td>
<td rel="L460" class="lines-code chroma"><code class="code-inner">COUCHBASE_PASSWORD=password
</code></td>
</tr>
<tr>
<td id="L461" class="lines-num"><span id="L461" data-line-number="461"></span></td>
<td rel="L461" class="lines-code chroma"><code class="code-inner">COUCHBASE_BUCKET_NAME=Embeddings
</code></td>
</tr>
<tr>
<td id="L462" class="lines-num"><span id="L462" data-line-number="462"></span></td>
<td rel="L462" class="lines-code chroma"><code class="code-inner">COUCHBASE_SCOPE_NAME=_default
</code></td>
</tr>
<tr>
<td id="L463" class="lines-num"><span id="L463" data-line-number="463"></span></td>
<td rel="L463" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L464" class="lines-num"><span id="L464" data-line-number="464"></span></td>
<td rel="L464" class="lines-code chroma"><code class="code-inner"># pgvector configurations, only available when VECTOR_STORE is `pgvector`
</code></td>
</tr>
<tr>
<td id="L465" class="lines-num"><span id="L465" data-line-number="465"></span></td>
<td rel="L465" class="lines-code chroma"><code class="code-inner">PGVECTOR_HOST=pgvector
</code></td>
</tr>
<tr>
<td id="L466" class="lines-num"><span id="L466" data-line-number="466"></span></td>
<td rel="L466" class="lines-code chroma"><code class="code-inner">PGVECTOR_PORT=5432
</code></td>
</tr>
<tr>
<td id="L467" class="lines-num"><span id="L467" data-line-number="467"></span></td>
<td rel="L467" class="lines-code chroma"><code class="code-inner">PGVECTOR_USER=postgres
</code></td>
</tr>
<tr>
<td id="L468" class="lines-num"><span id="L468" data-line-number="468"></span></td>
<td rel="L468" class="lines-code chroma"><code class="code-inner">PGVECTOR_PASSWORD=difyai123456
</code></td>
</tr>
<tr>
<td id="L469" class="lines-num"><span id="L469" data-line-number="469"></span></td>
<td rel="L469" class="lines-code chroma"><code class="code-inner">PGVECTOR_DATABASE=dify
</code></td>
</tr>
<tr>
<td id="L470" class="lines-num"><span id="L470" data-line-number="470"></span></td>
<td rel="L470" class="lines-code chroma"><code class="code-inner">PGVECTOR_MIN_CONNECTION=1
</code></td>
</tr>
<tr>
<td id="L471" class="lines-num"><span id="L471" data-line-number="471"></span></td>
<td rel="L471" class="lines-code chroma"><code class="code-inner">PGVECTOR_MAX_CONNECTION=5
</code></td>
</tr>
<tr>
<td id="L472" class="lines-num"><span id="L472" data-line-number="472"></span></td>
<td rel="L472" class="lines-code chroma"><code class="code-inner">PGVECTOR_PG_BIGM=false
</code></td>
</tr>
<tr>
<td id="L473" class="lines-num"><span id="L473" data-line-number="473"></span></td>
<td rel="L473" class="lines-code chroma"><code class="code-inner">PGVECTOR_PG_BIGM_VERSION=1.2-20240606
</code></td>
</tr>
<tr>
<td id="L474" class="lines-num"><span id="L474" data-line-number="474"></span></td>
<td rel="L474" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L475" class="lines-num"><span id="L475" data-line-number="475"></span></td>
<td rel="L475" class="lines-code chroma"><code class="code-inner"># vastbase configurations, only available when VECTOR_STORE is `vastbase`
</code></td>
</tr>
<tr>
<td id="L476" class="lines-num"><span id="L476" data-line-number="476"></span></td>
<td rel="L476" class="lines-code chroma"><code class="code-inner">VASTBASE_HOST=vastbase
</code></td>
</tr>
<tr>
<td id="L477" class="lines-num"><span id="L477" data-line-number="477"></span></td>
<td rel="L477" class="lines-code chroma"><code class="code-inner">VASTBASE_PORT=5432
</code></td>
</tr>
<tr>
<td id="L478" class="lines-num"><span id="L478" data-line-number="478"></span></td>
<td rel="L478" class="lines-code chroma"><code class="code-inner">VASTBASE_USER=dify
</code></td>
</tr>
<tr>
<td id="L479" class="lines-num"><span id="L479" data-line-number="479"></span></td>
<td rel="L479" class="lines-code chroma"><code class="code-inner">VASTBASE_PASSWORD=Difyai123456
</code></td>
</tr>
<tr>
<td id="L480" class="lines-num"><span id="L480" data-line-number="480"></span></td>
<td rel="L480" class="lines-code chroma"><code class="code-inner">VASTBASE_DATABASE=dify
</code></td>
</tr>
<tr>
<td id="L481" class="lines-num"><span id="L481" data-line-number="481"></span></td>
<td rel="L481" class="lines-code chroma"><code class="code-inner">VASTBASE_MIN_CONNECTION=1
</code></td>
</tr>
<tr>
<td id="L482" class="lines-num"><span id="L482" data-line-number="482"></span></td>
<td rel="L482" class="lines-code chroma"><code class="code-inner">VASTBASE_MAX_CONNECTION=5
</code></td>
</tr>
<tr>
<td id="L483" class="lines-num"><span id="L483" data-line-number="483"></span></td>
<td rel="L483" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L484" class="lines-num"><span id="L484" data-line-number="484"></span></td>
<td rel="L484" class="lines-code chroma"><code class="code-inner"># pgvecto-rs configurations, only available when VECTOR_STORE is `pgvecto-rs`
</code></td>
</tr>
<tr>
<td id="L485" class="lines-num"><span id="L485" data-line-number="485"></span></td>
<td rel="L485" class="lines-code chroma"><code class="code-inner">PGVECTO_RS_HOST=pgvecto-rs
</code></td>
</tr>
<tr>
<td id="L486" class="lines-num"><span id="L486" data-line-number="486"></span></td>
<td rel="L486" class="lines-code chroma"><code class="code-inner">PGVECTO_RS_PORT=5432
</code></td>
</tr>
<tr>
<td id="L487" class="lines-num"><span id="L487" data-line-number="487"></span></td>
<td rel="L487" class="lines-code chroma"><code class="code-inner">PGVECTO_RS_USER=postgres
</code></td>
</tr>
<tr>
<td id="L488" class="lines-num"><span id="L488" data-line-number="488"></span></td>
<td rel="L488" class="lines-code chroma"><code class="code-inner">PGVECTO_RS_PASSWORD=difyai123456
</code></td>
</tr>
<tr>
<td id="L489" class="lines-num"><span id="L489" data-line-number="489"></span></td>
<td rel="L489" class="lines-code chroma"><code class="code-inner">PGVECTO_RS_DATABASE=dify
</code></td>
</tr>
<tr>
<td id="L490" class="lines-num"><span id="L490" data-line-number="490"></span></td>
<td rel="L490" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L491" class="lines-num"><span id="L491" data-line-number="491"></span></td>
<td rel="L491" class="lines-code chroma"><code class="code-inner"># analyticdb configurations, only available when VECTOR_STORE is `analyticdb`
</code></td>
</tr>
<tr>
<td id="L492" class="lines-num"><span id="L492" data-line-number="492"></span></td>
<td rel="L492" class="lines-code chroma"><code class="code-inner">ANALYTICDB_KEY_ID=your-ak
</code></td>
</tr>
<tr>
<td id="L493" class="lines-num"><span id="L493" data-line-number="493"></span></td>
<td rel="L493" class="lines-code chroma"><code class="code-inner">ANALYTICDB_KEY_SECRET=your-sk
</code></td>
</tr>
<tr>
<td id="L494" class="lines-num"><span id="L494" data-line-number="494"></span></td>
<td rel="L494" class="lines-code chroma"><code class="code-inner">ANALYTICDB_REGION_ID=cn-hangzhou
</code></td>
</tr>
<tr>
<td id="L495" class="lines-num"><span id="L495" data-line-number="495"></span></td>
<td rel="L495" class="lines-code chroma"><code class="code-inner">ANALYTICDB_INSTANCE_ID=gp-ab123456
</code></td>
</tr>
<tr>
<td id="L496" class="lines-num"><span id="L496" data-line-number="496"></span></td>
<td rel="L496" class="lines-code chroma"><code class="code-inner">ANALYTICDB_ACCOUNT=testaccount
</code></td>
</tr>
<tr>
<td id="L497" class="lines-num"><span id="L497" data-line-number="497"></span></td>
<td rel="L497" class="lines-code chroma"><code class="code-inner">ANALYTICDB_PASSWORD=testpassword
</code></td>
</tr>
<tr>
<td id="L498" class="lines-num"><span id="L498" data-line-number="498"></span></td>
<td rel="L498" class="lines-code chroma"><code class="code-inner">ANALYTICDB_NAMESPACE=dify
</code></td>
</tr>
<tr>
<td id="L499" class="lines-num"><span id="L499" data-line-number="499"></span></td>
<td rel="L499" class="lines-code chroma"><code class="code-inner">ANALYTICDB_NAMESPACE_PASSWORD=difypassword
</code></td>
</tr>
<tr>
<td id="L500" class="lines-num"><span id="L500" data-line-number="500"></span></td>
<td rel="L500" class="lines-code chroma"><code class="code-inner">ANALYTICDB_HOST=gp-test.aliyuncs.com
</code></td>
</tr>
<tr>
<td id="L501" class="lines-num"><span id="L501" data-line-number="501"></span></td>
<td rel="L501" class="lines-code chroma"><code class="code-inner">ANALYTICDB_PORT=5432
</code></td>
</tr>
<tr>
<td id="L502" class="lines-num"><span id="L502" data-line-number="502"></span></td>
<td rel="L502" class="lines-code chroma"><code class="code-inner">ANALYTICDB_MIN_CONNECTION=1
</code></td>
</tr>
<tr>
<td id="L503" class="lines-num"><span id="L503" data-line-number="503"></span></td>
<td rel="L503" class="lines-code chroma"><code class="code-inner">ANALYTICDB_MAX_CONNECTION=5
</code></td>
</tr>
<tr>
<td id="L504" class="lines-num"><span id="L504" data-line-number="504"></span></td>
<td rel="L504" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L505" class="lines-num"><span id="L505" data-line-number="505"></span></td>
<td rel="L505" class="lines-code chroma"><code class="code-inner"># TiDB vector configurations, only available when VECTOR_STORE is `tidb_vector`
</code></td>
</tr>
<tr>
<td id="L506" class="lines-num"><span id="L506" data-line-number="506"></span></td>
<td rel="L506" class="lines-code chroma"><code class="code-inner">TIDB_VECTOR_HOST=tidb
</code></td>
</tr>
<tr>
<td id="L507" class="lines-num"><span id="L507" data-line-number="507"></span></td>
<td rel="L507" class="lines-code chroma"><code class="code-inner">TIDB_VECTOR_PORT=4000
</code></td>
</tr>
<tr>
<td id="L508" class="lines-num"><span id="L508" data-line-number="508"></span></td>
<td rel="L508" class="lines-code chroma"><code class="code-inner">TIDB_VECTOR_USER=
</code></td>
</tr>
<tr>
<td id="L509" class="lines-num"><span id="L509" data-line-number="509"></span></td>
<td rel="L509" class="lines-code chroma"><code class="code-inner">TIDB_VECTOR_PASSWORD=
</code></td>
</tr>
<tr>
<td id="L510" class="lines-num"><span id="L510" data-line-number="510"></span></td>
<td rel="L510" class="lines-code chroma"><code class="code-inner">TIDB_VECTOR_DATABASE=dify
</code></td>
</tr>
<tr>
<td id="L511" class="lines-num"><span id="L511" data-line-number="511"></span></td>
<td rel="L511" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L512" class="lines-num"><span id="L512" data-line-number="512"></span></td>
<td rel="L512" class="lines-code chroma"><code class="code-inner"># Matrixone vector configurations.
</code></td>
</tr>
<tr>
<td id="L513" class="lines-num"><span id="L513" data-line-number="513"></span></td>
<td rel="L513" class="lines-code chroma"><code class="code-inner">MATRIXONE_HOST=matrixone
</code></td>
</tr>
<tr>
<td id="L514" class="lines-num"><span id="L514" data-line-number="514"></span></td>
<td rel="L514" class="lines-code chroma"><code class="code-inner">MATRIXONE_PORT=6001
</code></td>
</tr>
<tr>
<td id="L515" class="lines-num"><span id="L515" data-line-number="515"></span></td>
<td rel="L515" class="lines-code chroma"><code class="code-inner">MATRIXONE_USER=dump
</code></td>
</tr>
<tr>
<td id="L516" class="lines-num"><span id="L516" data-line-number="516"></span></td>
<td rel="L516" class="lines-code chroma"><code class="code-inner">MATRIXONE_PASSWORD=111
</code></td>
</tr>
<tr>
<td id="L517" class="lines-num"><span id="L517" data-line-number="517"></span></td>
<td rel="L517" class="lines-code chroma"><code class="code-inner">MATRIXONE_DATABASE=dify
</code></td>
</tr>
<tr>
<td id="L518" class="lines-num"><span id="L518" data-line-number="518"></span></td>
<td rel="L518" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L519" class="lines-num"><span id="L519" data-line-number="519"></span></td>
<td rel="L519" class="lines-code chroma"><code class="code-inner"># Tidb on qdrant configuration, only available when VECTOR_STORE is `tidb_on_qdrant`
</code></td>
</tr>
<tr>
<td id="L520" class="lines-num"><span id="L520" data-line-number="520"></span></td>
<td rel="L520" class="lines-code chroma"><code class="code-inner">TIDB_ON_QDRANT_URL=http://127.0.0.1
</code></td>
</tr>
<tr>
<td id="L521" class="lines-num"><span id="L521" data-line-number="521"></span></td>
<td rel="L521" class="lines-code chroma"><code class="code-inner">TIDB_ON_QDRANT_API_KEY=dify
</code></td>
</tr>
<tr>
<td id="L522" class="lines-num"><span id="L522" data-line-number="522"></span></td>
<td rel="L522" class="lines-code chroma"><code class="code-inner">TIDB_ON_QDRANT_CLIENT_TIMEOUT=20
</code></td>
</tr>
<tr>
<td id="L523" class="lines-num"><span id="L523" data-line-number="523"></span></td>
<td rel="L523" class="lines-code chroma"><code class="code-inner">TIDB_ON_QDRANT_GRPC_ENABLED=false
</code></td>
</tr>
<tr>
<td id="L524" class="lines-num"><span id="L524" data-line-number="524"></span></td>
<td rel="L524" class="lines-code chroma"><code class="code-inner">TIDB_ON_QDRANT_GRPC_PORT=6334
</code></td>
</tr>
<tr>
<td id="L525" class="lines-num"><span id="L525" data-line-number="525"></span></td>
<td rel="L525" class="lines-code chroma"><code class="code-inner">TIDB_PUBLIC_KEY=dify
</code></td>
</tr>
<tr>
<td id="L526" class="lines-num"><span id="L526" data-line-number="526"></span></td>
<td rel="L526" class="lines-code chroma"><code class="code-inner">TIDB_PRIVATE_KEY=dify
</code></td>
</tr>
<tr>
<td id="L527" class="lines-num"><span id="L527" data-line-number="527"></span></td>
<td rel="L527" class="lines-code chroma"><code class="code-inner">TIDB_API_URL=http://127.0.0.1
</code></td>
</tr>
<tr>
<td id="L528" class="lines-num"><span id="L528" data-line-number="528"></span></td>
<td rel="L528" class="lines-code chroma"><code class="code-inner">TIDB_IAM_API_URL=http://127.0.0.1
</code></td>
</tr>
<tr>
<td id="L529" class="lines-num"><span id="L529" data-line-number="529"></span></td>
<td rel="L529" class="lines-code chroma"><code class="code-inner">TIDB_REGION=regions/aws-us-east-1
</code></td>
</tr>
<tr>
<td id="L530" class="lines-num"><span id="L530" data-line-number="530"></span></td>
<td rel="L530" class="lines-code chroma"><code class="code-inner">TIDB_PROJECT_ID=dify
</code></td>
</tr>
<tr>
<td id="L531" class="lines-num"><span id="L531" data-line-number="531"></span></td>
<td rel="L531" class="lines-code chroma"><code class="code-inner">TIDB_SPEND_LIMIT=100
</code></td>
</tr>
<tr>
<td id="L532" class="lines-num"><span id="L532" data-line-number="532"></span></td>
<td rel="L532" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L533" class="lines-num"><span id="L533" data-line-number="533"></span></td>
<td rel="L533" class="lines-code chroma"><code class="code-inner"># Chroma configuration, only available when VECTOR_STORE is `chroma`
</code></td>
</tr>
<tr>
<td id="L534" class="lines-num"><span id="L534" data-line-number="534"></span></td>
<td rel="L534" class="lines-code chroma"><code class="code-inner">CHROMA_HOST=127.0.0.1
</code></td>
</tr>
<tr>
<td id="L535" class="lines-num"><span id="L535" data-line-number="535"></span></td>
<td rel="L535" class="lines-code chroma"><code class="code-inner">CHROMA_PORT=8000
</code></td>
</tr>
<tr>
<td id="L536" class="lines-num"><span id="L536" data-line-number="536"></span></td>
<td rel="L536" class="lines-code chroma"><code class="code-inner">CHROMA_TENANT=default_tenant
</code></td>
</tr>
<tr>
<td id="L537" class="lines-num"><span id="L537" data-line-number="537"></span></td>
<td rel="L537" class="lines-code chroma"><code class="code-inner">CHROMA_DATABASE=default_database
</code></td>
</tr>
<tr>
<td id="L538" class="lines-num"><span id="L538" data-line-number="538"></span></td>
<td rel="L538" class="lines-code chroma"><code class="code-inner">CHROMA_AUTH_PROVIDER=chromadb.auth.token_authn.TokenAuthClientProvider
</code></td>
</tr>
<tr>
<td id="L539" class="lines-num"><span id="L539" data-line-number="539"></span></td>
<td rel="L539" class="lines-code chroma"><code class="code-inner">CHROMA_AUTH_CREDENTIALS=
</code></td>
</tr>
<tr>
<td id="L540" class="lines-num"><span id="L540" data-line-number="540"></span></td>
<td rel="L540" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L541" class="lines-num"><span id="L541" data-line-number="541"></span></td>
<td rel="L541" class="lines-code chroma"><code class="code-inner"># Oracle configuration, only available when VECTOR_STORE is `oracle`
</code></td>
</tr>
<tr>
<td id="L542" class="lines-num"><span id="L542" data-line-number="542"></span></td>
<td rel="L542" class="lines-code chroma"><code class="code-inner">ORACLE_USER=dify
</code></td>
</tr>
<tr>
<td id="L543" class="lines-num"><span id="L543" data-line-number="543"></span></td>
<td rel="L543" class="lines-code chroma"><code class="code-inner">ORACLE_PASSWORD=dify
</code></td>
</tr>
<tr>
<td id="L544" class="lines-num"><span id="L544" data-line-number="544"></span></td>
<td rel="L544" class="lines-code chroma"><code class="code-inner">ORACLE_DSN=oracle:1521/FREEPDB1
</code></td>
</tr>
<tr>
<td id="L545" class="lines-num"><span id="L545" data-line-number="545"></span></td>
<td rel="L545" class="lines-code chroma"><code class="code-inner">ORACLE_CONFIG_DIR=/app/api/storage/wallet
</code></td>
</tr>
<tr>
<td id="L546" class="lines-num"><span id="L546" data-line-number="546"></span></td>
<td rel="L546" class="lines-code chroma"><code class="code-inner">ORACLE_WALLET_LOCATION=/app/api/storage/wallet
</code></td>
</tr>
<tr>
<td id="L547" class="lines-num"><span id="L547" data-line-number="547"></span></td>
<td rel="L547" class="lines-code chroma"><code class="code-inner">ORACLE_WALLET_PASSWORD=dify
</code></td>
</tr>
<tr>
<td id="L548" class="lines-num"><span id="L548" data-line-number="548"></span></td>
<td rel="L548" class="lines-code chroma"><code class="code-inner">ORACLE_IS_AUTONOMOUS=false
</code></td>
</tr>
<tr>
<td id="L549" class="lines-num"><span id="L549" data-line-number="549"></span></td>
<td rel="L549" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L550" class="lines-num"><span id="L550" data-line-number="550"></span></td>
<td rel="L550" class="lines-code chroma"><code class="code-inner"># relyt configurations, only available when VECTOR_STORE is `relyt`
</code></td>
</tr>
<tr>
<td id="L551" class="lines-num"><span id="L551" data-line-number="551"></span></td>
<td rel="L551" class="lines-code chroma"><code class="code-inner">RELYT_HOST=db
</code></td>
</tr>
<tr>
<td id="L552" class="lines-num"><span id="L552" data-line-number="552"></span></td>
<td rel="L552" class="lines-code chroma"><code class="code-inner">RELYT_PORT=5432
</code></td>
</tr>
<tr>
<td id="L553" class="lines-num"><span id="L553" data-line-number="553"></span></td>
<td rel="L553" class="lines-code chroma"><code class="code-inner">RELYT_USER=postgres
</code></td>
</tr>
<tr>
<td id="L554" class="lines-num"><span id="L554" data-line-number="554"></span></td>
<td rel="L554" class="lines-code chroma"><code class="code-inner">RELYT_PASSWORD=difyai123456
</code></td>
</tr>
<tr>
<td id="L555" class="lines-num"><span id="L555" data-line-number="555"></span></td>
<td rel="L555" class="lines-code chroma"><code class="code-inner">RELYT_DATABASE=postgres
</code></td>
</tr>
<tr>
<td id="L556" class="lines-num"><span id="L556" data-line-number="556"></span></td>
<td rel="L556" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L557" class="lines-num"><span id="L557" data-line-number="557"></span></td>
<td rel="L557" class="lines-code chroma"><code class="code-inner"># open search configuration, only available when VECTOR_STORE is `opensearch`
</code></td>
</tr>
<tr>
<td id="L558" class="lines-num"><span id="L558" data-line-number="558"></span></td>
<td rel="L558" class="lines-code chroma"><code class="code-inner">OPENSEARCH_HOST=opensearch
</code></td>
</tr>
<tr>
<td id="L559" class="lines-num"><span id="L559" data-line-number="559"></span></td>
<td rel="L559" class="lines-code chroma"><code class="code-inner">OPENSEARCH_PORT=9200
</code></td>
</tr>
<tr>
<td id="L560" class="lines-num"><span id="L560" data-line-number="560"></span></td>
<td rel="L560" class="lines-code chroma"><code class="code-inner">OPENSEARCH_SECURE=true
</code></td>
</tr>
<tr>
<td id="L561" class="lines-num"><span id="L561" data-line-number="561"></span></td>
<td rel="L561" class="lines-code chroma"><code class="code-inner">OPENSEARCH_VERIFY_CERTS=true
</code></td>
</tr>
<tr>
<td id="L562" class="lines-num"><span id="L562" data-line-number="562"></span></td>
<td rel="L562" class="lines-code chroma"><code class="code-inner">OPENSEARCH_AUTH_METHOD=basic
</code></td>
</tr>
<tr>
<td id="L563" class="lines-num"><span id="L563" data-line-number="563"></span></td>
<td rel="L563" class="lines-code chroma"><code class="code-inner">OPENSEARCH_USER=admin
</code></td>
</tr>
<tr>
<td id="L564" class="lines-num"><span id="L564" data-line-number="564"></span></td>
<td rel="L564" class="lines-code chroma"><code class="code-inner">OPENSEARCH_PASSWORD=admin
</code></td>
</tr>
<tr>
<td id="L565" class="lines-num"><span id="L565" data-line-number="565"></span></td>
<td rel="L565" class="lines-code chroma"><code class="code-inner"># If using AWS managed IAM, e.g. Managed Cluster or OpenSearch Serverless
</code></td>
</tr>
<tr>
<td id="L566" class="lines-num"><span id="L566" data-line-number="566"></span></td>
<td rel="L566" class="lines-code chroma"><code class="code-inner">OPENSEARCH_AWS_REGION=ap-southeast-1
</code></td>
</tr>
<tr>
<td id="L567" class="lines-num"><span id="L567" data-line-number="567"></span></td>
<td rel="L567" class="lines-code chroma"><code class="code-inner">OPENSEARCH_AWS_SERVICE=aoss
</code></td>
</tr>
<tr>
<td id="L568" class="lines-num"><span id="L568" data-line-number="568"></span></td>
<td rel="L568" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L569" class="lines-num"><span id="L569" data-line-number="569"></span></td>
<td rel="L569" class="lines-code chroma"><code class="code-inner"># tencent vector configurations, only available when VECTOR_STORE is `tencent`
</code></td>
</tr>
<tr>
<td id="L570" class="lines-num"><span id="L570" data-line-number="570"></span></td>
<td rel="L570" class="lines-code chroma"><code class="code-inner">TENCENT_VECTOR_DB_URL=http://127.0.0.1
</code></td>
</tr>
<tr>
<td id="L571" class="lines-num"><span id="L571" data-line-number="571"></span></td>
<td rel="L571" class="lines-code chroma"><code class="code-inner">TENCENT_VECTOR_DB_API_KEY=dify
</code></td>
</tr>
<tr>
<td id="L572" class="lines-num"><span id="L572" data-line-number="572"></span></td>
<td rel="L572" class="lines-code chroma"><code class="code-inner">TENCENT_VECTOR_DB_TIMEOUT=30
</code></td>
</tr>
<tr>
<td id="L573" class="lines-num"><span id="L573" data-line-number="573"></span></td>
<td rel="L573" class="lines-code chroma"><code class="code-inner">TENCENT_VECTOR_DB_USERNAME=dify
</code></td>
</tr>
<tr>
<td id="L574" class="lines-num"><span id="L574" data-line-number="574"></span></td>
<td rel="L574" class="lines-code chroma"><code class="code-inner">TENCENT_VECTOR_DB_DATABASE=dify
</code></td>
</tr>
<tr>
<td id="L575" class="lines-num"><span id="L575" data-line-number="575"></span></td>
<td rel="L575" class="lines-code chroma"><code class="code-inner">TENCENT_VECTOR_DB_SHARD=1
</code></td>
</tr>
<tr>
<td id="L576" class="lines-num"><span id="L576" data-line-number="576"></span></td>
<td rel="L576" class="lines-code chroma"><code class="code-inner">TENCENT_VECTOR_DB_REPLICAS=2
</code></td>
</tr>
<tr>
<td id="L577" class="lines-num"><span id="L577" data-line-number="577"></span></td>
<td rel="L577" class="lines-code chroma"><code class="code-inner">TENCENT_VECTOR_DB_ENABLE_HYBRID_SEARCH=false
</code></td>
</tr>
<tr>
<td id="L578" class="lines-num"><span id="L578" data-line-number="578"></span></td>
<td rel="L578" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L579" class="lines-num"><span id="L579" data-line-number="579"></span></td>
<td rel="L579" class="lines-code chroma"><code class="code-inner"># ElasticSearch configuration, only available when VECTOR_STORE is `elasticsearch`
</code></td>
</tr>
<tr>
<td id="L580" class="lines-num"><span id="L580" data-line-number="580"></span></td>
<td rel="L580" class="lines-code chroma"><code class="code-inner">ELASTICSEARCH_HOST=0.0.0.0
</code></td>
</tr>
<tr>
<td id="L581" class="lines-num"><span id="L581" data-line-number="581"></span></td>
<td rel="L581" class="lines-code chroma"><code class="code-inner">ELASTICSEARCH_PORT=9200
</code></td>
</tr>
<tr>
<td id="L582" class="lines-num"><span id="L582" data-line-number="582"></span></td>
<td rel="L582" class="lines-code chroma"><code class="code-inner">ELASTICSEARCH_USERNAME=elastic
</code></td>
</tr>
<tr>
<td id="L583" class="lines-num"><span id="L583" data-line-number="583"></span></td>
<td rel="L583" class="lines-code chroma"><code class="code-inner">ELASTICSEARCH_PASSWORD=elastic
</code></td>
</tr>
<tr>
<td id="L584" class="lines-num"><span id="L584" data-line-number="584"></span></td>
<td rel="L584" class="lines-code chroma"><code class="code-inner">KIBANA_PORT=5601
</code></td>
</tr>
<tr>
<td id="L585" class="lines-num"><span id="L585" data-line-number="585"></span></td>
<td rel="L585" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L586" class="lines-num"><span id="L586" data-line-number="586"></span></td>
<td rel="L586" class="lines-code chroma"><code class="code-inner"># baidu vector configurations, only available when VECTOR_STORE is `baidu`
</code></td>
</tr>
<tr>
<td id="L587" class="lines-num"><span id="L587" data-line-number="587"></span></td>
<td rel="L587" class="lines-code chroma"><code class="code-inner">BAIDU_VECTOR_DB_ENDPOINT=http://127.0.0.1:5287
</code></td>
</tr>
<tr>
<td id="L588" class="lines-num"><span id="L588" data-line-number="588"></span></td>
<td rel="L588" class="lines-code chroma"><code class="code-inner">BAIDU_VECTOR_DB_CONNECTION_TIMEOUT_MS=30000
</code></td>
</tr>
<tr>
<td id="L589" class="lines-num"><span id="L589" data-line-number="589"></span></td>
<td rel="L589" class="lines-code chroma"><code class="code-inner">BAIDU_VECTOR_DB_ACCOUNT=root
</code></td>
</tr>
<tr>
<td id="L590" class="lines-num"><span id="L590" data-line-number="590"></span></td>
<td rel="L590" class="lines-code chroma"><code class="code-inner">BAIDU_VECTOR_DB_API_KEY=dify
</code></td>
</tr>
<tr>
<td id="L591" class="lines-num"><span id="L591" data-line-number="591"></span></td>
<td rel="L591" class="lines-code chroma"><code class="code-inner">BAIDU_VECTOR_DB_DATABASE=dify
</code></td>
</tr>
<tr>
<td id="L592" class="lines-num"><span id="L592" data-line-number="592"></span></td>
<td rel="L592" class="lines-code chroma"><code class="code-inner">BAIDU_VECTOR_DB_SHARD=1
</code></td>
</tr>
<tr>
<td id="L593" class="lines-num"><span id="L593" data-line-number="593"></span></td>
<td rel="L593" class="lines-code chroma"><code class="code-inner">BAIDU_VECTOR_DB_REPLICAS=3
</code></td>
</tr>
<tr>
<td id="L594" class="lines-num"><span id="L594" data-line-number="594"></span></td>
<td rel="L594" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L595" class="lines-num"><span id="L595" data-line-number="595"></span></td>
<td rel="L595" class="lines-code chroma"><code class="code-inner"># VikingDB configurations, only available when VECTOR_STORE is `vikingdb`
</code></td>
</tr>
<tr>
<td id="L596" class="lines-num"><span id="L596" data-line-number="596"></span></td>
<td rel="L596" class="lines-code chroma"><code class="code-inner">VIKINGDB_ACCESS_KEY=your-ak
</code></td>
</tr>
<tr>
<td id="L597" class="lines-num"><span id="L597" data-line-number="597"></span></td>
<td rel="L597" class="lines-code chroma"><code class="code-inner">VIKINGDB_SECRET_KEY=your-sk
</code></td>
</tr>
<tr>
<td id="L598" class="lines-num"><span id="L598" data-line-number="598"></span></td>
<td rel="L598" class="lines-code chroma"><code class="code-inner">VIKINGDB_REGION=cn-shanghai
</code></td>
</tr>
<tr>
<td id="L599" class="lines-num"><span id="L599" data-line-number="599"></span></td>
<td rel="L599" class="lines-code chroma"><code class="code-inner">VIKINGDB_HOST=api-vikingdb.xxx.volces.com
</code></td>
</tr>
<tr>
<td id="L600" class="lines-num"><span id="L600" data-line-number="600"></span></td>
<td rel="L600" class="lines-code chroma"><code class="code-inner">VIKINGDB_SCHEMA=http
</code></td>
</tr>
<tr>
<td id="L601" class="lines-num"><span id="L601" data-line-number="601"></span></td>
<td rel="L601" class="lines-code chroma"><code class="code-inner">VIKINGDB_CONNECTION_TIMEOUT=30
</code></td>
</tr>
<tr>
<td id="L602" class="lines-num"><span id="L602" data-line-number="602"></span></td>
<td rel="L602" class="lines-code chroma"><code class="code-inner">VIKINGDB_SOCKET_TIMEOUT=30
</code></td>
</tr>
<tr>
<td id="L603" class="lines-num"><span id="L603" data-line-number="603"></span></td>
<td rel="L603" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L604" class="lines-num"><span id="L604" data-line-number="604"></span></td>
<td rel="L604" class="lines-code chroma"><code class="code-inner"># Lindorm configuration, only available when VECTOR_STORE is `lindorm`
</code></td>
</tr>
<tr>
<td id="L605" class="lines-num"><span id="L605" data-line-number="605"></span></td>
<td rel="L605" class="lines-code chroma"><code class="code-inner">LINDORM_URL=http://lindorm:30070
</code></td>
</tr>
<tr>
<td id="L606" class="lines-num"><span id="L606" data-line-number="606"></span></td>
<td rel="L606" class="lines-code chroma"><code class="code-inner">LINDORM_USERNAME=lindorm
</code></td>
</tr>
<tr>
<td id="L607" class="lines-num"><span id="L607" data-line-number="607"></span></td>
<td rel="L607" class="lines-code chroma"><code class="code-inner">LINDORM_PASSWORD=lindorm
</code></td>
</tr>
<tr>
<td id="L608" class="lines-num"><span id="L608" data-line-number="608"></span></td>
<td rel="L608" class="lines-code chroma"><code class="code-inner">LINDORM_QUERY_TIMEOUT=1
</code></td>
</tr>
<tr>
<td id="L609" class="lines-num"><span id="L609" data-line-number="609"></span></td>
<td rel="L609" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L610" class="lines-num"><span id="L610" data-line-number="610"></span></td>
<td rel="L610" class="lines-code chroma"><code class="code-inner"># OceanBase Vector configuration, only available when VECTOR_STORE is `oceanbase`
</code></td>
</tr>
<tr>
<td id="L611" class="lines-num"><span id="L611" data-line-number="611"></span></td>
<td rel="L611" class="lines-code chroma"><code class="code-inner">OCEANBASE_VECTOR_HOST=oceanbase
</code></td>
</tr>
<tr>
<td id="L612" class="lines-num"><span id="L612" data-line-number="612"></span></td>
<td rel="L612" class="lines-code chroma"><code class="code-inner">OCEANBASE_VECTOR_PORT=2881
</code></td>
</tr>
<tr>
<td id="L613" class="lines-num"><span id="L613" data-line-number="613"></span></td>
<td rel="L613" class="lines-code chroma"><code class="code-inner">OCEANBASE_VECTOR_USER=root@test
</code></td>
</tr>
<tr>
<td id="L614" class="lines-num"><span id="L614" data-line-number="614"></span></td>
<td rel="L614" class="lines-code chroma"><code class="code-inner">OCEANBASE_VECTOR_PASSWORD=difyai123456
</code></td>
</tr>
<tr>
<td id="L615" class="lines-num"><span id="L615" data-line-number="615"></span></td>
<td rel="L615" class="lines-code chroma"><code class="code-inner">OCEANBASE_VECTOR_DATABASE=test
</code></td>
</tr>
<tr>
<td id="L616" class="lines-num"><span id="L616" data-line-number="616"></span></td>
<td rel="L616" class="lines-code chroma"><code class="code-inner">OCEANBASE_CLUSTER_NAME=difyai
</code></td>
</tr>
<tr>
<td id="L617" class="lines-num"><span id="L617" data-line-number="617"></span></td>
<td rel="L617" class="lines-code chroma"><code class="code-inner">OCEANBASE_MEMORY_LIMIT=6G
</code></td>
</tr>
<tr>
<td id="L618" class="lines-num"><span id="L618" data-line-number="618"></span></td>
<td rel="L618" class="lines-code chroma"><code class="code-inner">OCEANBASE_ENABLE_HYBRID_SEARCH=false
</code></td>
</tr>
<tr>
<td id="L619" class="lines-num"><span id="L619" data-line-number="619"></span></td>
<td rel="L619" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L620" class="lines-num"><span id="L620" data-line-number="620"></span></td>
<td rel="L620" class="lines-code chroma"><code class="code-inner"># opengauss configurations, only available when VECTOR_STORE is `opengauss`
</code></td>
</tr>
<tr>
<td id="L621" class="lines-num"><span id="L621" data-line-number="621"></span></td>
<td rel="L621" class="lines-code chroma"><code class="code-inner">OPENGAUSS_HOST=opengauss
</code></td>
</tr>
<tr>
<td id="L622" class="lines-num"><span id="L622" data-line-number="622"></span></td>
<td rel="L622" class="lines-code chroma"><code class="code-inner">OPENGAUSS_PORT=6600
</code></td>
</tr>
<tr>
<td id="L623" class="lines-num"><span id="L623" data-line-number="623"></span></td>
<td rel="L623" class="lines-code chroma"><code class="code-inner">OPENGAUSS_USER=postgres
</code></td>
</tr>
<tr>
<td id="L624" class="lines-num"><span id="L624" data-line-number="624"></span></td>
<td rel="L624" class="lines-code chroma"><code class="code-inner">OPENGAUSS_PASSWORD=Dify@123
</code></td>
</tr>
<tr>
<td id="L625" class="lines-num"><span id="L625" data-line-number="625"></span></td>
<td rel="L625" class="lines-code chroma"><code class="code-inner">OPENGAUSS_DATABASE=dify
</code></td>
</tr>
<tr>
<td id="L626" class="lines-num"><span id="L626" data-line-number="626"></span></td>
<td rel="L626" class="lines-code chroma"><code class="code-inner">OPENGAUSS_MIN_CONNECTION=1
</code></td>
</tr>
<tr>
<td id="L627" class="lines-num"><span id="L627" data-line-number="627"></span></td>
<td rel="L627" class="lines-code chroma"><code class="code-inner">OPENGAUSS_MAX_CONNECTION=5
</code></td>
</tr>
<tr>
<td id="L628" class="lines-num"><span id="L628" data-line-number="628"></span></td>
<td rel="L628" class="lines-code chroma"><code class="code-inner">OPENGAUSS_ENABLE_PQ=false
</code></td>
</tr>
<tr>
<td id="L629" class="lines-num"><span id="L629" data-line-number="629"></span></td>
<td rel="L629" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L630" class="lines-num"><span id="L630" data-line-number="630"></span></td>
<td rel="L630" class="lines-code chroma"><code class="code-inner"># huawei cloud search service vector configurations, only available when VECTOR_STORE is `huawei_cloud`
</code></td>
</tr>
<tr>
<td id="L631" class="lines-num"><span id="L631" data-line-number="631"></span></td>
<td rel="L631" class="lines-code chroma"><code class="code-inner">HUAWEI_CLOUD_HOSTS=https://127.0.0.1:9200
</code></td>
</tr>
<tr>
<td id="L632" class="lines-num"><span id="L632" data-line-number="632"></span></td>
<td rel="L632" class="lines-code chroma"><code class="code-inner">HUAWEI_CLOUD_USER=admin
</code></td>
</tr>
<tr>
<td id="L633" class="lines-num"><span id="L633" data-line-number="633"></span></td>
<td rel="L633" class="lines-code chroma"><code class="code-inner">HUAWEI_CLOUD_PASSWORD=admin
</code></td>
</tr>
<tr>
<td id="L634" class="lines-num"><span id="L634" data-line-number="634"></span></td>
<td rel="L634" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L635" class="lines-num"><span id="L635" data-line-number="635"></span></td>
<td rel="L635" class="lines-code chroma"><code class="code-inner"># Upstash Vector configuration, only available when VECTOR_STORE is `upstash`
</code></td>
</tr>
<tr>
<td id="L636" class="lines-num"><span id="L636" data-line-number="636"></span></td>
<td rel="L636" class="lines-code chroma"><code class="code-inner">UPSTASH_VECTOR_URL=https://xxx-vector.upstash.io
</code></td>
</tr>
<tr>
<td id="L637" class="lines-num"><span id="L637" data-line-number="637"></span></td>
<td rel="L637" class="lines-code chroma"><code class="code-inner">UPSTASH_VECTOR_TOKEN=dify
</code></td>
</tr>
<tr>
<td id="L638" class="lines-num"><span id="L638" data-line-number="638"></span></td>
<td rel="L638" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L639" class="lines-num"><span id="L639" data-line-number="639"></span></td>
<td rel="L639" class="lines-code chroma"><code class="code-inner"># TableStore Vector configuration
</code></td>
</tr>
<tr>
<td id="L640" class="lines-num"><span id="L640" data-line-number="640"></span></td>
<td rel="L640" class="lines-code chroma"><code class="code-inner"># (only used when VECTOR_STORE is tablestore)
</code></td>
</tr>
<tr>
<td id="L641" class="lines-num"><span id="L641" data-line-number="641"></span></td>
<td rel="L641" class="lines-code chroma"><code class="code-inner">TABLESTORE_ENDPOINT=https://instance-name.cn-hangzhou.ots.aliyuncs.com
</code></td>
</tr>
<tr>
<td id="L642" class="lines-num"><span id="L642" data-line-number="642"></span></td>
<td rel="L642" class="lines-code chroma"><code class="code-inner">TABLESTORE_INSTANCE_NAME=instance-name
</code></td>
</tr>
<tr>
<td id="L643" class="lines-num"><span id="L643" data-line-number="643"></span></td>
<td rel="L643" class="lines-code chroma"><code class="code-inner">TABLESTORE_ACCESS_KEY_ID=xxx
</code></td>
</tr>
<tr>
<td id="L644" class="lines-num"><span id="L644" data-line-number="644"></span></td>
<td rel="L644" class="lines-code chroma"><code class="code-inner">TABLESTORE_ACCESS_KEY_SECRET=xxx
</code></td>
</tr>
<tr>
<td id="L645" class="lines-num"><span id="L645" data-line-number="645"></span></td>
<td rel="L645" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L646" class="lines-num"><span id="L646" data-line-number="646"></span></td>
<td rel="L646" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L647" class="lines-num"><span id="L647" data-line-number="647"></span></td>
<td rel="L647" class="lines-code chroma"><code class="code-inner"># Knowledge Configuration
</code></td>
</tr>
<tr>
<td id="L648" class="lines-num"><span id="L648" data-line-number="648"></span></td>
<td rel="L648" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L649" class="lines-num"><span id="L649" data-line-number="649"></span></td>
<td rel="L649" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L650" class="lines-num"><span id="L650" data-line-number="650"></span></td>
<td rel="L650" class="lines-code chroma"><code class="code-inner"># Upload file size limit, default 15M.
</code></td>
</tr>
<tr>
<td id="L651" class="lines-num"><span id="L651" data-line-number="651"></span></td>
<td rel="L651" class="lines-code chroma"><code class="code-inner">UPLOAD_FILE_SIZE_LIMIT=15
</code></td>
</tr>
<tr>
<td id="L652" class="lines-num"><span id="L652" data-line-number="652"></span></td>
<td rel="L652" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L653" class="lines-num"><span id="L653" data-line-number="653"></span></td>
<td rel="L653" class="lines-code chroma"><code class="code-inner"># The maximum number of files that can be uploaded at a time, default 5.
</code></td>
</tr>
<tr>
<td id="L654" class="lines-num"><span id="L654" data-line-number="654"></span></td>
<td rel="L654" class="lines-code chroma"><code class="code-inner">UPLOAD_FILE_BATCH_LIMIT=5
</code></td>
</tr>
<tr>
<td id="L655" class="lines-num"><span id="L655" data-line-number="655"></span></td>
<td rel="L655" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L656" class="lines-num"><span id="L656" data-line-number="656"></span></td>
<td rel="L656" class="lines-code chroma"><code class="code-inner"># ETL type, support: `dify`, `Unstructured`
</code></td>
</tr>
<tr>
<td id="L657" class="lines-num"><span id="L657" data-line-number="657"></span></td>
<td rel="L657" class="lines-code chroma"><code class="code-inner"># `dify` Dify&#39;s proprietary file extraction scheme
</code></td>
</tr>
<tr>
<td id="L658" class="lines-num"><span id="L658" data-line-number="658"></span></td>
<td rel="L658" class="lines-code chroma"><code class="code-inner"># `Unstructured` Unstructured.io file extraction scheme
</code></td>
</tr>
<tr>
<td id="L659" class="lines-num"><span id="L659" data-line-number="659"></span></td>
<td rel="L659" class="lines-code chroma"><code class="code-inner">ETL_TYPE=dify
</code></td>
</tr>
<tr>
<td id="L660" class="lines-num"><span id="L660" data-line-number="660"></span></td>
<td rel="L660" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L661" class="lines-num"><span id="L661" data-line-number="661"></span></td>
<td rel="L661" class="lines-code chroma"><code class="code-inner"># Unstructured API path and API key, needs to be configured when ETL_TYPE is Unstructured
</code></td>
</tr>
<tr>
<td id="L662" class="lines-num"><span id="L662" data-line-number="662"></span></td>
<td rel="L662" class="lines-code chroma"><code class="code-inner"># Or using Unstructured for document extractor node for pptx.
</code></td>
</tr>
<tr>
<td id="L663" class="lines-num"><span id="L663" data-line-number="663"></span></td>
<td rel="L663" class="lines-code chroma"><code class="code-inner"># For example: http://unstructured:8000/general/v0/general
</code></td>
</tr>
<tr>
<td id="L664" class="lines-num"><span id="L664" data-line-number="664"></span></td>
<td rel="L664" class="lines-code chroma"><code class="code-inner">UNSTRUCTURED_API_URL=
</code></td>
</tr>
<tr>
<td id="L665" class="lines-num"><span id="L665" data-line-number="665"></span></td>
<td rel="L665" class="lines-code chroma"><code class="code-inner">UNSTRUCTURED_API_KEY=
</code></td>
</tr>
<tr>
<td id="L666" class="lines-num"><span id="L666" data-line-number="666"></span></td>
<td rel="L666" class="lines-code chroma"><code class="code-inner">SCARF_NO_ANALYTICS=true
</code></td>
</tr>
<tr>
<td id="L667" class="lines-num"><span id="L667" data-line-number="667"></span></td>
<td rel="L667" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L668" class="lines-num"><span id="L668" data-line-number="668"></span></td>
<td rel="L668" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L669" class="lines-num"><span id="L669" data-line-number="669"></span></td>
<td rel="L669" class="lines-code chroma"><code class="code-inner"># Model Configuration
</code></td>
</tr>
<tr>
<td id="L670" class="lines-num"><span id="L670" data-line-number="670"></span></td>
<td rel="L670" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L671" class="lines-num"><span id="L671" data-line-number="671"></span></td>
<td rel="L671" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L672" class="lines-num"><span id="L672" data-line-number="672"></span></td>
<td rel="L672" class="lines-code chroma"><code class="code-inner"># The maximum number of tokens allowed for prompt generation.
</code></td>
</tr>
<tr>
<td id="L673" class="lines-num"><span id="L673" data-line-number="673"></span></td>
<td rel="L673" class="lines-code chroma"><code class="code-inner"># This setting controls the upper limit of tokens that can be used by the LLM
</code></td>
</tr>
<tr>
<td id="L674" class="lines-num"><span id="L674" data-line-number="674"></span></td>
<td rel="L674" class="lines-code chroma"><code class="code-inner"># when generating a prompt in the prompt generation tool.
</code></td>
</tr>
<tr>
<td id="L675" class="lines-num"><span id="L675" data-line-number="675"></span></td>
<td rel="L675" class="lines-code chroma"><code class="code-inner"># Default: 512 tokens.
</code></td>
</tr>
<tr>
<td id="L676" class="lines-num"><span id="L676" data-line-number="676"></span></td>
<td rel="L676" class="lines-code chroma"><code class="code-inner">PROMPT_GENERATION_MAX_TOKENS=512
</code></td>
</tr>
<tr>
<td id="L677" class="lines-num"><span id="L677" data-line-number="677"></span></td>
<td rel="L677" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L678" class="lines-num"><span id="L678" data-line-number="678"></span></td>
<td rel="L678" class="lines-code chroma"><code class="code-inner"># The maximum number of tokens allowed for code generation.
</code></td>
</tr>
<tr>
<td id="L679" class="lines-num"><span id="L679" data-line-number="679"></span></td>
<td rel="L679" class="lines-code chroma"><code class="code-inner"># This setting controls the upper limit of tokens that can be used by the LLM
</code></td>
</tr>
<tr>
<td id="L680" class="lines-num"><span id="L680" data-line-number="680"></span></td>
<td rel="L680" class="lines-code chroma"><code class="code-inner"># when generating code in the code generation tool.
</code></td>
</tr>
<tr>
<td id="L681" class="lines-num"><span id="L681" data-line-number="681"></span></td>
<td rel="L681" class="lines-code chroma"><code class="code-inner"># Default: 1024 tokens.
</code></td>
</tr>
<tr>
<td id="L682" class="lines-num"><span id="L682" data-line-number="682"></span></td>
<td rel="L682" class="lines-code chroma"><code class="code-inner">CODE_GENERATION_MAX_TOKENS=1024
</code></td>
</tr>
<tr>
<td id="L683" class="lines-num"><span id="L683" data-line-number="683"></span></td>
<td rel="L683" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L684" class="lines-num"><span id="L684" data-line-number="684"></span></td>
<td rel="L684" class="lines-code chroma"><code class="code-inner"># Enable or disable plugin based token counting. If disabled, token counting will return 0.
</code></td>
</tr>
<tr>
<td id="L685" class="lines-num"><span id="L685" data-line-number="685"></span></td>
<td rel="L685" class="lines-code chroma"><code class="code-inner"># This can improve performance by skipping token counting operations.
</code></td>
</tr>
<tr>
<td id="L686" class="lines-num"><span id="L686" data-line-number="686"></span></td>
<td rel="L686" class="lines-code chroma"><code class="code-inner"># Default: false (disabled).
</code></td>
</tr>
<tr>
<td id="L687" class="lines-num"><span id="L687" data-line-number="687"></span></td>
<td rel="L687" class="lines-code chroma"><code class="code-inner">PLUGIN_BASED_TOKEN_COUNTING_ENABLED=false
</code></td>
</tr>
<tr>
<td id="L688" class="lines-num"><span id="L688" data-line-number="688"></span></td>
<td rel="L688" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L689" class="lines-num"><span id="L689" data-line-number="689"></span></td>
<td rel="L689" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L690" class="lines-num"><span id="L690" data-line-number="690"></span></td>
<td rel="L690" class="lines-code chroma"><code class="code-inner"># Multi-modal Configuration
</code></td>
</tr>
<tr>
<td id="L691" class="lines-num"><span id="L691" data-line-number="691"></span></td>
<td rel="L691" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L692" class="lines-num"><span id="L692" data-line-number="692"></span></td>
<td rel="L692" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L693" class="lines-num"><span id="L693" data-line-number="693"></span></td>
<td rel="L693" class="lines-code chroma"><code class="code-inner"># The format of the image/video/audio/document sent when the multi-modal model is input,
</code></td>
</tr>
<tr>
<td id="L694" class="lines-num"><span id="L694" data-line-number="694"></span></td>
<td rel="L694" class="lines-code chroma"><code class="code-inner"># the default is base64, optional url.
</code></td>
</tr>
<tr>
<td id="L695" class="lines-num"><span id="L695" data-line-number="695"></span></td>
<td rel="L695" class="lines-code chroma"><code class="code-inner"># The delay of the call in url mode will be lower than that in base64 mode.
</code></td>
</tr>
<tr>
<td id="L696" class="lines-num"><span id="L696" data-line-number="696"></span></td>
<td rel="L696" class="lines-code chroma"><code class="code-inner"># It is generally recommended to use the more compatible base64 mode.
</code></td>
</tr>
<tr>
<td id="L697" class="lines-num"><span id="L697" data-line-number="697"></span></td>
<td rel="L697" class="lines-code chroma"><code class="code-inner"># If configured as url, you need to configure FILES_URL as an externally accessible address so that the multi-modal model can access the image/video/audio/document.
</code></td>
</tr>
<tr>
<td id="L698" class="lines-num"><span id="L698" data-line-number="698"></span></td>
<td rel="L698" class="lines-code chroma"><code class="code-inner">MULTIMODAL_SEND_FORMAT=base64
</code></td>
</tr>
<tr>
<td id="L699" class="lines-num"><span id="L699" data-line-number="699"></span></td>
<td rel="L699" class="lines-code chroma"><code class="code-inner"># Upload image file size limit, default 10M.
</code></td>
</tr>
<tr>
<td id="L700" class="lines-num"><span id="L700" data-line-number="700"></span></td>
<td rel="L700" class="lines-code chroma"><code class="code-inner">UPLOAD_IMAGE_FILE_SIZE_LIMIT=10
</code></td>
</tr>
<tr>
<td id="L701" class="lines-num"><span id="L701" data-line-number="701"></span></td>
<td rel="L701" class="lines-code chroma"><code class="code-inner"># Upload video file size limit, default 100M.
</code></td>
</tr>
<tr>
<td id="L702" class="lines-num"><span id="L702" data-line-number="702"></span></td>
<td rel="L702" class="lines-code chroma"><code class="code-inner">UPLOAD_VIDEO_FILE_SIZE_LIMIT=100
</code></td>
</tr>
<tr>
<td id="L703" class="lines-num"><span id="L703" data-line-number="703"></span></td>
<td rel="L703" class="lines-code chroma"><code class="code-inner"># Upload audio file size limit, default 50M.
</code></td>
</tr>
<tr>
<td id="L704" class="lines-num"><span id="L704" data-line-number="704"></span></td>
<td rel="L704" class="lines-code chroma"><code class="code-inner">UPLOAD_AUDIO_FILE_SIZE_LIMIT=50
</code></td>
</tr>
<tr>
<td id="L705" class="lines-num"><span id="L705" data-line-number="705"></span></td>
<td rel="L705" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L706" class="lines-num"><span id="L706" data-line-number="706"></span></td>
<td rel="L706" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L707" class="lines-num"><span id="L707" data-line-number="707"></span></td>
<td rel="L707" class="lines-code chroma"><code class="code-inner"># Sentry Configuration
</code></td>
</tr>
<tr>
<td id="L708" class="lines-num"><span id="L708" data-line-number="708"></span></td>
<td rel="L708" class="lines-code chroma"><code class="code-inner"># Used for application monitoring and error log tracking.
</code></td>
</tr>
<tr>
<td id="L709" class="lines-num"><span id="L709" data-line-number="709"></span></td>
<td rel="L709" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L710" class="lines-num"><span id="L710" data-line-number="710"></span></td>
<td rel="L710" class="lines-code chroma"><code class="code-inner">SENTRY_DSN=
</code></td>
</tr>
<tr>
<td id="L711" class="lines-num"><span id="L711" data-line-number="711"></span></td>
<td rel="L711" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L712" class="lines-num"><span id="L712" data-line-number="712"></span></td>
<td rel="L712" class="lines-code chroma"><code class="code-inner"># API Service Sentry DSN address, default is empty, when empty,
</code></td>
</tr>
<tr>
<td id="L713" class="lines-num"><span id="L713" data-line-number="713"></span></td>
<td rel="L713" class="lines-code chroma"><code class="code-inner"># all monitoring information is not reported to Sentry.
</code></td>
</tr>
<tr>
<td id="L714" class="lines-num"><span id="L714" data-line-number="714"></span></td>
<td rel="L714" class="lines-code chroma"><code class="code-inner"># If not set, Sentry error reporting will be disabled.
</code></td>
</tr>
<tr>
<td id="L715" class="lines-num"><span id="L715" data-line-number="715"></span></td>
<td rel="L715" class="lines-code chroma"><code class="code-inner">API_SENTRY_DSN=
</code></td>
</tr>
<tr>
<td id="L716" class="lines-num"><span id="L716" data-line-number="716"></span></td>
<td rel="L716" class="lines-code chroma"><code class="code-inner"># API Service The reporting ratio of Sentry events, if it is 0.01, it is 1%.
</code></td>
</tr>
<tr>
<td id="L717" class="lines-num"><span id="L717" data-line-number="717"></span></td>
<td rel="L717" class="lines-code chroma"><code class="code-inner">API_SENTRY_TRACES_SAMPLE_RATE=1.0
</code></td>
</tr>
<tr>
<td id="L718" class="lines-num"><span id="L718" data-line-number="718"></span></td>
<td rel="L718" class="lines-code chroma"><code class="code-inner"># API Service The reporting ratio of Sentry profiles, if it is 0.01, it is 1%.
</code></td>
</tr>
<tr>
<td id="L719" class="lines-num"><span id="L719" data-line-number="719"></span></td>
<td rel="L719" class="lines-code chroma"><code class="code-inner">API_SENTRY_PROFILES_SAMPLE_RATE=1.0
</code></td>
</tr>
<tr>
<td id="L720" class="lines-num"><span id="L720" data-line-number="720"></span></td>
<td rel="L720" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L721" class="lines-num"><span id="L721" data-line-number="721"></span></td>
<td rel="L721" class="lines-code chroma"><code class="code-inner"># Web Service Sentry DSN address, default is empty, when empty,
</code></td>
</tr>
<tr>
<td id="L722" class="lines-num"><span id="L722" data-line-number="722"></span></td>
<td rel="L722" class="lines-code chroma"><code class="code-inner"># all monitoring information is not reported to Sentry.
</code></td>
</tr>
<tr>
<td id="L723" class="lines-num"><span id="L723" data-line-number="723"></span></td>
<td rel="L723" class="lines-code chroma"><code class="code-inner"># If not set, Sentry error reporting will be disabled.
</code></td>
</tr>
<tr>
<td id="L724" class="lines-num"><span id="L724" data-line-number="724"></span></td>
<td rel="L724" class="lines-code chroma"><code class="code-inner">WEB_SENTRY_DSN=
</code></td>
</tr>
<tr>
<td id="L725" class="lines-num"><span id="L725" data-line-number="725"></span></td>
<td rel="L725" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L726" class="lines-num"><span id="L726" data-line-number="726"></span></td>
<td rel="L726" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L727" class="lines-num"><span id="L727" data-line-number="727"></span></td>
<td rel="L727" class="lines-code chroma"><code class="code-inner"># Notion Integration Configuration
</code></td>
</tr>
<tr>
<td id="L728" class="lines-num"><span id="L728" data-line-number="728"></span></td>
<td rel="L728" class="lines-code chroma"><code class="code-inner"># Variables can be obtained by applying for Notion integration: https://www.notion.so/my-integrations
</code></td>
</tr>
<tr>
<td id="L729" class="lines-num"><span id="L729" data-line-number="729"></span></td>
<td rel="L729" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L730" class="lines-num"><span id="L730" data-line-number="730"></span></td>
<td rel="L730" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L731" class="lines-num"><span id="L731" data-line-number="731"></span></td>
<td rel="L731" class="lines-code chroma"><code class="code-inner"># Configure as &#34;public&#34; or &#34;internal&#34;.
</code></td>
</tr>
<tr>
<td id="L732" class="lines-num"><span id="L732" data-line-number="732"></span></td>
<td rel="L732" class="lines-code chroma"><code class="code-inner"># Since Notion&#39;s OAuth redirect URL only supports HTTPS,
</code></td>
</tr>
<tr>
<td id="L733" class="lines-num"><span id="L733" data-line-number="733"></span></td>
<td rel="L733" class="lines-code chroma"><code class="code-inner"># if deploying locally, please use Notion&#39;s internal integration.
</code></td>
</tr>
<tr>
<td id="L734" class="lines-num"><span id="L734" data-line-number="734"></span></td>
<td rel="L734" class="lines-code chroma"><code class="code-inner">NOTION_INTEGRATION_TYPE=public
</code></td>
</tr>
<tr>
<td id="L735" class="lines-num"><span id="L735" data-line-number="735"></span></td>
<td rel="L735" class="lines-code chroma"><code class="code-inner"># Notion OAuth client secret (used for public integration type)
</code></td>
</tr>
<tr>
<td id="L736" class="lines-num"><span id="L736" data-line-number="736"></span></td>
<td rel="L736" class="lines-code chroma"><code class="code-inner">NOTION_CLIENT_SECRET=
</code></td>
</tr>
<tr>
<td id="L737" class="lines-num"><span id="L737" data-line-number="737"></span></td>
<td rel="L737" class="lines-code chroma"><code class="code-inner"># Notion OAuth client id (used for public integration type)
</code></td>
</tr>
<tr>
<td id="L738" class="lines-num"><span id="L738" data-line-number="738"></span></td>
<td rel="L738" class="lines-code chroma"><code class="code-inner">NOTION_CLIENT_ID=
</code></td>
</tr>
<tr>
<td id="L739" class="lines-num"><span id="L739" data-line-number="739"></span></td>
<td rel="L739" class="lines-code chroma"><code class="code-inner"># Notion internal integration secret.
</code></td>
</tr>
<tr>
<td id="L740" class="lines-num"><span id="L740" data-line-number="740"></span></td>
<td rel="L740" class="lines-code chroma"><code class="code-inner"># If the value of NOTION_INTEGRATION_TYPE is &#34;internal&#34;,
</code></td>
</tr>
<tr>
<td id="L741" class="lines-num"><span id="L741" data-line-number="741"></span></td>
<td rel="L741" class="lines-code chroma"><code class="code-inner"># you need to configure this variable.
</code></td>
</tr>
<tr>
<td id="L742" class="lines-num"><span id="L742" data-line-number="742"></span></td>
<td rel="L742" class="lines-code chroma"><code class="code-inner">NOTION_INTERNAL_SECRET=
</code></td>
</tr>
<tr>
<td id="L743" class="lines-num"><span id="L743" data-line-number="743"></span></td>
<td rel="L743" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L744" class="lines-num"><span id="L744" data-line-number="744"></span></td>
<td rel="L744" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L745" class="lines-num"><span id="L745" data-line-number="745"></span></td>
<td rel="L745" class="lines-code chroma"><code class="code-inner"># Mail related configuration
</code></td>
</tr>
<tr>
<td id="L746" class="lines-num"><span id="L746" data-line-number="746"></span></td>
<td rel="L746" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L747" class="lines-num"><span id="L747" data-line-number="747"></span></td>
<td rel="L747" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L748" class="lines-num"><span id="L748" data-line-number="748"></span></td>
<td rel="L748" class="lines-code chroma"><code class="code-inner"># Mail type, support: resend, smtp, sendgrid
</code></td>
</tr>
<tr>
<td id="L749" class="lines-num"><span id="L749" data-line-number="749"></span></td>
<td rel="L749" class="lines-code chroma"><code class="code-inner">MAIL_TYPE=resend
</code></td>
</tr>
<tr>
<td id="L750" class="lines-num"><span id="L750" data-line-number="750"></span></td>
<td rel="L750" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L751" class="lines-num"><span id="L751" data-line-number="751"></span></td>
<td rel="L751" class="lines-code chroma"><code class="code-inner"># Default send from email address, if not specified
</code></td>
</tr>
<tr>
<td id="L752" class="lines-num"><span id="L752" data-line-number="752"></span></td>
<td rel="L752" class="lines-code chroma"><code class="code-inner"># If using SendGrid, use the &#39;from&#39; field for authentication if necessary.
</code></td>
</tr>
<tr>
<td id="L753" class="lines-num"><span id="L753" data-line-number="753"></span></td>
<td rel="L753" class="lines-code chroma"><code class="code-inner">MAIL_DEFAULT_SEND_FROM=
</code></td>
</tr>
<tr>
<td id="L754" class="lines-num"><span id="L754" data-line-number="754"></span></td>
<td rel="L754" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L755" class="lines-num"><span id="L755" data-line-number="755"></span></td>
<td rel="L755" class="lines-code chroma"><code class="code-inner"># API-Key for the Resend email provider, used when MAIL_TYPE is `resend`.
</code></td>
</tr>
<tr>
<td id="L756" class="lines-num"><span id="L756" data-line-number="756"></span></td>
<td rel="L756" class="lines-code chroma"><code class="code-inner">RESEND_API_URL=https://api.resend.com
</code></td>
</tr>
<tr>
<td id="L757" class="lines-num"><span id="L757" data-line-number="757"></span></td>
<td rel="L757" class="lines-code chroma"><code class="code-inner">RESEND_API_KEY=your-resend-api-key
</code></td>
</tr>
<tr>
<td id="L758" class="lines-num"><span id="L758" data-line-number="758"></span></td>
<td rel="L758" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L759" class="lines-num"><span id="L759" data-line-number="759"></span></td>
<td rel="L759" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L760" class="lines-num"><span id="L760" data-line-number="760"></span></td>
<td rel="L760" class="lines-code chroma"><code class="code-inner"># SMTP server configuration, used when MAIL_TYPE is `smtp`
</code></td>
</tr>
<tr>
<td id="L761" class="lines-num"><span id="L761" data-line-number="761"></span></td>
<td rel="L761" class="lines-code chroma"><code class="code-inner">SMTP_SERVER=
</code></td>
</tr>
<tr>
<td id="L762" class="lines-num"><span id="L762" data-line-number="762"></span></td>
<td rel="L762" class="lines-code chroma"><code class="code-inner">SMTP_PORT=465
</code></td>
</tr>
<tr>
<td id="L763" class="lines-num"><span id="L763" data-line-number="763"></span></td>
<td rel="L763" class="lines-code chroma"><code class="code-inner">SMTP_USERNAME=
</code></td>
</tr>
<tr>
<td id="L764" class="lines-num"><span id="L764" data-line-number="764"></span></td>
<td rel="L764" class="lines-code chroma"><code class="code-inner">SMTP_PASSWORD=
</code></td>
</tr>
<tr>
<td id="L765" class="lines-num"><span id="L765" data-line-number="765"></span></td>
<td rel="L765" class="lines-code chroma"><code class="code-inner">SMTP_USE_TLS=true
</code></td>
</tr>
<tr>
<td id="L766" class="lines-num"><span id="L766" data-line-number="766"></span></td>
<td rel="L766" class="lines-code chroma"><code class="code-inner">SMTP_OPPORTUNISTIC_TLS=false
</code></td>
</tr>
<tr>
<td id="L767" class="lines-num"><span id="L767" data-line-number="767"></span></td>
<td rel="L767" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L768" class="lines-num"><span id="L768" data-line-number="768"></span></td>
<td rel="L768" class="lines-code chroma"><code class="code-inner"># Sendgid configuration
</code></td>
</tr>
<tr>
<td id="L769" class="lines-num"><span id="L769" data-line-number="769"></span></td>
<td rel="L769" class="lines-code chroma"><code class="code-inner">SENDGRID_API_KEY=
</code></td>
</tr>
<tr>
<td id="L770" class="lines-num"><span id="L770" data-line-number="770"></span></td>
<td rel="L770" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L771" class="lines-num"><span id="L771" data-line-number="771"></span></td>
<td rel="L771" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L772" class="lines-num"><span id="L772" data-line-number="772"></span></td>
<td rel="L772" class="lines-code chroma"><code class="code-inner"># Others Configuration
</code></td>
</tr>
<tr>
<td id="L773" class="lines-num"><span id="L773" data-line-number="773"></span></td>
<td rel="L773" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L774" class="lines-num"><span id="L774" data-line-number="774"></span></td>
<td rel="L774" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L775" class="lines-num"><span id="L775" data-line-number="775"></span></td>
<td rel="L775" class="lines-code chroma"><code class="code-inner"># Maximum length of segmentation tokens for indexing
</code></td>
</tr>
<tr>
<td id="L776" class="lines-num"><span id="L776" data-line-number="776"></span></td>
<td rel="L776" class="lines-code chroma"><code class="code-inner">INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH=4000
</code></td>
</tr>
<tr>
<td id="L777" class="lines-num"><span id="L777" data-line-number="777"></span></td>
<td rel="L777" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L778" class="lines-num"><span id="L778" data-line-number="778"></span></td>
<td rel="L778" class="lines-code chroma"><code class="code-inner"># Member invitation link valid time (hours),
</code></td>
</tr>
<tr>
<td id="L779" class="lines-num"><span id="L779" data-line-number="779"></span></td>
<td rel="L779" class="lines-code chroma"><code class="code-inner"># Default: 72.
</code></td>
</tr>
<tr>
<td id="L780" class="lines-num"><span id="L780" data-line-number="780"></span></td>
<td rel="L780" class="lines-code chroma"><code class="code-inner">INVITE_EXPIRY_HOURS=72
</code></td>
</tr>
<tr>
<td id="L781" class="lines-num"><span id="L781" data-line-number="781"></span></td>
<td rel="L781" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L782" class="lines-num"><span id="L782" data-line-number="782"></span></td>
<td rel="L782" class="lines-code chroma"><code class="code-inner"># Reset password token valid time (minutes),
</code></td>
</tr>
<tr>
<td id="L783" class="lines-num"><span id="L783" data-line-number="783"></span></td>
<td rel="L783" class="lines-code chroma"><code class="code-inner">RESET_PASSWORD_TOKEN_EXPIRY_MINUTES=5
</code></td>
</tr>
<tr>
<td id="L784" class="lines-num"><span id="L784" data-line-number="784"></span></td>
<td rel="L784" class="lines-code chroma"><code class="code-inner">CHANGE_EMAIL_TOKEN_EXPIRY_MINUTES=5
</code></td>
</tr>
<tr>
<td id="L785" class="lines-num"><span id="L785" data-line-number="785"></span></td>
<td rel="L785" class="lines-code chroma"><code class="code-inner">OWNER_TRANSFER_TOKEN_EXPIRY_MINUTES=5
</code></td>
</tr>
<tr>
<td id="L786" class="lines-num"><span id="L786" data-line-number="786"></span></td>
<td rel="L786" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L787" class="lines-num"><span id="L787" data-line-number="787"></span></td>
<td rel="L787" class="lines-code chroma"><code class="code-inner"># The sandbox service endpoint.
</code></td>
</tr>
<tr>
<td id="L788" class="lines-num"><span id="L788" data-line-number="788"></span></td>
<td rel="L788" class="lines-code chroma"><code class="code-inner">CODE_EXECUTION_ENDPOINT=http://sandbox:8194
</code></td>
</tr>
<tr>
<td id="L789" class="lines-num"><span id="L789" data-line-number="789"></span></td>
<td rel="L789" class="lines-code chroma"><code class="code-inner">CODE_EXECUTION_API_KEY=dify-sandbox
</code></td>
</tr>
<tr>
<td id="L790" class="lines-num"><span id="L790" data-line-number="790"></span></td>
<td rel="L790" class="lines-code chroma"><code class="code-inner">CODE_MAX_NUMBER=9223372036854775807
</code></td>
</tr>
<tr>
<td id="L791" class="lines-num"><span id="L791" data-line-number="791"></span></td>
<td rel="L791" class="lines-code chroma"><code class="code-inner">CODE_MIN_NUMBER=-9223372036854775808
</code></td>
</tr>
<tr>
<td id="L792" class="lines-num"><span id="L792" data-line-number="792"></span></td>
<td rel="L792" class="lines-code chroma"><code class="code-inner">CODE_MAX_DEPTH=5
</code></td>
</tr>
<tr>
<td id="L793" class="lines-num"><span id="L793" data-line-number="793"></span></td>
<td rel="L793" class="lines-code chroma"><code class="code-inner">CODE_MAX_PRECISION=20
</code></td>
</tr>
<tr>
<td id="L794" class="lines-num"><span id="L794" data-line-number="794"></span></td>
<td rel="L794" class="lines-code chroma"><code class="code-inner">CODE_MAX_STRING_LENGTH=80000
</code></td>
</tr>
<tr>
<td id="L795" class="lines-num"><span id="L795" data-line-number="795"></span></td>
<td rel="L795" class="lines-code chroma"><code class="code-inner">CODE_MAX_STRING_ARRAY_LENGTH=30
</code></td>
</tr>
<tr>
<td id="L796" class="lines-num"><span id="L796" data-line-number="796"></span></td>
<td rel="L796" class="lines-code chroma"><code class="code-inner">CODE_MAX_OBJECT_ARRAY_LENGTH=30
</code></td>
</tr>
<tr>
<td id="L797" class="lines-num"><span id="L797" data-line-number="797"></span></td>
<td rel="L797" class="lines-code chroma"><code class="code-inner">CODE_MAX_NUMBER_ARRAY_LENGTH=1000
</code></td>
</tr>
<tr>
<td id="L798" class="lines-num"><span id="L798" data-line-number="798"></span></td>
<td rel="L798" class="lines-code chroma"><code class="code-inner">CODE_EXECUTION_CONNECT_TIMEOUT=10
</code></td>
</tr>
<tr>
<td id="L799" class="lines-num"><span id="L799" data-line-number="799"></span></td>
<td rel="L799" class="lines-code chroma"><code class="code-inner">CODE_EXECUTION_READ_TIMEOUT=60
</code></td>
</tr>
<tr>
<td id="L800" class="lines-num"><span id="L800" data-line-number="800"></span></td>
<td rel="L800" class="lines-code chroma"><code class="code-inner">CODE_EXECUTION_WRITE_TIMEOUT=10
</code></td>
</tr>
<tr>
<td id="L801" class="lines-num"><span id="L801" data-line-number="801"></span></td>
<td rel="L801" class="lines-code chroma"><code class="code-inner">TEMPLATE_TRANSFORM_MAX_LENGTH=80000
</code></td>
</tr>
<tr>
<td id="L802" class="lines-num"><span id="L802" data-line-number="802"></span></td>
<td rel="L802" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L803" class="lines-num"><span id="L803" data-line-number="803"></span></td>
<td rel="L803" class="lines-code chroma"><code class="code-inner"># Workflow runtime configuration
</code></td>
</tr>
<tr>
<td id="L804" class="lines-num"><span id="L804" data-line-number="804"></span></td>
<td rel="L804" class="lines-code chroma"><code class="code-inner">WORKFLOW_MAX_EXECUTION_STEPS=500
</code></td>
</tr>
<tr>
<td id="L805" class="lines-num"><span id="L805" data-line-number="805"></span></td>
<td rel="L805" class="lines-code chroma"><code class="code-inner">WORKFLOW_MAX_EXECUTION_TIME=1200
</code></td>
</tr>
<tr>
<td id="L806" class="lines-num"><span id="L806" data-line-number="806"></span></td>
<td rel="L806" class="lines-code chroma"><code class="code-inner">WORKFLOW_CALL_MAX_DEPTH=5
</code></td>
</tr>
<tr>
<td id="L807" class="lines-num"><span id="L807" data-line-number="807"></span></td>
<td rel="L807" class="lines-code chroma"><code class="code-inner">MAX_VARIABLE_SIZE=204800
</code></td>
</tr>
<tr>
<td id="L808" class="lines-num"><span id="L808" data-line-number="808"></span></td>
<td rel="L808" class="lines-code chroma"><code class="code-inner">WORKFLOW_PARALLEL_DEPTH_LIMIT=3
</code></td>
</tr>
<tr>
<td id="L809" class="lines-num"><span id="L809" data-line-number="809"></span></td>
<td rel="L809" class="lines-code chroma"><code class="code-inner">WORKFLOW_FILE_UPLOAD_LIMIT=10
</code></td>
</tr>
<tr>
<td id="L810" class="lines-num"><span id="L810" data-line-number="810"></span></td>
<td rel="L810" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L811" class="lines-num"><span id="L811" data-line-number="811"></span></td>
<td rel="L811" class="lines-code chroma"><code class="code-inner"># Workflow storage configuration
</code></td>
</tr>
<tr>
<td id="L812" class="lines-num"><span id="L812" data-line-number="812"></span></td>
<td rel="L812" class="lines-code chroma"><code class="code-inner"># Options: rdbms, hybrid
</code></td>
</tr>
<tr>
<td id="L813" class="lines-num"><span id="L813" data-line-number="813"></span></td>
<td rel="L813" class="lines-code chroma"><code class="code-inner"># rdbms: Use only the relational database (default)
</code></td>
</tr>
<tr>
<td id="L814" class="lines-num"><span id="L814" data-line-number="814"></span></td>
<td rel="L814" class="lines-code chroma"><code class="code-inner"># hybrid: Save new data to object storage, read from both object storage and RDBMS
</code></td>
</tr>
<tr>
<td id="L815" class="lines-num"><span id="L815" data-line-number="815"></span></td>
<td rel="L815" class="lines-code chroma"><code class="code-inner">WORKFLOW_NODE_EXECUTION_STORAGE=rdbms
</code></td>
</tr>
<tr>
<td id="L816" class="lines-num"><span id="L816" data-line-number="816"></span></td>
<td rel="L816" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L817" class="lines-num"><span id="L817" data-line-number="817"></span></td>
<td rel="L817" class="lines-code chroma"><code class="code-inner"># Repository configuration
</code></td>
</tr>
<tr>
<td id="L818" class="lines-num"><span id="L818" data-line-number="818"></span></td>
<td rel="L818" class="lines-code chroma"><code class="code-inner"># Core workflow execution repository implementation
</code></td>
</tr>
<tr>
<td id="L819" class="lines-num"><span id="L819" data-line-number="819"></span></td>
<td rel="L819" class="lines-code chroma"><code class="code-inner">CORE_WORKFLOW_EXECUTION_REPOSITORY=core.repositories.sqlalchemy_workflow_execution_repository.SQLAlchemyWorkflowExecutionRepository
</code></td>
</tr>
<tr>
<td id="L820" class="lines-num"><span id="L820" data-line-number="820"></span></td>
<td rel="L820" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L821" class="lines-num"><span id="L821" data-line-number="821"></span></td>
<td rel="L821" class="lines-code chroma"><code class="code-inner"># Core workflow node execution repository implementation
</code></td>
</tr>
<tr>
<td id="L822" class="lines-num"><span id="L822" data-line-number="822"></span></td>
<td rel="L822" class="lines-code chroma"><code class="code-inner">CORE_WORKFLOW_NODE_EXECUTION_REPOSITORY=core.repositories.sqlalchemy_workflow_node_execution_repository.SQLAlchemyWorkflowNodeExecutionRepository
</code></td>
</tr>
<tr>
<td id="L823" class="lines-num"><span id="L823" data-line-number="823"></span></td>
<td rel="L823" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L824" class="lines-num"><span id="L824" data-line-number="824"></span></td>
<td rel="L824" class="lines-code chroma"><code class="code-inner"># API workflow node execution repository implementation
</code></td>
</tr>
<tr>
<td id="L825" class="lines-num"><span id="L825" data-line-number="825"></span></td>
<td rel="L825" class="lines-code chroma"><code class="code-inner">API_WORKFLOW_NODE_EXECUTION_REPOSITORY=repositories.sqlalchemy_api_workflow_node_execution_repository.DifyAPISQLAlchemyWorkflowNodeExecutionRepository
</code></td>
</tr>
<tr>
<td id="L826" class="lines-num"><span id="L826" data-line-number="826"></span></td>
<td rel="L826" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L827" class="lines-num"><span id="L827" data-line-number="827"></span></td>
<td rel="L827" class="lines-code chroma"><code class="code-inner"># API workflow run repository implementation
</code></td>
</tr>
<tr>
<td id="L828" class="lines-num"><span id="L828" data-line-number="828"></span></td>
<td rel="L828" class="lines-code chroma"><code class="code-inner">API_WORKFLOW_RUN_REPOSITORY=repositories.sqlalchemy_api_workflow_run_repository.DifyAPISQLAlchemyWorkflowRunRepository
</code></td>
</tr>
<tr>
<td id="L829" class="lines-num"><span id="L829" data-line-number="829"></span></td>
<td rel="L829" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L830" class="lines-num"><span id="L830" data-line-number="830"></span></td>
<td rel="L830" class="lines-code chroma"><code class="code-inner"># HTTP request node in workflow configuration
</code></td>
</tr>
<tr>
<td id="L831" class="lines-num"><span id="L831" data-line-number="831"></span></td>
<td rel="L831" class="lines-code chroma"><code class="code-inner">HTTP_REQUEST_NODE_MAX_BINARY_SIZE=10485760
</code></td>
</tr>
<tr>
<td id="L832" class="lines-num"><span id="L832" data-line-number="832"></span></td>
<td rel="L832" class="lines-code chroma"><code class="code-inner">HTTP_REQUEST_NODE_MAX_TEXT_SIZE=1048576
</code></td>
</tr>
<tr>
<td id="L833" class="lines-num"><span id="L833" data-line-number="833"></span></td>
<td rel="L833" class="lines-code chroma"><code class="code-inner">HTTP_REQUEST_NODE_SSL_VERIFY=True
</code></td>
</tr>
<tr>
<td id="L834" class="lines-num"><span id="L834" data-line-number="834"></span></td>
<td rel="L834" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L835" class="lines-num"><span id="L835" data-line-number="835"></span></td>
<td rel="L835" class="lines-code chroma"><code class="code-inner"># Respect X-* headers to redirect clients
</code></td>
</tr>
<tr>
<td id="L836" class="lines-num"><span id="L836" data-line-number="836"></span></td>
<td rel="L836" class="lines-code chroma"><code class="code-inner">RESPECT_XFORWARD_HEADERS_ENABLED=false
</code></td>
</tr>
<tr>
<td id="L837" class="lines-num"><span id="L837" data-line-number="837"></span></td>
<td rel="L837" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L838" class="lines-num"><span id="L838" data-line-number="838"></span></td>
<td rel="L838" class="lines-code chroma"><code class="code-inner"># SSRF Proxy server HTTP URL
</code></td>
</tr>
<tr>
<td id="L839" class="lines-num"><span id="L839" data-line-number="839"></span></td>
<td rel="L839" class="lines-code chroma"><code class="code-inner">SSRF_PROXY_HTTP_URL=http://ssrf_proxy:3128
</code></td>
</tr>
<tr>
<td id="L840" class="lines-num"><span id="L840" data-line-number="840"></span></td>
<td rel="L840" class="lines-code chroma"><code class="code-inner"># SSRF Proxy server HTTPS URL
</code></td>
</tr>
<tr>
<td id="L841" class="lines-num"><span id="L841" data-line-number="841"></span></td>
<td rel="L841" class="lines-code chroma"><code class="code-inner">SSRF_PROXY_HTTPS_URL=http://ssrf_proxy:3128
</code></td>
</tr>
<tr>
<td id="L842" class="lines-num"><span id="L842" data-line-number="842"></span></td>
<td rel="L842" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L843" class="lines-num"><span id="L843" data-line-number="843"></span></td>
<td rel="L843" class="lines-code chroma"><code class="code-inner"># Maximum loop count in the workflow
</code></td>
</tr>
<tr>
<td id="L844" class="lines-num"><span id="L844" data-line-number="844"></span></td>
<td rel="L844" class="lines-code chroma"><code class="code-inner">LOOP_NODE_MAX_COUNT=100
</code></td>
</tr>
<tr>
<td id="L845" class="lines-num"><span id="L845" data-line-number="845"></span></td>
<td rel="L845" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L846" class="lines-num"><span id="L846" data-line-number="846"></span></td>
<td rel="L846" class="lines-code chroma"><code class="code-inner"># The maximum number of tools that can be used in the agent.
</code></td>
</tr>
<tr>
<td id="L847" class="lines-num"><span id="L847" data-line-number="847"></span></td>
<td rel="L847" class="lines-code chroma"><code class="code-inner">MAX_TOOLS_NUM=10
</code></td>
</tr>
<tr>
<td id="L848" class="lines-num"><span id="L848" data-line-number="848"></span></td>
<td rel="L848" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L849" class="lines-num"><span id="L849" data-line-number="849"></span></td>
<td rel="L849" class="lines-code chroma"><code class="code-inner"># Maximum number of Parallelism branches in the workflow
</code></td>
</tr>
<tr>
<td id="L850" class="lines-num"><span id="L850" data-line-number="850"></span></td>
<td rel="L850" class="lines-code chroma"><code class="code-inner">MAX_PARALLEL_LIMIT=10
</code></td>
</tr>
<tr>
<td id="L851" class="lines-num"><span id="L851" data-line-number="851"></span></td>
<td rel="L851" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L852" class="lines-num"><span id="L852" data-line-number="852"></span></td>
<td rel="L852" class="lines-code chroma"><code class="code-inner"># The maximum number of iterations for agent setting
</code></td>
</tr>
<tr>
<td id="L853" class="lines-num"><span id="L853" data-line-number="853"></span></td>
<td rel="L853" class="lines-code chroma"><code class="code-inner">MAX_ITERATIONS_NUM=99
</code></td>
</tr>
<tr>
<td id="L854" class="lines-num"><span id="L854" data-line-number="854"></span></td>
<td rel="L854" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L855" class="lines-num"><span id="L855" data-line-number="855"></span></td>
<td rel="L855" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L856" class="lines-num"><span id="L856" data-line-number="856"></span></td>
<td rel="L856" class="lines-code chroma"><code class="code-inner"># Environment Variables for web Service
</code></td>
</tr>
<tr>
<td id="L857" class="lines-num"><span id="L857" data-line-number="857"></span></td>
<td rel="L857" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L858" class="lines-num"><span id="L858" data-line-number="858"></span></td>
<td rel="L858" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L859" class="lines-num"><span id="L859" data-line-number="859"></span></td>
<td rel="L859" class="lines-code chroma"><code class="code-inner"># The timeout for the text generation in millisecond
</code></td>
</tr>
<tr>
<td id="L860" class="lines-num"><span id="L860" data-line-number="860"></span></td>
<td rel="L860" class="lines-code chroma"><code class="code-inner">TEXT_GENERATION_TIMEOUT_MS=60000
</code></td>
</tr>
<tr>
<td id="L861" class="lines-num"><span id="L861" data-line-number="861"></span></td>
<td rel="L861" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L862" class="lines-num"><span id="L862" data-line-number="862"></span></td>
<td rel="L862" class="lines-code chroma"><code class="code-inner"># Allow rendering unsafe URLs which have &#34;data:&#34; scheme.
</code></td>
</tr>
<tr>
<td id="L863" class="lines-num"><span id="L863" data-line-number="863"></span></td>
<td rel="L863" class="lines-code chroma"><code class="code-inner">ALLOW_UNSAFE_DATA_SCHEME=false
</code></td>
</tr>
<tr>
<td id="L864" class="lines-num"><span id="L864" data-line-number="864"></span></td>
<td rel="L864" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L865" class="lines-num"><span id="L865" data-line-number="865"></span></td>
<td rel="L865" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L866" class="lines-num"><span id="L866" data-line-number="866"></span></td>
<td rel="L866" class="lines-code chroma"><code class="code-inner"># Environment Variables for db Service
</code></td>
</tr>
<tr>
<td id="L867" class="lines-num"><span id="L867" data-line-number="867"></span></td>
<td rel="L867" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L868" class="lines-num"><span id="L868" data-line-number="868"></span></td>
<td rel="L868" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L869" class="lines-num"><span id="L869" data-line-number="869"></span></td>
<td rel="L869" class="lines-code chroma"><code class="code-inner"># The name of the default postgres user.
</code></td>
</tr>
<tr>
<td id="L870" class="lines-num"><span id="L870" data-line-number="870"></span></td>
<td rel="L870" class="lines-code chroma"><code class="code-inner">POSTGRES_USER=${DB_USERNAME}
</code></td>
</tr>
<tr>
<td id="L871" class="lines-num"><span id="L871" data-line-number="871"></span></td>
<td rel="L871" class="lines-code chroma"><code class="code-inner"># The password for the default postgres user.
</code></td>
</tr>
<tr>
<td id="L872" class="lines-num"><span id="L872" data-line-number="872"></span></td>
<td rel="L872" class="lines-code chroma"><code class="code-inner">POSTGRES_PASSWORD=${DB_PASSWORD}
</code></td>
</tr>
<tr>
<td id="L873" class="lines-num"><span id="L873" data-line-number="873"></span></td>
<td rel="L873" class="lines-code chroma"><code class="code-inner"># The name of the default postgres database.
</code></td>
</tr>
<tr>
<td id="L874" class="lines-num"><span id="L874" data-line-number="874"></span></td>
<td rel="L874" class="lines-code chroma"><code class="code-inner">POSTGRES_DB=${DB_DATABASE}
</code></td>
</tr>
<tr>
<td id="L875" class="lines-num"><span id="L875" data-line-number="875"></span></td>
<td rel="L875" class="lines-code chroma"><code class="code-inner"># postgres data directory
</code></td>
</tr>
<tr>
<td id="L876" class="lines-num"><span id="L876" data-line-number="876"></span></td>
<td rel="L876" class="lines-code chroma"><code class="code-inner">PGDATA=/var/lib/postgresql/data/pgdata
</code></td>
</tr>
<tr>
<td id="L877" class="lines-num"><span id="L877" data-line-number="877"></span></td>
<td rel="L877" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L878" class="lines-num"><span id="L878" data-line-number="878"></span></td>
<td rel="L878" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L879" class="lines-num"><span id="L879" data-line-number="879"></span></td>
<td rel="L879" class="lines-code chroma"><code class="code-inner"># Environment Variables for sandbox Service
</code></td>
</tr>
<tr>
<td id="L880" class="lines-num"><span id="L880" data-line-number="880"></span></td>
<td rel="L880" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L881" class="lines-num"><span id="L881" data-line-number="881"></span></td>
<td rel="L881" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L882" class="lines-num"><span id="L882" data-line-number="882"></span></td>
<td rel="L882" class="lines-code chroma"><code class="code-inner"># The API key for the sandbox service
</code></td>
</tr>
<tr>
<td id="L883" class="lines-num"><span id="L883" data-line-number="883"></span></td>
<td rel="L883" class="lines-code chroma"><code class="code-inner">SANDBOX_API_KEY=dify-sandbox
</code></td>
</tr>
<tr>
<td id="L884" class="lines-num"><span id="L884" data-line-number="884"></span></td>
<td rel="L884" class="lines-code chroma"><code class="code-inner"># The mode in which the Gin framework runs
</code></td>
</tr>
<tr>
<td id="L885" class="lines-num"><span id="L885" data-line-number="885"></span></td>
<td rel="L885" class="lines-code chroma"><code class="code-inner">SANDBOX_GIN_MODE=release
</code></td>
</tr>
<tr>
<td id="L886" class="lines-num"><span id="L886" data-line-number="886"></span></td>
<td rel="L886" class="lines-code chroma"><code class="code-inner"># The timeout for the worker in seconds
</code></td>
</tr>
<tr>
<td id="L887" class="lines-num"><span id="L887" data-line-number="887"></span></td>
<td rel="L887" class="lines-code chroma"><code class="code-inner">SANDBOX_WORKER_TIMEOUT=15
</code></td>
</tr>
<tr>
<td id="L888" class="lines-num"><span id="L888" data-line-number="888"></span></td>
<td rel="L888" class="lines-code chroma"><code class="code-inner"># Enable network for the sandbox service
</code></td>
</tr>
<tr>
<td id="L889" class="lines-num"><span id="L889" data-line-number="889"></span></td>
<td rel="L889" class="lines-code chroma"><code class="code-inner">SANDBOX_ENABLE_NETWORK=true
</code></td>
</tr>
<tr>
<td id="L890" class="lines-num"><span id="L890" data-line-number="890"></span></td>
<td rel="L890" class="lines-code chroma"><code class="code-inner"># HTTP proxy URL for SSRF protection
</code></td>
</tr>
<tr>
<td id="L891" class="lines-num"><span id="L891" data-line-number="891"></span></td>
<td rel="L891" class="lines-code chroma"><code class="code-inner">SANDBOX_HTTP_PROXY=http://ssrf_proxy:3128
</code></td>
</tr>
<tr>
<td id="L892" class="lines-num"><span id="L892" data-line-number="892"></span></td>
<td rel="L892" class="lines-code chroma"><code class="code-inner"># HTTPS proxy URL for SSRF protection
</code></td>
</tr>
<tr>
<td id="L893" class="lines-num"><span id="L893" data-line-number="893"></span></td>
<td rel="L893" class="lines-code chroma"><code class="code-inner">SANDBOX_HTTPS_PROXY=http://ssrf_proxy:3128
</code></td>
</tr>
<tr>
<td id="L894" class="lines-num"><span id="L894" data-line-number="894"></span></td>
<td rel="L894" class="lines-code chroma"><code class="code-inner"># The port on which the sandbox service runs
</code></td>
</tr>
<tr>
<td id="L895" class="lines-num"><span id="L895" data-line-number="895"></span></td>
<td rel="L895" class="lines-code chroma"><code class="code-inner">SANDBOX_PORT=8194
</code></td>
</tr>
<tr>
<td id="L896" class="lines-num"><span id="L896" data-line-number="896"></span></td>
<td rel="L896" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L897" class="lines-num"><span id="L897" data-line-number="897"></span></td>
<td rel="L897" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L898" class="lines-num"><span id="L898" data-line-number="898"></span></td>
<td rel="L898" class="lines-code chroma"><code class="code-inner"># Environment Variables for weaviate Service
</code></td>
</tr>
<tr>
<td id="L899" class="lines-num"><span id="L899" data-line-number="899"></span></td>
<td rel="L899" class="lines-code chroma"><code class="code-inner"># (only used when VECTOR_STORE is weaviate)
</code></td>
</tr>
<tr>
<td id="L900" class="lines-num"><span id="L900" data-line-number="900"></span></td>
<td rel="L900" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L901" class="lines-num"><span id="L901" data-line-number="901"></span></td>
<td rel="L901" class="lines-code chroma"><code class="code-inner">WEAVIATE_PERSISTENCE_DATA_PATH=/var/lib/weaviate
</code></td>
</tr>
<tr>
<td id="L902" class="lines-num"><span id="L902" data-line-number="902"></span></td>
<td rel="L902" class="lines-code chroma"><code class="code-inner">WEAVIATE_QUERY_DEFAULTS_LIMIT=25
</code></td>
</tr>
<tr>
<td id="L903" class="lines-num"><span id="L903" data-line-number="903"></span></td>
<td rel="L903" class="lines-code chroma"><code class="code-inner">WEAVIATE_AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED=true
</code></td>
</tr>
<tr>
<td id="L904" class="lines-num"><span id="L904" data-line-number="904"></span></td>
<td rel="L904" class="lines-code chroma"><code class="code-inner">WEAVIATE_DEFAULT_VECTORIZER_MODULE=none
</code></td>
</tr>
<tr>
<td id="L905" class="lines-num"><span id="L905" data-line-number="905"></span></td>
<td rel="L905" class="lines-code chroma"><code class="code-inner">WEAVIATE_CLUSTER_HOSTNAME=node1
</code></td>
</tr>
<tr>
<td id="L906" class="lines-num"><span id="L906" data-line-number="906"></span></td>
<td rel="L906" class="lines-code chroma"><code class="code-inner">WEAVIATE_AUTHENTICATION_APIKEY_ENABLED=true
</code></td>
</tr>
<tr>
<td id="L907" class="lines-num"><span id="L907" data-line-number="907"></span></td>
<td rel="L907" class="lines-code chroma"><code class="code-inner">WEAVIATE_AUTHENTICATION_APIKEY_ALLOWED_KEYS=WVF5YThaHlkYwhGUSmCRgsX3tD5ngdN8pkih
</code></td>
</tr>
<tr>
<td id="L908" class="lines-num"><span id="L908" data-line-number="908"></span></td>
<td rel="L908" class="lines-code chroma"><code class="code-inner">WEAVIATE_AUTHENTICATION_APIKEY_USERS=hello@dify.ai
</code></td>
</tr>
<tr>
<td id="L909" class="lines-num"><span id="L909" data-line-number="909"></span></td>
<td rel="L909" class="lines-code chroma"><code class="code-inner">WEAVIATE_AUTHORIZATION_ADMINLIST_ENABLED=true
</code></td>
</tr>
<tr>
<td id="L910" class="lines-num"><span id="L910" data-line-number="910"></span></td>
<td rel="L910" class="lines-code chroma"><code class="code-inner">WEAVIATE_AUTHORIZATION_ADMINLIST_USERS=hello@dify.ai
</code></td>
</tr>
<tr>
<td id="L911" class="lines-num"><span id="L911" data-line-number="911"></span></td>
<td rel="L911" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L912" class="lines-num"><span id="L912" data-line-number="912"></span></td>
<td rel="L912" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L913" class="lines-num"><span id="L913" data-line-number="913"></span></td>
<td rel="L913" class="lines-code chroma"><code class="code-inner"># Environment Variables for Chroma
</code></td>
</tr>
<tr>
<td id="L914" class="lines-num"><span id="L914" data-line-number="914"></span></td>
<td rel="L914" class="lines-code chroma"><code class="code-inner"># (only used when VECTOR_STORE is chroma)
</code></td>
</tr>
<tr>
<td id="L915" class="lines-num"><span id="L915" data-line-number="915"></span></td>
<td rel="L915" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L916" class="lines-num"><span id="L916" data-line-number="916"></span></td>
<td rel="L916" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L917" class="lines-num"><span id="L917" data-line-number="917"></span></td>
<td rel="L917" class="lines-code chroma"><code class="code-inner"># Authentication credentials for Chroma server
</code></td>
</tr>
<tr>
<td id="L918" class="lines-num"><span id="L918" data-line-number="918"></span></td>
<td rel="L918" class="lines-code chroma"><code class="code-inner">CHROMA_SERVER_AUTHN_CREDENTIALS=difyai123456
</code></td>
</tr>
<tr>
<td id="L919" class="lines-num"><span id="L919" data-line-number="919"></span></td>
<td rel="L919" class="lines-code chroma"><code class="code-inner"># Authentication provider for Chroma server
</code></td>
</tr>
<tr>
<td id="L920" class="lines-num"><span id="L920" data-line-number="920"></span></td>
<td rel="L920" class="lines-code chroma"><code class="code-inner">CHROMA_SERVER_AUTHN_PROVIDER=chromadb.auth.token_authn.TokenAuthenticationServerProvider
</code></td>
</tr>
<tr>
<td id="L921" class="lines-num"><span id="L921" data-line-number="921"></span></td>
<td rel="L921" class="lines-code chroma"><code class="code-inner"># Persistence setting for Chroma server
</code></td>
</tr>
<tr>
<td id="L922" class="lines-num"><span id="L922" data-line-number="922"></span></td>
<td rel="L922" class="lines-code chroma"><code class="code-inner">CHROMA_IS_PERSISTENT=TRUE
</code></td>
</tr>
<tr>
<td id="L923" class="lines-num"><span id="L923" data-line-number="923"></span></td>
<td rel="L923" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L924" class="lines-num"><span id="L924" data-line-number="924"></span></td>
<td rel="L924" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L925" class="lines-num"><span id="L925" data-line-number="925"></span></td>
<td rel="L925" class="lines-code chroma"><code class="code-inner"># Environment Variables for Oracle Service
</code></td>
</tr>
<tr>
<td id="L926" class="lines-num"><span id="L926" data-line-number="926"></span></td>
<td rel="L926" class="lines-code chroma"><code class="code-inner"># (only used when VECTOR_STORE is oracle)
</code></td>
</tr>
<tr>
<td id="L927" class="lines-num"><span id="L927" data-line-number="927"></span></td>
<td rel="L927" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L928" class="lines-num"><span id="L928" data-line-number="928"></span></td>
<td rel="L928" class="lines-code chroma"><code class="code-inner">ORACLE_PWD=Dify123456
</code></td>
</tr>
<tr>
<td id="L929" class="lines-num"><span id="L929" data-line-number="929"></span></td>
<td rel="L929" class="lines-code chroma"><code class="code-inner">ORACLE_CHARACTERSET=AL32UTF8
</code></td>
</tr>
<tr>
<td id="L930" class="lines-num"><span id="L930" data-line-number="930"></span></td>
<td rel="L930" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L931" class="lines-num"><span id="L931" data-line-number="931"></span></td>
<td rel="L931" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L932" class="lines-num"><span id="L932" data-line-number="932"></span></td>
<td rel="L932" class="lines-code chroma"><code class="code-inner"># Environment Variables for milvus Service
</code></td>
</tr>
<tr>
<td id="L933" class="lines-num"><span id="L933" data-line-number="933"></span></td>
<td rel="L933" class="lines-code chroma"><code class="code-inner"># (only used when VECTOR_STORE is milvus)
</code></td>
</tr>
<tr>
<td id="L934" class="lines-num"><span id="L934" data-line-number="934"></span></td>
<td rel="L934" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L935" class="lines-num"><span id="L935" data-line-number="935"></span></td>
<td rel="L935" class="lines-code chroma"><code class="code-inner"># ETCD configuration for auto compaction mode
</code></td>
</tr>
<tr>
<td id="L936" class="lines-num"><span id="L936" data-line-number="936"></span></td>
<td rel="L936" class="lines-code chroma"><code class="code-inner">ETCD_AUTO_COMPACTION_MODE=revision
</code></td>
</tr>
<tr>
<td id="L937" class="lines-num"><span id="L937" data-line-number="937"></span></td>
<td rel="L937" class="lines-code chroma"><code class="code-inner"># ETCD configuration for auto compaction retention in terms of number of revisions
</code></td>
</tr>
<tr>
<td id="L938" class="lines-num"><span id="L938" data-line-number="938"></span></td>
<td rel="L938" class="lines-code chroma"><code class="code-inner">ETCD_AUTO_COMPACTION_RETENTION=1000
</code></td>
</tr>
<tr>
<td id="L939" class="lines-num"><span id="L939" data-line-number="939"></span></td>
<td rel="L939" class="lines-code chroma"><code class="code-inner"># ETCD configuration for backend quota in bytes
</code></td>
</tr>
<tr>
<td id="L940" class="lines-num"><span id="L940" data-line-number="940"></span></td>
<td rel="L940" class="lines-code chroma"><code class="code-inner">ETCD_QUOTA_BACKEND_BYTES=4294967296
</code></td>
</tr>
<tr>
<td id="L941" class="lines-num"><span id="L941" data-line-number="941"></span></td>
<td rel="L941" class="lines-code chroma"><code class="code-inner"># ETCD configuration for the number of changes before triggering a snapshot
</code></td>
</tr>
<tr>
<td id="L942" class="lines-num"><span id="L942" data-line-number="942"></span></td>
<td rel="L942" class="lines-code chroma"><code class="code-inner">ETCD_SNAPSHOT_COUNT=50000
</code></td>
</tr>
<tr>
<td id="L943" class="lines-num"><span id="L943" data-line-number="943"></span></td>
<td rel="L943" class="lines-code chroma"><code class="code-inner"># MinIO access key for authentication
</code></td>
</tr>
<tr>
<td id="L944" class="lines-num"><span id="L944" data-line-number="944"></span></td>
<td rel="L944" class="lines-code chroma"><code class="code-inner">MINIO_ACCESS_KEY=minioadmin
</code></td>
</tr>
<tr>
<td id="L945" class="lines-num"><span id="L945" data-line-number="945"></span></td>
<td rel="L945" class="lines-code chroma"><code class="code-inner"># MinIO secret key for authentication
</code></td>
</tr>
<tr>
<td id="L946" class="lines-num"><span id="L946" data-line-number="946"></span></td>
<td rel="L946" class="lines-code chroma"><code class="code-inner">MINIO_SECRET_KEY=minioadmin
</code></td>
</tr>
<tr>
<td id="L947" class="lines-num"><span id="L947" data-line-number="947"></span></td>
<td rel="L947" class="lines-code chroma"><code class="code-inner"># ETCD service endpoints
</code></td>
</tr>
<tr>
<td id="L948" class="lines-num"><span id="L948" data-line-number="948"></span></td>
<td rel="L948" class="lines-code chroma"><code class="code-inner">ETCD_ENDPOINTS=etcd:2379
</code></td>
</tr>
<tr>
<td id="L949" class="lines-num"><span id="L949" data-line-number="949"></span></td>
<td rel="L949" class="lines-code chroma"><code class="code-inner"># MinIO service address
</code></td>
</tr>
<tr>
<td id="L950" class="lines-num"><span id="L950" data-line-number="950"></span></td>
<td rel="L950" class="lines-code chroma"><code class="code-inner">MINIO_ADDRESS=minio:9000
</code></td>
</tr>
<tr>
<td id="L951" class="lines-num"><span id="L951" data-line-number="951"></span></td>
<td rel="L951" class="lines-code chroma"><code class="code-inner"># Enable or disable security authorization
</code></td>
</tr>
<tr>
<td id="L952" class="lines-num"><span id="L952" data-line-number="952"></span></td>
<td rel="L952" class="lines-code chroma"><code class="code-inner">MILVUS_AUTHORIZATION_ENABLED=true
</code></td>
</tr>
<tr>
<td id="L953" class="lines-num"><span id="L953" data-line-number="953"></span></td>
<td rel="L953" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L954" class="lines-num"><span id="L954" data-line-number="954"></span></td>
<td rel="L954" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L955" class="lines-num"><span id="L955" data-line-number="955"></span></td>
<td rel="L955" class="lines-code chroma"><code class="code-inner"># Environment Variables for pgvector / pgvector-rs Service
</code></td>
</tr>
<tr>
<td id="L956" class="lines-num"><span id="L956" data-line-number="956"></span></td>
<td rel="L956" class="lines-code chroma"><code class="code-inner"># (only used when VECTOR_STORE is pgvector / pgvector-rs)
</code></td>
</tr>
<tr>
<td id="L957" class="lines-num"><span id="L957" data-line-number="957"></span></td>
<td rel="L957" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L958" class="lines-num"><span id="L958" data-line-number="958"></span></td>
<td rel="L958" class="lines-code chroma"><code class="code-inner">PGVECTOR_PGUSER=postgres
</code></td>
</tr>
<tr>
<td id="L959" class="lines-num"><span id="L959" data-line-number="959"></span></td>
<td rel="L959" class="lines-code chroma"><code class="code-inner"># The password for the default postgres user.
</code></td>
</tr>
<tr>
<td id="L960" class="lines-num"><span id="L960" data-line-number="960"></span></td>
<td rel="L960" class="lines-code chroma"><code class="code-inner">PGVECTOR_POSTGRES_PASSWORD=difyai123456
</code></td>
</tr>
<tr>
<td id="L961" class="lines-num"><span id="L961" data-line-number="961"></span></td>
<td rel="L961" class="lines-code chroma"><code class="code-inner"># The name of the default postgres database.
</code></td>
</tr>
<tr>
<td id="L962" class="lines-num"><span id="L962" data-line-number="962"></span></td>
<td rel="L962" class="lines-code chroma"><code class="code-inner">PGVECTOR_POSTGRES_DB=dify
</code></td>
</tr>
<tr>
<td id="L963" class="lines-num"><span id="L963" data-line-number="963"></span></td>
<td rel="L963" class="lines-code chroma"><code class="code-inner"># postgres data directory
</code></td>
</tr>
<tr>
<td id="L964" class="lines-num"><span id="L964" data-line-number="964"></span></td>
<td rel="L964" class="lines-code chroma"><code class="code-inner">PGVECTOR_PGDATA=/var/lib/postgresql/data/pgdata
</code></td>
</tr>
<tr>
<td id="L965" class="lines-num"><span id="L965" data-line-number="965"></span></td>
<td rel="L965" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L966" class="lines-num"><span id="L966" data-line-number="966"></span></td>
<td rel="L966" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L967" class="lines-num"><span id="L967" data-line-number="967"></span></td>
<td rel="L967" class="lines-code chroma"><code class="code-inner"># Environment Variables for opensearch
</code></td>
</tr>
<tr>
<td id="L968" class="lines-num"><span id="L968" data-line-number="968"></span></td>
<td rel="L968" class="lines-code chroma"><code class="code-inner"># (only used when VECTOR_STORE is opensearch)
</code></td>
</tr>
<tr>
<td id="L969" class="lines-num"><span id="L969" data-line-number="969"></span></td>
<td rel="L969" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L970" class="lines-num"><span id="L970" data-line-number="970"></span></td>
<td rel="L970" class="lines-code chroma"><code class="code-inner">OPENSEARCH_DISCOVERY_TYPE=single-node
</code></td>
</tr>
<tr>
<td id="L971" class="lines-num"><span id="L971" data-line-number="971"></span></td>
<td rel="L971" class="lines-code chroma"><code class="code-inner">OPENSEARCH_BOOTSTRAP_MEMORY_LOCK=true
</code></td>
</tr>
<tr>
<td id="L972" class="lines-num"><span id="L972" data-line-number="972"></span></td>
<td rel="L972" class="lines-code chroma"><code class="code-inner">OPENSEARCH_JAVA_OPTS_MIN=512m
</code></td>
</tr>
<tr>
<td id="L973" class="lines-num"><span id="L973" data-line-number="973"></span></td>
<td rel="L973" class="lines-code chroma"><code class="code-inner">OPENSEARCH_JAVA_OPTS_MAX=1024m
</code></td>
</tr>
<tr>
<td id="L974" class="lines-num"><span id="L974" data-line-number="974"></span></td>
<td rel="L974" class="lines-code chroma"><code class="code-inner">OPENSEARCH_INITIAL_ADMIN_PASSWORD=Qazwsxedc!@#123
</code></td>
</tr>
<tr>
<td id="L975" class="lines-num"><span id="L975" data-line-number="975"></span></td>
<td rel="L975" class="lines-code chroma"><code class="code-inner">OPENSEARCH_MEMLOCK_SOFT=-1
</code></td>
</tr>
<tr>
<td id="L976" class="lines-num"><span id="L976" data-line-number="976"></span></td>
<td rel="L976" class="lines-code chroma"><code class="code-inner">OPENSEARCH_MEMLOCK_HARD=-1
</code></td>
</tr>
<tr>
<td id="L977" class="lines-num"><span id="L977" data-line-number="977"></span></td>
<td rel="L977" class="lines-code chroma"><code class="code-inner">OPENSEARCH_NOFILE_SOFT=65536
</code></td>
</tr>
<tr>
<td id="L978" class="lines-num"><span id="L978" data-line-number="978"></span></td>
<td rel="L978" class="lines-code chroma"><code class="code-inner">OPENSEARCH_NOFILE_HARD=65536
</code></td>
</tr>
<tr>
<td id="L979" class="lines-num"><span id="L979" data-line-number="979"></span></td>
<td rel="L979" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L980" class="lines-num"><span id="L980" data-line-number="980"></span></td>
<td rel="L980" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L981" class="lines-num"><span id="L981" data-line-number="981"></span></td>
<td rel="L981" class="lines-code chroma"><code class="code-inner"># Environment Variables for Nginx reverse proxy
</code></td>
</tr>
<tr>
<td id="L982" class="lines-num"><span id="L982" data-line-number="982"></span></td>
<td rel="L982" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L983" class="lines-num"><span id="L983" data-line-number="983"></span></td>
<td rel="L983" class="lines-code chroma"><code class="code-inner">NGINX_SERVER_NAME=_
</code></td>
</tr>
<tr>
<td id="L984" class="lines-num"><span id="L984" data-line-number="984"></span></td>
<td rel="L984" class="lines-code chroma"><code class="code-inner">NGINX_HTTPS_ENABLED=false
</code></td>
</tr>
<tr>
<td id="L985" class="lines-num"><span id="L985" data-line-number="985"></span></td>
<td rel="L985" class="lines-code chroma"><code class="code-inner"># HTTP port
</code></td>
</tr>
<tr>
<td id="L986" class="lines-num"><span id="L986" data-line-number="986"></span></td>
<td rel="L986" class="lines-code chroma"><code class="code-inner">NGINX_PORT=80
</code></td>
</tr>
<tr>
<td id="L987" class="lines-num"><span id="L987" data-line-number="987"></span></td>
<td rel="L987" class="lines-code chroma"><code class="code-inner"># SSL settings are only applied when HTTPS_ENABLED is true
</code></td>
</tr>
<tr>
<td id="L988" class="lines-num"><span id="L988" data-line-number="988"></span></td>
<td rel="L988" class="lines-code chroma"><code class="code-inner">NGINX_SSL_PORT=443
</code></td>
</tr>
<tr>
<td id="L989" class="lines-num"><span id="L989" data-line-number="989"></span></td>
<td rel="L989" class="lines-code chroma"><code class="code-inner"># if HTTPS_ENABLED is true, you&#39;re required to add your own SSL certificates/keys to the `./nginx/ssl` directory
</code></td>
</tr>
<tr>
<td id="L990" class="lines-num"><span id="L990" data-line-number="990"></span></td>
<td rel="L990" class="lines-code chroma"><code class="code-inner"># and modify the env vars below accordingly.
</code></td>
</tr>
<tr>
<td id="L991" class="lines-num"><span id="L991" data-line-number="991"></span></td>
<td rel="L991" class="lines-code chroma"><code class="code-inner">NGINX_SSL_CERT_FILENAME=dify.crt
</code></td>
</tr>
<tr>
<td id="L992" class="lines-num"><span id="L992" data-line-number="992"></span></td>
<td rel="L992" class="lines-code chroma"><code class="code-inner">NGINX_SSL_CERT_KEY_FILENAME=dify.key
</code></td>
</tr>
<tr>
<td id="L993" class="lines-num"><span id="L993" data-line-number="993"></span></td>
<td rel="L993" class="lines-code chroma"><code class="code-inner">NGINX_SSL_PROTOCOLS=TLSv1.1 TLSv1.2 TLSv1.3
</code></td>
</tr>
<tr>
<td id="L994" class="lines-num"><span id="L994" data-line-number="994"></span></td>
<td rel="L994" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L995" class="lines-num"><span id="L995" data-line-number="995"></span></td>
<td rel="L995" class="lines-code chroma"><code class="code-inner"># Nginx performance tuning
</code></td>
</tr>
<tr>
<td id="L996" class="lines-num"><span id="L996" data-line-number="996"></span></td>
<td rel="L996" class="lines-code chroma"><code class="code-inner">NGINX_WORKER_PROCESSES=auto
</code></td>
</tr>
<tr>
<td id="L997" class="lines-num"><span id="L997" data-line-number="997"></span></td>
<td rel="L997" class="lines-code chroma"><code class="code-inner">NGINX_CLIENT_MAX_BODY_SIZE=100M
</code></td>
</tr>
<tr>
<td id="L998" class="lines-num"><span id="L998" data-line-number="998"></span></td>
<td rel="L998" class="lines-code chroma"><code class="code-inner">NGINX_KEEPALIVE_TIMEOUT=65
</code></td>
</tr>
<tr>
<td id="L999" class="lines-num"><span id="L999" data-line-number="999"></span></td>
<td rel="L999" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1000" class="lines-num"><span id="L1000" data-line-number="1000"></span></td>
<td rel="L1000" class="lines-code chroma"><code class="code-inner"># Proxy settings
</code></td>
</tr>
<tr>
<td id="L1001" class="lines-num"><span id="L1001" data-line-number="1001"></span></td>
<td rel="L1001" class="lines-code chroma"><code class="code-inner">NGINX_PROXY_READ_TIMEOUT=3600s
</code></td>
</tr>
<tr>
<td id="L1002" class="lines-num"><span id="L1002" data-line-number="1002"></span></td>
<td rel="L1002" class="lines-code chroma"><code class="code-inner">NGINX_PROXY_SEND_TIMEOUT=3600s
</code></td>
</tr>
<tr>
<td id="L1003" class="lines-num"><span id="L1003" data-line-number="1003"></span></td>
<td rel="L1003" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1004" class="lines-num"><span id="L1004" data-line-number="1004"></span></td>
<td rel="L1004" class="lines-code chroma"><code class="code-inner"># Set true to accept requests for /.well-known/acme-challenge/
</code></td>
</tr>
<tr>
<td id="L1005" class="lines-num"><span id="L1005" data-line-number="1005"></span></td>
<td rel="L1005" class="lines-code chroma"><code class="code-inner">NGINX_ENABLE_CERTBOT_CHALLENGE=false
</code></td>
</tr>
<tr>
<td id="L1006" class="lines-num"><span id="L1006" data-line-number="1006"></span></td>
<td rel="L1006" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1007" class="lines-num"><span id="L1007" data-line-number="1007"></span></td>
<td rel="L1007" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L1008" class="lines-num"><span id="L1008" data-line-number="1008"></span></td>
<td rel="L1008" class="lines-code chroma"><code class="code-inner"># Certbot Configuration
</code></td>
</tr>
<tr>
<td id="L1009" class="lines-num"><span id="L1009" data-line-number="1009"></span></td>
<td rel="L1009" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L1010" class="lines-num"><span id="L1010" data-line-number="1010"></span></td>
<td rel="L1010" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1011" class="lines-num"><span id="L1011" data-line-number="1011"></span></td>
<td rel="L1011" class="lines-code chroma"><code class="code-inner"># Email address (required to get certificates from Let&#39;s Encrypt)
</code></td>
</tr>
<tr>
<td id="L1012" class="lines-num"><span id="L1012" data-line-number="1012"></span></td>
<td rel="L1012" class="lines-code chroma"><code class="code-inner">CERTBOT_EMAIL=your_email@example.com
</code></td>
</tr>
<tr>
<td id="L1013" class="lines-num"><span id="L1013" data-line-number="1013"></span></td>
<td rel="L1013" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1014" class="lines-num"><span id="L1014" data-line-number="1014"></span></td>
<td rel="L1014" class="lines-code chroma"><code class="code-inner"># Domain name
</code></td>
</tr>
<tr>
<td id="L1015" class="lines-num"><span id="L1015" data-line-number="1015"></span></td>
<td rel="L1015" class="lines-code chroma"><code class="code-inner">CERTBOT_DOMAIN=your_domain.com
</code></td>
</tr>
<tr>
<td id="L1016" class="lines-num"><span id="L1016" data-line-number="1016"></span></td>
<td rel="L1016" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1017" class="lines-num"><span id="L1017" data-line-number="1017"></span></td>
<td rel="L1017" class="lines-code chroma"><code class="code-inner"># certbot command options
</code></td>
</tr>
<tr>
<td id="L1018" class="lines-num"><span id="L1018" data-line-number="1018"></span></td>
<td rel="L1018" class="lines-code chroma"><code class="code-inner"># i.e: --force-renewal --dry-run --test-cert --debug
</code></td>
</tr>
<tr>
<td id="L1019" class="lines-num"><span id="L1019" data-line-number="1019"></span></td>
<td rel="L1019" class="lines-code chroma"><code class="code-inner">CERTBOT_OPTIONS=
</code></td>
</tr>
<tr>
<td id="L1020" class="lines-num"><span id="L1020" data-line-number="1020"></span></td>
<td rel="L1020" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1021" class="lines-num"><span id="L1021" data-line-number="1021"></span></td>
<td rel="L1021" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L1022" class="lines-num"><span id="L1022" data-line-number="1022"></span></td>
<td rel="L1022" class="lines-code chroma"><code class="code-inner"># Environment Variables for SSRF Proxy
</code></td>
</tr>
<tr>
<td id="L1023" class="lines-num"><span id="L1023" data-line-number="1023"></span></td>
<td rel="L1023" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L1024" class="lines-num"><span id="L1024" data-line-number="1024"></span></td>
<td rel="L1024" class="lines-code chroma"><code class="code-inner">SSRF_HTTP_PORT=3128
</code></td>
</tr>
<tr>
<td id="L1025" class="lines-num"><span id="L1025" data-line-number="1025"></span></td>
<td rel="L1025" class="lines-code chroma"><code class="code-inner">SSRF_COREDUMP_DIR=/var/spool/squid
</code></td>
</tr>
<tr>
<td id="L1026" class="lines-num"><span id="L1026" data-line-number="1026"></span></td>
<td rel="L1026" class="lines-code chroma"><code class="code-inner">SSRF_REVERSE_PROXY_PORT=8194
</code></td>
</tr>
<tr>
<td id="L1027" class="lines-num"><span id="L1027" data-line-number="1027"></span></td>
<td rel="L1027" class="lines-code chroma"><code class="code-inner">SSRF_SANDBOX_HOST=sandbox
</code></td>
</tr>
<tr>
<td id="L1028" class="lines-num"><span id="L1028" data-line-number="1028"></span></td>
<td rel="L1028" class="lines-code chroma"><code class="code-inner">SSRF_DEFAULT_TIME_OUT=5
</code></td>
</tr>
<tr>
<td id="L1029" class="lines-num"><span id="L1029" data-line-number="1029"></span></td>
<td rel="L1029" class="lines-code chroma"><code class="code-inner">SSRF_DEFAULT_CONNECT_TIME_OUT=5
</code></td>
</tr>
<tr>
<td id="L1030" class="lines-num"><span id="L1030" data-line-number="1030"></span></td>
<td rel="L1030" class="lines-code chroma"><code class="code-inner">SSRF_DEFAULT_READ_TIME_OUT=5
</code></td>
</tr>
<tr>
<td id="L1031" class="lines-num"><span id="L1031" data-line-number="1031"></span></td>
<td rel="L1031" class="lines-code chroma"><code class="code-inner">SSRF_DEFAULT_WRITE_TIME_OUT=5
</code></td>
</tr>
<tr>
<td id="L1032" class="lines-num"><span id="L1032" data-line-number="1032"></span></td>
<td rel="L1032" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1033" class="lines-num"><span id="L1033" data-line-number="1033"></span></td>
<td rel="L1033" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L1034" class="lines-num"><span id="L1034" data-line-number="1034"></span></td>
<td rel="L1034" class="lines-code chroma"><code class="code-inner"># docker env var for specifying vector db type at startup
</code></td>
</tr>
<tr>
<td id="L1035" class="lines-num"><span id="L1035" data-line-number="1035"></span></td>
<td rel="L1035" class="lines-code chroma"><code class="code-inner"># (based on the vector db type, the corresponding docker
</code></td>
</tr>
<tr>
<td id="L1036" class="lines-num"><span id="L1036" data-line-number="1036"></span></td>
<td rel="L1036" class="lines-code chroma"><code class="code-inner"># compose profile will be used)
</code></td>
</tr>
<tr>
<td id="L1037" class="lines-num"><span id="L1037" data-line-number="1037"></span></td>
<td rel="L1037" class="lines-code chroma"><code class="code-inner"># if you want to use unstructured, add &#39;,unstructured&#39; to the end
</code></td>
</tr>
<tr>
<td id="L1038" class="lines-num"><span id="L1038" data-line-number="1038"></span></td>
<td rel="L1038" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L1039" class="lines-num"><span id="L1039" data-line-number="1039"></span></td>
<td rel="L1039" class="lines-code chroma"><code class="code-inner">COMPOSE_PROFILES=${VECTOR_STORE:-weaviate}
</code></td>
</tr>
<tr>
<td id="L1040" class="lines-num"><span id="L1040" data-line-number="1040"></span></td>
<td rel="L1040" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1041" class="lines-num"><span id="L1041" data-line-number="1041"></span></td>
<td rel="L1041" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L1042" class="lines-num"><span id="L1042" data-line-number="1042"></span></td>
<td rel="L1042" class="lines-code chroma"><code class="code-inner"># Docker Compose Service Expose Host Port Configurations
</code></td>
</tr>
<tr>
<td id="L1043" class="lines-num"><span id="L1043" data-line-number="1043"></span></td>
<td rel="L1043" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L1044" class="lines-num"><span id="L1044" data-line-number="1044"></span></td>
<td rel="L1044" class="lines-code chroma"><code class="code-inner">EXPOSE_NGINX_PORT=80
</code></td>
</tr>
<tr>
<td id="L1045" class="lines-num"><span id="L1045" data-line-number="1045"></span></td>
<td rel="L1045" class="lines-code chroma"><code class="code-inner">EXPOSE_NGINX_SSL_PORT=443
</code></td>
</tr>
<tr>
<td id="L1046" class="lines-num"><span id="L1046" data-line-number="1046"></span></td>
<td rel="L1046" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1047" class="lines-num"><span id="L1047" data-line-number="1047"></span></td>
<td rel="L1047" class="lines-code chroma"><code class="code-inner"># ----------------------------------------------------------------------------
</code></td>
</tr>
<tr>
<td id="L1048" class="lines-num"><span id="L1048" data-line-number="1048"></span></td>
<td rel="L1048" class="lines-code chroma"><code class="code-inner"># ModelProvider &amp; Tool Position Configuration
</code></td>
</tr>
<tr>
<td id="L1049" class="lines-num"><span id="L1049" data-line-number="1049"></span></td>
<td rel="L1049" class="lines-code chroma"><code class="code-inner"># Used to specify the model providers and tools that can be used in the app.
</code></td>
</tr>
<tr>
<td id="L1050" class="lines-num"><span id="L1050" data-line-number="1050"></span></td>
<td rel="L1050" class="lines-code chroma"><code class="code-inner"># ----------------------------------------------------------------------------
</code></td>
</tr>
<tr>
<td id="L1051" class="lines-num"><span id="L1051" data-line-number="1051"></span></td>
<td rel="L1051" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1052" class="lines-num"><span id="L1052" data-line-number="1052"></span></td>
<td rel="L1052" class="lines-code chroma"><code class="code-inner"># Pin, include, and exclude tools
</code></td>
</tr>
<tr>
<td id="L1053" class="lines-num"><span id="L1053" data-line-number="1053"></span></td>
<td rel="L1053" class="lines-code chroma"><code class="code-inner"># Use comma-separated values with no spaces between items.
</code></td>
</tr>
<tr>
<td id="L1054" class="lines-num"><span id="L1054" data-line-number="1054"></span></td>
<td rel="L1054" class="lines-code chroma"><code class="code-inner"># Example: POSITION_TOOL_PINS=bing,google
</code></td>
</tr>
<tr>
<td id="L1055" class="lines-num"><span id="L1055" data-line-number="1055"></span></td>
<td rel="L1055" class="lines-code chroma"><code class="code-inner">POSITION_TOOL_PINS=
</code></td>
</tr>
<tr>
<td id="L1056" class="lines-num"><span id="L1056" data-line-number="1056"></span></td>
<td rel="L1056" class="lines-code chroma"><code class="code-inner">POSITION_TOOL_INCLUDES=
</code></td>
</tr>
<tr>
<td id="L1057" class="lines-num"><span id="L1057" data-line-number="1057"></span></td>
<td rel="L1057" class="lines-code chroma"><code class="code-inner">POSITION_TOOL_EXCLUDES=
</code></td>
</tr>
<tr>
<td id="L1058" class="lines-num"><span id="L1058" data-line-number="1058"></span></td>
<td rel="L1058" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1059" class="lines-num"><span id="L1059" data-line-number="1059"></span></td>
<td rel="L1059" class="lines-code chroma"><code class="code-inner"># Pin, include, and exclude model providers
</code></td>
</tr>
<tr>
<td id="L1060" class="lines-num"><span id="L1060" data-line-number="1060"></span></td>
<td rel="L1060" class="lines-code chroma"><code class="code-inner"># Use comma-separated values with no spaces between items.
</code></td>
</tr>
<tr>
<td id="L1061" class="lines-num"><span id="L1061" data-line-number="1061"></span></td>
<td rel="L1061" class="lines-code chroma"><code class="code-inner"># Example: POSITION_PROVIDER_PINS=openai,openllm
</code></td>
</tr>
<tr>
<td id="L1062" class="lines-num"><span id="L1062" data-line-number="1062"></span></td>
<td rel="L1062" class="lines-code chroma"><code class="code-inner">POSITION_PROVIDER_PINS=
</code></td>
</tr>
<tr>
<td id="L1063" class="lines-num"><span id="L1063" data-line-number="1063"></span></td>
<td rel="L1063" class="lines-code chroma"><code class="code-inner">POSITION_PROVIDER_INCLUDES=
</code></td>
</tr>
<tr>
<td id="L1064" class="lines-num"><span id="L1064" data-line-number="1064"></span></td>
<td rel="L1064" class="lines-code chroma"><code class="code-inner">POSITION_PROVIDER_EXCLUDES=
</code></td>
</tr>
<tr>
<td id="L1065" class="lines-num"><span id="L1065" data-line-number="1065"></span></td>
<td rel="L1065" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1066" class="lines-num"><span id="L1066" data-line-number="1066"></span></td>
<td rel="L1066" class="lines-code chroma"><code class="code-inner"># CSP https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP
</code></td>
</tr>
<tr>
<td id="L1067" class="lines-num"><span id="L1067" data-line-number="1067"></span></td>
<td rel="L1067" class="lines-code chroma"><code class="code-inner">CSP_WHITELIST=
</code></td>
</tr>
<tr>
<td id="L1068" class="lines-num"><span id="L1068" data-line-number="1068"></span></td>
<td rel="L1068" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1069" class="lines-num"><span id="L1069" data-line-number="1069"></span></td>
<td rel="L1069" class="lines-code chroma"><code class="code-inner"># Enable or disable create tidb service job
</code></td>
</tr>
<tr>
<td id="L1070" class="lines-num"><span id="L1070" data-line-number="1070"></span></td>
<td rel="L1070" class="lines-code chroma"><code class="code-inner">CREATE_TIDB_SERVICE_JOB_ENABLED=false
</code></td>
</tr>
<tr>
<td id="L1071" class="lines-num"><span id="L1071" data-line-number="1071"></span></td>
<td rel="L1071" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1072" class="lines-num"><span id="L1072" data-line-number="1072"></span></td>
<td rel="L1072" class="lines-code chroma"><code class="code-inner"># Maximum number of submitted thread count in a ThreadPool for parallel node execution
</code></td>
</tr>
<tr>
<td id="L1073" class="lines-num"><span id="L1073" data-line-number="1073"></span></td>
<td rel="L1073" class="lines-code chroma"><code class="code-inner">MAX_SUBMIT_COUNT=100
</code></td>
</tr>
<tr>
<td id="L1074" class="lines-num"><span id="L1074" data-line-number="1074"></span></td>
<td rel="L1074" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1075" class="lines-num"><span id="L1075" data-line-number="1075"></span></td>
<td rel="L1075" class="lines-code chroma"><code class="code-inner"># The maximum number of top-k value for RAG.
</code></td>
</tr>
<tr>
<td id="L1076" class="lines-num"><span id="L1076" data-line-number="1076"></span></td>
<td rel="L1076" class="lines-code chroma"><code class="code-inner">TOP_K_MAX_VALUE=10
</code></td>
</tr>
<tr>
<td id="L1077" class="lines-num"><span id="L1077" data-line-number="1077"></span></td>
<td rel="L1077" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1078" class="lines-num"><span id="L1078" data-line-number="1078"></span></td>
<td rel="L1078" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L1079" class="lines-num"><span id="L1079" data-line-number="1079"></span></td>
<td rel="L1079" class="lines-code chroma"><code class="code-inner"># Plugin Daemon Configuration
</code></td>
</tr>
<tr>
<td id="L1080" class="lines-num"><span id="L1080" data-line-number="1080"></span></td>
<td rel="L1080" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L1081" class="lines-num"><span id="L1081" data-line-number="1081"></span></td>
<td rel="L1081" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1082" class="lines-num"><span id="L1082" data-line-number="1082"></span></td>
<td rel="L1082" class="lines-code chroma"><code class="code-inner">DB_PLUGIN_DATABASE=dify_plugin
</code></td>
</tr>
<tr>
<td id="L1083" class="lines-num"><span id="L1083" data-line-number="1083"></span></td>
<td rel="L1083" class="lines-code chroma"><code class="code-inner">EXPOSE_PLUGIN_DAEMON_PORT=5002
</code></td>
</tr>
<tr>
<td id="L1084" class="lines-num"><span id="L1084" data-line-number="1084"></span></td>
<td rel="L1084" class="lines-code chroma"><code class="code-inner">PLUGIN_DAEMON_PORT=5002
</code></td>
</tr>
<tr>
<td id="L1085" class="lines-num"><span id="L1085" data-line-number="1085"></span></td>
<td rel="L1085" class="lines-code chroma"><code class="code-inner">PLUGIN_DAEMON_KEY=lYkiYYT6owG+71oLerGzA7GXCgOT++6ovaezWAjpCjf+Sjc3ZtU+qUEi
</code></td>
</tr>
<tr>
<td id="L1086" class="lines-num"><span id="L1086" data-line-number="1086"></span></td>
<td rel="L1086" class="lines-code chroma"><code class="code-inner">PLUGIN_DAEMON_URL=http://plugin_daemon:5002
</code></td>
</tr>
<tr>
<td id="L1087" class="lines-num"><span id="L1087" data-line-number="1087"></span></td>
<td rel="L1087" class="lines-code chroma"><code class="code-inner">PLUGIN_MAX_PACKAGE_SIZE=52428800
</code></td>
</tr>
<tr>
<td id="L1088" class="lines-num"><span id="L1088" data-line-number="1088"></span></td>
<td rel="L1088" class="lines-code chroma"><code class="code-inner">PLUGIN_PPROF_ENABLED=false
</code></td>
</tr>
<tr>
<td id="L1089" class="lines-num"><span id="L1089" data-line-number="1089"></span></td>
<td rel="L1089" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1090" class="lines-num"><span id="L1090" data-line-number="1090"></span></td>
<td rel="L1090" class="lines-code chroma"><code class="code-inner">PLUGIN_DEBUGGING_HOST=0.0.0.0
</code></td>
</tr>
<tr>
<td id="L1091" class="lines-num"><span id="L1091" data-line-number="1091"></span></td>
<td rel="L1091" class="lines-code chroma"><code class="code-inner">PLUGIN_DEBUGGING_PORT=5003
</code></td>
</tr>
<tr>
<td id="L1092" class="lines-num"><span id="L1092" data-line-number="1092"></span></td>
<td rel="L1092" class="lines-code chroma"><code class="code-inner">EXPOSE_PLUGIN_DEBUGGING_HOST=localhost
</code></td>
</tr>
<tr>
<td id="L1093" class="lines-num"><span id="L1093" data-line-number="1093"></span></td>
<td rel="L1093" class="lines-code chroma"><code class="code-inner">EXPOSE_PLUGIN_DEBUGGING_PORT=5003
</code></td>
</tr>
<tr>
<td id="L1094" class="lines-num"><span id="L1094" data-line-number="1094"></span></td>
<td rel="L1094" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1095" class="lines-num"><span id="L1095" data-line-number="1095"></span></td>
<td rel="L1095" class="lines-code chroma"><code class="code-inner"># If this key is changed, DIFY_INNER_API_KEY in plugin_daemon service must also be updated or agent node will fail.
</code></td>
</tr>
<tr>
<td id="L1096" class="lines-num"><span id="L1096" data-line-number="1096"></span></td>
<td rel="L1096" class="lines-code chroma"><code class="code-inner">PLUGIN_DIFY_INNER_API_KEY=QaHbTe77CtuXmsfyhR7+vRjI/+XbV1AaFy691iy+kGDv2Jvy0/eAh8Y1
</code></td>
</tr>
<tr>
<td id="L1097" class="lines-num"><span id="L1097" data-line-number="1097"></span></td>
<td rel="L1097" class="lines-code chroma"><code class="code-inner">PLUGIN_DIFY_INNER_API_URL=http://api:5001
</code></td>
</tr>
<tr>
<td id="L1098" class="lines-num"><span id="L1098" data-line-number="1098"></span></td>
<td rel="L1098" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1099" class="lines-num"><span id="L1099" data-line-number="1099"></span></td>
<td rel="L1099" class="lines-code chroma"><code class="code-inner">ENDPOINT_URL_TEMPLATE=http://localhost/e/{hook_id}
</code></td>
</tr>
<tr>
<td id="L1100" class="lines-num"><span id="L1100" data-line-number="1100"></span></td>
<td rel="L1100" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1101" class="lines-num"><span id="L1101" data-line-number="1101"></span></td>
<td rel="L1101" class="lines-code chroma"><code class="code-inner">MARKETPLACE_ENABLED=true
</code></td>
</tr>
<tr>
<td id="L1102" class="lines-num"><span id="L1102" data-line-number="1102"></span></td>
<td rel="L1102" class="lines-code chroma"><code class="code-inner">MARKETPLACE_API_URL=https://marketplace.dify.ai
</code></td>
</tr>
<tr>
<td id="L1103" class="lines-num"><span id="L1103" data-line-number="1103"></span></td>
<td rel="L1103" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1104" class="lines-num"><span id="L1104" data-line-number="1104"></span></td>
<td rel="L1104" class="lines-code chroma"><code class="code-inner">FORCE_VERIFYING_SIGNATURE=true
</code></td>
</tr>
<tr>
<td id="L1105" class="lines-num"><span id="L1105" data-line-number="1105"></span></td>
<td rel="L1105" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1106" class="lines-num"><span id="L1106" data-line-number="1106"></span></td>
<td rel="L1106" class="lines-code chroma"><code class="code-inner">PLUGIN_PYTHON_ENV_INIT_TIMEOUT=120
</code></td>
</tr>
<tr>
<td id="L1107" class="lines-num"><span id="L1107" data-line-number="1107"></span></td>
<td rel="L1107" class="lines-code chroma"><code class="code-inner">PLUGIN_MAX_EXECUTION_TIMEOUT=600
</code></td>
</tr>
<tr>
<td id="L1108" class="lines-num"><span id="L1108" data-line-number="1108"></span></td>
<td rel="L1108" class="lines-code chroma"><code class="code-inner"># PIP_MIRROR_URL=https://pypi.tuna.tsinghua.edu.cn/simple
</code></td>
</tr>
<tr>
<td id="L1109" class="lines-num"><span id="L1109" data-line-number="1109"></span></td>
<td rel="L1109" class="lines-code chroma"><code class="code-inner">PIP_MIRROR_URL=
</code></td>
</tr>
<tr>
<td id="L1110" class="lines-num"><span id="L1110" data-line-number="1110"></span></td>
<td rel="L1110" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1111" class="lines-num"><span id="L1111" data-line-number="1111"></span></td>
<td rel="L1111" class="lines-code chroma"><code class="code-inner"># https://github.com/langgenius/dify-plugin-daemon/blob/main/.env.example
</code></td>
</tr>
<tr>
<td id="L1112" class="lines-num"><span id="L1112" data-line-number="1112"></span></td>
<td rel="L1112" class="lines-code chroma"><code class="code-inner"># Plugin storage type, local aws_s3 tencent_cos azure_blob aliyun_oss volcengine_tos
</code></td>
</tr>
<tr>
<td id="L1113" class="lines-num"><span id="L1113" data-line-number="1113"></span></td>
<td rel="L1113" class="lines-code chroma"><code class="code-inner">PLUGIN_STORAGE_TYPE=local
</code></td>
</tr>
<tr>
<td id="L1114" class="lines-num"><span id="L1114" data-line-number="1114"></span></td>
<td rel="L1114" class="lines-code chroma"><code class="code-inner">PLUGIN_STORAGE_LOCAL_ROOT=/app/storage
</code></td>
</tr>
<tr>
<td id="L1115" class="lines-num"><span id="L1115" data-line-number="1115"></span></td>
<td rel="L1115" class="lines-code chroma"><code class="code-inner">PLUGIN_WORKING_PATH=/app/storage/cwd
</code></td>
</tr>
<tr>
<td id="L1116" class="lines-num"><span id="L1116" data-line-number="1116"></span></td>
<td rel="L1116" class="lines-code chroma"><code class="code-inner">PLUGIN_INSTALLED_PATH=plugin
</code></td>
</tr>
<tr>
<td id="L1117" class="lines-num"><span id="L1117" data-line-number="1117"></span></td>
<td rel="L1117" class="lines-code chroma"><code class="code-inner">PLUGIN_PACKAGE_CACHE_PATH=plugin_packages
</code></td>
</tr>
<tr>
<td id="L1118" class="lines-num"><span id="L1118" data-line-number="1118"></span></td>
<td rel="L1118" class="lines-code chroma"><code class="code-inner">PLUGIN_MEDIA_CACHE_PATH=assets
</code></td>
</tr>
<tr>
<td id="L1119" class="lines-num"><span id="L1119" data-line-number="1119"></span></td>
<td rel="L1119" class="lines-code chroma"><code class="code-inner"># Plugin oss bucket
</code></td>
</tr>
<tr>
<td id="L1120" class="lines-num"><span id="L1120" data-line-number="1120"></span></td>
<td rel="L1120" class="lines-code chroma"><code class="code-inner">PLUGIN_STORAGE_OSS_BUCKET=
</code></td>
</tr>
<tr>
<td id="L1121" class="lines-num"><span id="L1121" data-line-number="1121"></span></td>
<td rel="L1121" class="lines-code chroma"><code class="code-inner"># Plugin oss s3 credentials
</code></td>
</tr>
<tr>
<td id="L1122" class="lines-num"><span id="L1122" data-line-number="1122"></span></td>
<td rel="L1122" class="lines-code chroma"><code class="code-inner">PLUGIN_S3_USE_AWS=false
</code></td>
</tr>
<tr>
<td id="L1123" class="lines-num"><span id="L1123" data-line-number="1123"></span></td>
<td rel="L1123" class="lines-code chroma"><code class="code-inner">PLUGIN_S3_USE_AWS_MANAGED_IAM=false
</code></td>
</tr>
<tr>
<td id="L1124" class="lines-num"><span id="L1124" data-line-number="1124"></span></td>
<td rel="L1124" class="lines-code chroma"><code class="code-inner">PLUGIN_S3_ENDPOINT=
</code></td>
</tr>
<tr>
<td id="L1125" class="lines-num"><span id="L1125" data-line-number="1125"></span></td>
<td rel="L1125" class="lines-code chroma"><code class="code-inner">PLUGIN_S3_USE_PATH_STYLE=false
</code></td>
</tr>
<tr>
<td id="L1126" class="lines-num"><span id="L1126" data-line-number="1126"></span></td>
<td rel="L1126" class="lines-code chroma"><code class="code-inner">PLUGIN_AWS_ACCESS_KEY=
</code></td>
</tr>
<tr>
<td id="L1127" class="lines-num"><span id="L1127" data-line-number="1127"></span></td>
<td rel="L1127" class="lines-code chroma"><code class="code-inner">PLUGIN_AWS_SECRET_KEY=
</code></td>
</tr>
<tr>
<td id="L1128" class="lines-num"><span id="L1128" data-line-number="1128"></span></td>
<td rel="L1128" class="lines-code chroma"><code class="code-inner">PLUGIN_AWS_REGION=
</code></td>
</tr>
<tr>
<td id="L1129" class="lines-num"><span id="L1129" data-line-number="1129"></span></td>
<td rel="L1129" class="lines-code chroma"><code class="code-inner"># Plugin oss azure blob
</code></td>
</tr>
<tr>
<td id="L1130" class="lines-num"><span id="L1130" data-line-number="1130"></span></td>
<td rel="L1130" class="lines-code chroma"><code class="code-inner">PLUGIN_AZURE_BLOB_STORAGE_CONTAINER_NAME=
</code></td>
</tr>
<tr>
<td id="L1131" class="lines-num"><span id="L1131" data-line-number="1131"></span></td>
<td rel="L1131" class="lines-code chroma"><code class="code-inner">PLUGIN_AZURE_BLOB_STORAGE_CONNECTION_STRING=
</code></td>
</tr>
<tr>
<td id="L1132" class="lines-num"><span id="L1132" data-line-number="1132"></span></td>
<td rel="L1132" class="lines-code chroma"><code class="code-inner"># Plugin oss tencent cos
</code></td>
</tr>
<tr>
<td id="L1133" class="lines-num"><span id="L1133" data-line-number="1133"></span></td>
<td rel="L1133" class="lines-code chroma"><code class="code-inner">PLUGIN_TENCENT_COS_SECRET_KEY=
</code></td>
</tr>
<tr>
<td id="L1134" class="lines-num"><span id="L1134" data-line-number="1134"></span></td>
<td rel="L1134" class="lines-code chroma"><code class="code-inner">PLUGIN_TENCENT_COS_SECRET_ID=
</code></td>
</tr>
<tr>
<td id="L1135" class="lines-num"><span id="L1135" data-line-number="1135"></span></td>
<td rel="L1135" class="lines-code chroma"><code class="code-inner">PLUGIN_TENCENT_COS_REGION=
</code></td>
</tr>
<tr>
<td id="L1136" class="lines-num"><span id="L1136" data-line-number="1136"></span></td>
<td rel="L1136" class="lines-code chroma"><code class="code-inner"># Plugin oss aliyun oss
</code></td>
</tr>
<tr>
<td id="L1137" class="lines-num"><span id="L1137" data-line-number="1137"></span></td>
<td rel="L1137" class="lines-code chroma"><code class="code-inner">PLUGIN_ALIYUN_OSS_REGION=
</code></td>
</tr>
<tr>
<td id="L1138" class="lines-num"><span id="L1138" data-line-number="1138"></span></td>
<td rel="L1138" class="lines-code chroma"><code class="code-inner">PLUGIN_ALIYUN_OSS_ENDPOINT=
</code></td>
</tr>
<tr>
<td id="L1139" class="lines-num"><span id="L1139" data-line-number="1139"></span></td>
<td rel="L1139" class="lines-code chroma"><code class="code-inner">PLUGIN_ALIYUN_OSS_ACCESS_KEY_ID=
</code></td>
</tr>
<tr>
<td id="L1140" class="lines-num"><span id="L1140" data-line-number="1140"></span></td>
<td rel="L1140" class="lines-code chroma"><code class="code-inner">PLUGIN_ALIYUN_OSS_ACCESS_KEY_SECRET=
</code></td>
</tr>
<tr>
<td id="L1141" class="lines-num"><span id="L1141" data-line-number="1141"></span></td>
<td rel="L1141" class="lines-code chroma"><code class="code-inner">PLUGIN_ALIYUN_OSS_AUTH_VERSION=v4
</code></td>
</tr>
<tr>
<td id="L1142" class="lines-num"><span id="L1142" data-line-number="1142"></span></td>
<td rel="L1142" class="lines-code chroma"><code class="code-inner">PLUGIN_ALIYUN_OSS_PATH=
</code></td>
</tr>
<tr>
<td id="L1143" class="lines-num"><span id="L1143" data-line-number="1143"></span></td>
<td rel="L1143" class="lines-code chroma"><code class="code-inner"># Plugin oss volcengine tos
</code></td>
</tr>
<tr>
<td id="L1144" class="lines-num"><span id="L1144" data-line-number="1144"></span></td>
<td rel="L1144" class="lines-code chroma"><code class="code-inner">PLUGIN_VOLCENGINE_TOS_ENDPOINT=
</code></td>
</tr>
<tr>
<td id="L1145" class="lines-num"><span id="L1145" data-line-number="1145"></span></td>
<td rel="L1145" class="lines-code chroma"><code class="code-inner">PLUGIN_VOLCENGINE_TOS_ACCESS_KEY=
</code></td>
</tr>
<tr>
<td id="L1146" class="lines-num"><span id="L1146" data-line-number="1146"></span></td>
<td rel="L1146" class="lines-code chroma"><code class="code-inner">PLUGIN_VOLCENGINE_TOS_SECRET_KEY=
</code></td>
</tr>
<tr>
<td id="L1147" class="lines-num"><span id="L1147" data-line-number="1147"></span></td>
<td rel="L1147" class="lines-code chroma"><code class="code-inner">PLUGIN_VOLCENGINE_TOS_REGION=
</code></td>
</tr>
<tr>
<td id="L1148" class="lines-num"><span id="L1148" data-line-number="1148"></span></td>
<td rel="L1148" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1149" class="lines-num"><span id="L1149" data-line-number="1149"></span></td>
<td rel="L1149" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L1150" class="lines-num"><span id="L1150" data-line-number="1150"></span></td>
<td rel="L1150" class="lines-code chroma"><code class="code-inner"># OTLP Collector Configuration
</code></td>
</tr>
<tr>
<td id="L1151" class="lines-num"><span id="L1151" data-line-number="1151"></span></td>
<td rel="L1151" class="lines-code chroma"><code class="code-inner"># ------------------------------
</code></td>
</tr>
<tr>
<td id="L1152" class="lines-num"><span id="L1152" data-line-number="1152"></span></td>
<td rel="L1152" class="lines-code chroma"><code class="code-inner">ENABLE_OTEL=false
</code></td>
</tr>
<tr>
<td id="L1153" class="lines-num"><span id="L1153" data-line-number="1153"></span></td>
<td rel="L1153" class="lines-code chroma"><code class="code-inner">OTLP_TRACE_ENDPOINT=
</code></td>
</tr>
<tr>
<td id="L1154" class="lines-num"><span id="L1154" data-line-number="1154"></span></td>
<td rel="L1154" class="lines-code chroma"><code class="code-inner">OTLP_METRIC_ENDPOINT=
</code></td>
</tr>
<tr>
<td id="L1155" class="lines-num"><span id="L1155" data-line-number="1155"></span></td>
<td rel="L1155" class="lines-code chroma"><code class="code-inner">OTLP_BASE_ENDPOINT=http://localhost:4318
</code></td>
</tr>
<tr>
<td id="L1156" class="lines-num"><span id="L1156" data-line-number="1156"></span></td>
<td rel="L1156" class="lines-code chroma"><code class="code-inner">OTLP_API_KEY=
</code></td>
</tr>
<tr>
<td id="L1157" class="lines-num"><span id="L1157" data-line-number="1157"></span></td>
<td rel="L1157" class="lines-code chroma"><code class="code-inner">OTEL_EXPORTER_OTLP_PROTOCOL=
</code></td>
</tr>
<tr>
<td id="L1158" class="lines-num"><span id="L1158" data-line-number="1158"></span></td>
<td rel="L1158" class="lines-code chroma"><code class="code-inner">OTEL_EXPORTER_TYPE=otlp
</code></td>
</tr>
<tr>
<td id="L1159" class="lines-num"><span id="L1159" data-line-number="1159"></span></td>
<td rel="L1159" class="lines-code chroma"><code class="code-inner">OTEL_SAMPLING_RATE=0.1
</code></td>
</tr>
<tr>
<td id="L1160" class="lines-num"><span id="L1160" data-line-number="1160"></span></td>
<td rel="L1160" class="lines-code chroma"><code class="code-inner">OTEL_BATCH_EXPORT_SCHEDULE_DELAY=5000
</code></td>
</tr>
<tr>
<td id="L1161" class="lines-num"><span id="L1161" data-line-number="1161"></span></td>
<td rel="L1161" class="lines-code chroma"><code class="code-inner">OTEL_MAX_QUEUE_SIZE=2048
</code></td>
</tr>
<tr>
<td id="L1162" class="lines-num"><span id="L1162" data-line-number="1162"></span></td>
<td rel="L1162" class="lines-code chroma"><code class="code-inner">OTEL_MAX_EXPORT_BATCH_SIZE=512
</code></td>
</tr>
<tr>
<td id="L1163" class="lines-num"><span id="L1163" data-line-number="1163"></span></td>
<td rel="L1163" class="lines-code chroma"><code class="code-inner">OTEL_METRIC_EXPORT_INTERVAL=60000
</code></td>
</tr>
<tr>
<td id="L1164" class="lines-num"><span id="L1164" data-line-number="1164"></span></td>
<td rel="L1164" class="lines-code chroma"><code class="code-inner">OTEL_BATCH_EXPORT_TIMEOUT=10000
</code></td>
</tr>
<tr>
<td id="L1165" class="lines-num"><span id="L1165" data-line-number="1165"></span></td>
<td rel="L1165" class="lines-code chroma"><code class="code-inner">OTEL_METRIC_EXPORT_TIMEOUT=30000
</code></td>
</tr>
<tr>
<td id="L1166" class="lines-num"><span id="L1166" data-line-number="1166"></span></td>
<td rel="L1166" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1167" class="lines-num"><span id="L1167" data-line-number="1167"></span></td>
<td rel="L1167" class="lines-code chroma"><code class="code-inner"># Prevent Clickjacking
</code></td>
</tr>
<tr>
<td id="L1168" class="lines-num"><span id="L1168" data-line-number="1168"></span></td>
<td rel="L1168" class="lines-code chroma"><code class="code-inner">ALLOW_EMBED=false
</code></td>
</tr>
<tr>
<td id="L1169" class="lines-num"><span id="L1169" data-line-number="1169"></span></td>
<td rel="L1169" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1170" class="lines-num"><span id="L1170" data-line-number="1170"></span></td>
<td rel="L1170" class="lines-code chroma"><code class="code-inner"># Dataset queue monitor configuration
</code></td>
</tr>
<tr>
<td id="L1171" class="lines-num"><span id="L1171" data-line-number="1171"></span></td>
<td rel="L1171" class="lines-code chroma"><code class="code-inner">QUEUE_MONITOR_THRESHOLD=200
</code></td>
</tr>
<tr>
<td id="L1172" class="lines-num"><span id="L1172" data-line-number="1172"></span></td>
<td rel="L1172" class="lines-code chroma"><code class="code-inner"># You can configure multiple ones, separated by commas. eg: test1@dify.ai,test2@dify.ai
</code></td>
</tr>
<tr>
<td id="L1173" class="lines-num"><span id="L1173" data-line-number="1173"></span></td>
<td rel="L1173" class="lines-code chroma"><code class="code-inner">QUEUE_MONITOR_ALERT_EMAILS=
</code></td>
</tr>
<tr>
<td id="L1174" class="lines-num"><span id="L1174" data-line-number="1174"></span></td>
<td rel="L1174" class="lines-code chroma"><code class="code-inner"># Monitor interval in minutes, default is 30 minutes
</code></td>
</tr>
<tr>
<td id="L1175" class="lines-num"><span id="L1175" data-line-number="1175"></span></td>
<td rel="L1175" class="lines-code chroma"><code class="code-inner">QUEUE_MONITOR_INTERVAL=30
</code></td>
</tr>
<tr>
<td id="L1176" class="lines-num"><span id="L1176" data-line-number="1176"></span></td>
<td rel="L1176" class="lines-code chroma"><code class="code-inner">
</code></td>
</tr>
<tr>
<td id="L1177" class="lines-num"><span id="L1177" data-line-number="1177"></span></td>
<td rel="L1177" class="lines-code chroma"><code class="code-inner"># Celery schedule tasks configuration
</code></td>
</tr>
<tr>
<td id="L1178" class="lines-num"><span id="L1178" data-line-number="1178"></span></td>
<td rel="L1178" class="lines-code chroma"><code class="code-inner">ENABLE_CLEAN_EMBEDDING_CACHE_TASK=false
</code></td>
</tr>
<tr>
<td id="L1179" class="lines-num"><span id="L1179" data-line-number="1179"></span></td>
<td rel="L1179" class="lines-code chroma"><code class="code-inner">ENABLE_CLEAN_UNUSED_DATASETS_TASK=false
</code></td>
</tr>
<tr>
<td id="L1180" class="lines-num"><span id="L1180" data-line-number="1180"></span></td>
<td rel="L1180" class="lines-code chroma"><code class="code-inner">ENABLE_CREATE_TIDB_SERVERLESS_TASK=false
</code></td>
</tr>
<tr>
<td id="L1181" class="lines-num"><span id="L1181" data-line-number="1181"></span></td>
<td rel="L1181" class="lines-code chroma"><code class="code-inner">ENABLE_UPDATE_TIDB_SERVERLESS_STATUS_TASK=false
</code></td>
</tr>
<tr>
<td id="L1182" class="lines-num"><span id="L1182" data-line-number="1182"></span></td>
<td rel="L1182" class="lines-code chroma"><code class="code-inner">ENABLE_CLEAN_MESSAGES=false
</code></td>
</tr>
<tr>
<td id="L1183" class="lines-num"><span id="L1183" data-line-number="1183"></span></td>
<td rel="L1183" class="lines-code chroma"><code class="code-inner">ENABLE_MAIL_CLEAN_DOCUMENT_NOTIFY_TASK=false
</code></td>
</tr>
<tr>
<td id="L1184" class="lines-num"><span id="L1184" data-line-number="1184"></span></td>
<td rel="L1184" class="lines-code chroma"><code class="code-inner">ENABLE_DATASETS_QUEUE_MONITOR=false
</code></td>
</tr>
<tr>
<td id="L1185" class="lines-num"><span id="L1185" data-line-number="1185"></span></td>
<td rel="L1185" class="lines-code chroma"><code class="code-inner">ENABLE_CHECK_UPGRADABLE_PLUGIN_TASK=true
</code></td>
</tr>
</tbody>
</table>
<div class="code-line-menu tippy-target">
<a class="item ref-in-new-issue" role="menuitem" data-url-issue-new="/third/dify/issues/new" data-url-param-body-link="/third/dify/src/commit/72a2c3decf2b53d1c74c8f04ddabe4762b76827c/docker/.env.example" rel="nofollow noindex">在新工单中引用</a>
<a class="item view_git_blame" role="menuitem" href="/third/dify/blame/commit/72a2c3decf2b53d1c74c8f04ddabe4762b76827c/docker/.env.example">查看 Git Blame</a>
<a class="item copy-line-permalink" role="menuitem" data-url="/third/dify/src/commit/72a2c3decf2b53d1c74c8f04ddabe4762b76827c/docker/.env.example">复制永久链接</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<footer class="page-footer" role="group" aria-label="页脚">
<div class="left-links" role="contentinfo" aria-label="关于软件">
<a target="_blank" rel="noopener noreferrer" href="https://about.gitea.com">Powered by Gitea</a>
当前版本:
1.23.6
页面: <strong>347ms</strong>
模板: <strong>30ms</strong>
</div>
<div class="right-links" role="group" aria-label="链接">
<div class="ui dropdown upward">
<span class="flex-text-inline"><svg viewBox="0 0 16 16" class="svg octicon-globe" aria-hidden="true" width="14" height="14"><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0M5.78 8.75a9.64 9.64 0 0 0 1.363 4.177q.383.64.857 1.215c.245-.296.551-.705.857-1.215A9.64 9.64 0 0 0 10.22 8.75Zm4.44-1.5a9.64 9.64 0 0 0-1.363-4.177c-.307-.51-.612-.919-.857-1.215a10 10 0 0 0-.857 1.215A9.64 9.64 0 0 0 5.78 7.25Zm-5.944 1.5H1.543a6.51 6.51 0 0 0 4.666 5.5q-.184-.271-.352-.552c-.715-1.192-1.437-2.874-1.581-4.948m-2.733-1.5h2.733c.144-2.074.866-3.756 1.58-4.948q.18-.295.353-.552a6.51 6.51 0 0 0-4.666 5.5m10.181 1.5c-.144 2.074-.866 3.756-1.58 4.948q-.18.296-.353.552a6.51 6.51 0 0 0 4.666-5.5Zm2.733-1.5a6.51 6.51 0 0 0-4.666-5.5q.184.272.353.552c.714 1.192 1.436 2.874 1.58 4.948Z"/></svg> 简体中文</span>
<div class="menu language-menu">
<a lang="id-ID" data-url="/?lang=id-ID" class="item ">Bahasa Indonesia</a>
<a lang="de-DE" data-url="/?lang=de-DE" class="item ">Deutsch</a>
<a lang="en-US" data-url="/?lang=en-US" class="item ">English</a>
<a lang="es-ES" data-url="/?lang=es-ES" class="item ">Español</a>
<a lang="fr-FR" data-url="/?lang=fr-FR" class="item ">Français</a>
<a lang="ga-IE" data-url="/?lang=ga-IE" class="item ">Gaeilge</a>
<a lang="it-IT" data-url="/?lang=it-IT" class="item ">Italiano</a>
<a lang="lv-LV" data-url="/?lang=lv-LV" class="item ">Latviešu</a>
<a lang="hu-HU" data-url="/?lang=hu-HU" class="item ">Magyar nyelv</a>
<a lang="nl-NL" data-url="/?lang=nl-NL" class="item ">Nederlands</a>
<a lang="pl-PL" data-url="/?lang=pl-PL" class="item ">Polski</a>
<a lang="pt-PT" data-url="/?lang=pt-PT" class="item ">Português de Portugal</a>
<a lang="pt-BR" data-url="/?lang=pt-BR" class="item ">Português do Brasil</a>
<a lang="fi-FI" data-url="/?lang=fi-FI" class="item ">Suomi</a>
<a lang="sv-SE" data-url="/?lang=sv-SE" class="item ">Svenska</a>
<a lang="tr-TR" data-url="/?lang=tr-TR" class="item ">Türkçe</a>
<a lang="cs-CZ" data-url="/?lang=cs-CZ" class="item ">Čeština</a>
<a lang="el-GR" data-url="/?lang=el-GR" class="item ">Ελληνικά</a>
<a lang="bg-BG" data-url="/?lang=bg-BG" class="item ">Български</a>
<a lang="ru-RU" data-url="/?lang=ru-RU" class="item ">Русский</a>
<a lang="uk-UA" data-url="/?lang=uk-UA" class="item ">Українська</a>
<a lang="fa-IR" data-url="/?lang=fa-IR" class="item ">فارسی</a>
<a lang="ml-IN" data-url="/?lang=ml-IN" class="item ">മലയാളം</a>
<a lang="ja-JP" data-url="/?lang=ja-JP" class="item ">日本語</a>
<a lang="zh-CN" data-url="/?lang=zh-CN" class="item selected">简体中文</a>
<a lang="zh-TW" data-url="/?lang=zh-TW" class="item ">繁體中文(台灣)</a>
<a lang="zh-HK" data-url="/?lang=zh-HK" class="item ">繁體中文(香港)</a>
<a lang="ko-KR" data-url="/?lang=ko-KR" class="item ">한국어</a>
</div>
</div>
<a href="/assets/licenses.txt">许可证</a>
<a href="/api/swagger">API</a>
</div>
</footer>
<script src="/assets/js/index.js?v=1.23.6" onerror="alert('Failed to load asset files from ' + this.src + '. Please make sure the asset files can be accessed.')"></script>
</body>
</html>