SorboBot / docs /docker.md
leo-bourrel's picture
!feat: Import new sorbobot version
68a9b68

Docker and Deployment Documentation

Introduction

This document outlines the Docker configuration and deployment strategy for Sorbobot, a chatbot designed for Sorbonne Université to assist in locating academic experts. The application is containerized using Docker and hosted on Hugging Face Spaces.

Docker Configuration

Base Image and Dependencies

The Docker environment for Sorbobot is based on a Postgres image, supplemented with necessary dependencies to run a Streamlit server. This approach integrates the database and front-end interface within the same Docker container, in order to deploy it on Hugging Face which supports only one docker image.

Database Initialization

The database for Sorbobot is initialized using a dump that has been previously created and stored in a Git repository. This repository, located at https://git.isir.upmc.fr/sorbobot/sorbobot, contains essential data and schema information to set up the Postgres database correctly. During the Docker container's initialization phase, this dump is used to populate the database with the required structure and data, ensuring that the chatbot has immediate access to all necessary information for expert retrieval.

Deployment Process

Hosting on Hugging Face Spaces

Sorbobot is hosted on Hugging Face Spaces, a platform specifically designed for machine learning models and applications. This hosting choice offers seamless integration and effective showcasing of the chatbot's capabilities.

Continuous Deployment via Git

The deployment of Sorbobot is managed through an automated process linked with Git. Every 'git push' to the repository initiates an automatic update and deployment sequence

Deployment Workflow

  1. Code Updates: Developers push the latest code changes to the Git repository.
  2. Automatic Docker Build: The new changes trigger the Docker build process, incorporating recent updates into the Docker container.
  3. Deployment on Hugging Face Spaces: Following the build, the updated version of Sorbobot is automatically deployed to Hugging Face Spaces, making it accessible to users with the latest features and improvements.