什么是1Panel
1Panel是一款开源免费的现代化 Linux 服务器运维管理面板,类似宝塔面板。 其主要功能包含:
- 可视化管理服务器(Web 管理界面)
- 一键部署常见应用(如 WordPress、Nextcloud、Docker 容器等)
- 系统监控(CPU、内存、磁盘、网络等实时查看)
- 支持插件扩展
当前1Panel版本中还未集成一键安装的应用,但手动安装也很方便。
下载Dify Release包,并解压缩
下载地址:github release
本文下载版本:v1.2.0 (如果不想额外修改可以下载v1.1.3,1.2.0主要优化了循环)
v1.2.0需要额外修改,看源码主线已经包含了修复,下个版本应该就没有问题了
修复release v1.2.0 bug:参数格式不一致的问题
file: docker/.env.example
ini
# PLUGIN_S3_USE_AWS_MANAGED_IAM= 更改为:
PLUGIN_S3_USE_AWS_MANAGED_IAM=false
# PLUGIN_S3_USE_PATH_STYLE= 更改为:
PLUGIN_S3_USE_PATH_STYLE=false
file: docker/docker-compose.yaml
yaml
# S3_USE_AWS_MANAGED_IAM: ${PLUGIN_S3_USE_AWS_MANAGED_IAM:-false} 更改为:
S3_USE_AWS_MANAGED_IAM: ${PLUGIN_S3_USE_AWS_MANAGED_IAM:-false}
# PLUGIN_S3_USE_AWS_MANAGED_IAM: ${PLUGIN_S3_USE_AWS_MANAGED_IAM:-} 更改为:
PLUGIN_S3_USE_AWS_MANAGED_IAM: ${PLUGIN_S3_USE_AWS_MANAGED_IAM:-false}
# S3_USE_PATH_STYLE: ${PLUGIN_S3_USE_PATH_STYLE:-} 更改为:
S3_USE_PATH_STYLE: ${PLUGIN_S3_USE_PATH_STYLE:-false}
# PLUGIN_S3_USE_PATH_STYLE: ${PLUGIN_S3_USE_PATH_STYLE:-} 更改为:
PLUGIN_S3_USE_PATH_STYLE: ${PLUGIN_S3_USE_PATH_STYLE:-false}
更改配置文件
将docker/.env.example
复制一份,名称更改为1panle.env 更改你个性化的配置,比如更改默认密码
建议修改的值
- SECRET_KEY
ini
# A secret key that is used for securely signing the session cookie
# and encrypting sensitive information on the database.
# You can generate a strong key using `openssl rand -base64 42`.
SECRET_KEY=sk-9f73s3ljTXVcMT3Blb3ljTqtsKiGHXVcMT3BlbkFJLK7U # 修改此值
- DB Password
DB_USERNAME,DB_PORT可以考虑不修改
ini
# ------------------------------
# Database Configuration
# The database uses PostgreSQL. Please use the public schema.
# It is consistent with the configuration in the 'db' service below.
# ------------------------------
DB_USERNAME=postgres
DB_PASSWORD=difyai123456 # 修改此值
DB_HOST=db
DB_PORT=5432
DB_DATABASE=dify
- Redis Password
如果使用的是Sentinel模式或集群,请对应的配置
ini
# ------------------------------
# Redis Configuration
# This Redis configuration is used for caching and for pub/sub during conversation.
# ------------------------------
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_USERNAME=
REDIS_PASSWORD=difyai123456 # 修改此值
REDIS_USE_SSL=false
REDIS_DB=0
⚠️ 注意:这个修改后对应的环境变量CELERY_BROKER_URL
也需要修改
ini
# Use redis as the broker, and redis db 1 for celery broker.
# Format as follows: `redis://<redis_username>:<redis_password>@<redis_host>:<redis_port>/<redis_database>`
# Example: redis://:difyai123456@redis:6379/1
# If use Redis Sentinel, format as follows: `sentinel://<sentinel_username>:<sentinel_password>@<sentinel_host>:<sentinel_port>/<redis_database>`
# Example: sentinel://localhost:26379/1;sentinel://localhost:26380/1;sentinel://localhost:26381/1
CELERY_BROKER_URL=redis://:difyai123456@redis:6379/1 # 修改此值
BROKER_USE_SSL=false
- Waviate API Key dify默认使用的是Waviate作为向量数据库
ini
# The type of vector store to use.
# Supported values are `weaviate`, `qdrant`, `milvus`, `myscale`, `relyt`, `pgvector`, `pgvecto-rs`, `chroma`, `opensearch`, `tidb_vector`, `oracle`, `tencent`, `elasticsearch`, `elasticsearch-ja`, `analyticdb`, `couchbase`, `vikingdb`, `oceanbase`, `opengauss`, `tablestore`.
VECTOR_STORE=weaviate
# The Weaviate endpoint URL. Only available when VECTOR_STORE is `weaviate`.
WEAVIATE_ENDPOINT=http://weaviate:8080
WEAVIATE_API_KEY=WVF5YThaHlkYwhGUSmCRgsX3tD5ngdN8pkih # 修改此值
⚠️ 注意:这个修改后对应的服务的环境变量WEAVIATE_AUTHENTICATION_APIKEY_ALLOWED_KEYS
也需要修改
ini
# ------------------------------
# Environment Variables for weaviate Service
# (only used when VECTOR_STORE is weaviate)
# ------------------------------
...
WEAVIATE_AUTHENTICATION_APIKEY_ALLOWED_KEYS=WVF5YThaHlkYwhGUSmCRgsX3tD5ngdN8pkih # 修改此值
[email protected]
WEAVIATE_AUTHORIZATION_ADMINLIST_ENABLED=true
[email protected]
具体环境变量说明请参考dify官方说明:环境变量详细说明
安装部署
创建持久化文件夹
在1Panel控制台->文件
创建一个文件夹用于docker创建本地持久化存储 这里选择了/opt/dify
上传文件夹docker
到上一步创建的文件夹
如上例:文件夹结构为/opt/dify/docker
创建容器编排
- 在
1Panel控制台->容器->编排
点击创建编排 - 来源选择填写路径选择,并填写上传文件夹docker-composer.yaml的地址, 如:/opt/dify/docker/docker-composer.yaml
- 环境变量可以为空
- 点击确认,等待docker镜像启动完成
- 到
1Panel控制台->容器
确定所有的容器都正常启动
设置管理员账号
访问http://<your_dify_site>/install页面 设置管理原账号
使用你设置的账号登录你dify
访问http://<your_dify_site>/,开始你的AI应用之旅吧!