webvowl / README.md
htafer's picture
Update README.md
7a1b339 verified
metadata
title: Webvowl
emoji: 🌍
short_description: Hosting of Webovwl
sdk: docker
pinned: false

WebVOWL Build Status

Deploying WebVOWL to Hugging Face Spaces

This guide explains how to deploy WebVOWL to Hugging Face Spaces using Docker.

Background

The original WebVOWL instance at https://visualdataweb.org/ is no longer available (the domain is no longer owned by VisualDataWeb). This deployment guide was created to help the community continue to access and use WebVOWL through free hosting platforms like Hugging Face Spaces.

Live Community Deployment

A working instance of WebVOWL is available at: https://huggingface.co/spaces/htafer/webvowl

This deployment is provided as a free community service, thanks to Hugging Face's generous hosting platform.

Prerequisites

  1. A Hugging Face account (sign up at https://huggingface.co)
  2. Git installed on your local machine

Deployment Steps

1. Create a New Space

  1. Go to https://huggingface.co/spaces
  2. Click "Create new Space"
  3. Configure your Space:
    • Name: Choose a name (e.g., webvowl)
    • License: MIT (or your preferred license)
    • SDK: Select Docker
    • Visibility: Public or Private (your choice)
  4. Click "Create Space"

2. Clone the Space Repository

After creating the Space, clone it to your local machine:

git clone https://huggingface.co/spaces/YOUR_USERNAME/YOUR_SPACE_NAME
cd YOUR_SPACE_NAME

3. Copy WebVOWL Files

Copy the following files from your WebVOWL directory to the Space directory:

# From your WebVOWL directory
cp Dockerfile /path/to/YOUR_SPACE_NAME/
cp docker-compose.yml /path/to/YOUR_SPACE_NAME/
cp package.json /path/to/YOUR_SPACE_NAME/
cp Gruntfile.js /path/to/YOUR_SPACE_NAME/
cp webpack.config.js /path/to/YOUR_SPACE_NAME/
cp .jshintrc /path/to/YOUR_SPACE_NAME/
cp .jshintignore /path/to/YOUR_SPACE_NAME/
cp -r src /path/to/YOUR_SPACE_NAME/
cp -r util /path/to/YOUR_SPACE_NAME/
cp README.md /path/to/YOUR_SPACE_NAME/

Or use the provided README_HUGGINGFACE.md file as your Space's README.

4. Push to Hugging Face

cd /path/to/YOUR_SPACE_NAME
git add .
git commit -m "Initial WebVOWL deployment"
git push

5. Wait for Build

Hugging Face will automatically build your Docker container. You can monitor the build process in the "Logs" tab of your Space.

The build process includes:

  • Building OWL2VOWL from source (Java/Maven)
  • Building WebVOWL frontend (Node.js)
  • Deploying to Tomcat server

This may take 5-10 minutes for the first build.

Note: The Dockerfile has been updated to fix artifact download issues that were present in earlier versions. The current multi-stage build process now successfully builds both OWL2VOWL and WebVOWL from source.

6. Access Your Application

Once the build is complete, your WebVOWL instance will be available at:

https://YOUR_USERNAME-YOUR_SPACE_NAME.hf.space

Configuration Notes

  • Port: The application runs on port 7860 (Hugging Face Spaces standard port)
  • Memory: The default Space has 16GB RAM, which should be sufficient for WebVOWL
  • Persistent Storage: Hugging Face Spaces are stateless. If you need persistent storage, consider using Hugging Face Datasets or external storage

Troubleshooting

Build Fails

Check the "Logs" tab in your Space for error messages. Common issues:

  • Insufficient memory during Maven build
  • Network issues downloading dependencies

Application Not Responding

  • Check that the Dockerfile exposes port 7860
  • Verify Tomcat is running by checking the logs
  • Ensure the WAR file was properly extracted

Updating Your Deployment

To update your deployment:

cd /path/to/YOUR_SPACE_NAME
# Make your changes
git add .
git commit -m "Update description"
git push

Hugging Face will automatically rebuild and redeploy your Space.

Resources