Docker-compose#
本指南介绍如何使用 docker-compose
运行带有 Elasticsearch 的 Argilla 服务器。
使用 docker-compose
启动 Argilla 和 Elasticsearch#
对于此方法,您首先需要安装 Docker Compose。
然后,创建一个文件夹
mkdir argilla && cd argilla
并使用以下命令启动 docker 容器化的 Web 应用程序,在设置环境变量 ARGILLA_AUTH_SECRET_KEY
的值之后,该值可以使用 openssl rand -hex 32
生成
wget -O docker-compose.yaml https://raw.githubusercontent.com/argilla-io/argilla/main/docker/docker-compose.yaml && docker-compose up -d
警告
最新版本的 docker 应该在执行时不带破折号 ‘-’,例如
docker compose up -d
这是一种便捷的方式,因为它自动包含 Elasticsearch 实例,Argilla 的主要持久层。
警告
请记住,如果您执行
docker-compose down
您将丢失 Argilla 中的所有数据集!
提示
相反,执行
docker-compose stop
注意
默认情况下,遥测功能已启用。这有助于我们改进产品。有关指标和禁用它们的更多信息,请查看 遥测。
持久化 ElasticSearch 数据#
为了避免在 docker-compose/服务器关闭时丢失所有数据,您可以通过在 docker-compose 中挂载卷来添加一些持久性。
为此,修改 elasticsearch 服务并在 docker-compose.yaml
文件中创建一个新卷
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:8.5.3
container_name: elasticsearch
environment:
- node.name=elasticsearch
- cluster.name=es-argilla-local
- discovery.type=single-node
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
networks:
- argilla
# Add the volume to the elasticsearch service
volumes:
- elasticdata:/usr/share/elasticsearch/data
argilla:
# ... here goes the rest of the docker-compose.yaml
# ...
# At the end of the file create a volume for ElasticSearch
volumes:
elasticdata:
这样,即使 ElasticSearch 服务关闭,数据也将持久保存在 elasticdata 卷中。要检查它,您可以执行命令
docker volume ls
请注意,如果您想应用这些更改,并且您已经有一个先前的 docker-compose 实例正在运行,则需要再次执行 up 命令
docker-compose up -d