Update README.md
Browse files
README.md
CHANGED
|
@@ -9,3 +9,135 @@ pinned: false
|
|
| 9 |
---
|
| 10 |
WebVOWL [](https://travis-ci.org/VisualDataWeb/WebVOWL)
|
| 11 |
=======
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 9 |
---
|
| 10 |
WebVOWL [](https://travis-ci.org/VisualDataWeb/WebVOWL)
|
| 11 |
=======
|
| 12 |
+
|
| 13 |
+
|
| 14 |
+
# Deploying WebVOWL to Hugging Face Spaces
|
| 15 |
+
|
| 16 |
+
This guide explains how to deploy WebVOWL to Hugging Face Spaces using Docker.
|
| 17 |
+
|
| 18 |
+
## Background
|
| 19 |
+
|
| 20 |
+
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.
|
| 21 |
+
|
| 22 |
+
## Live Community Deployment
|
| 23 |
+
|
| 24 |
+
A working instance of WebVOWL is available at:
|
| 25 |
+
**https://huggingface.co/spaces/htafer/webvowl**
|
| 26 |
+
|
| 27 |
+
This deployment is provided as a free community service, thanks to Hugging Face's generous hosting platform.
|
| 28 |
+
|
| 29 |
+
## Prerequisites
|
| 30 |
+
|
| 31 |
+
1. A Hugging Face account (sign up at https://huggingface.co)
|
| 32 |
+
2. Git installed on your local machine
|
| 33 |
+
|
| 34 |
+
## Deployment Steps
|
| 35 |
+
|
| 36 |
+
### 1. Create a New Space
|
| 37 |
+
|
| 38 |
+
1. Go to https://huggingface.co/spaces
|
| 39 |
+
2. Click "Create new Space"
|
| 40 |
+
3. Configure your Space:
|
| 41 |
+
- **Name**: Choose a name (e.g., `webvowl`)
|
| 42 |
+
- **License**: MIT (or your preferred license)
|
| 43 |
+
- **SDK**: Select **Docker**
|
| 44 |
+
- **Visibility**: Public or Private (your choice)
|
| 45 |
+
4. Click "Create Space"
|
| 46 |
+
|
| 47 |
+
### 2. Clone the Space Repository
|
| 48 |
+
|
| 49 |
+
After creating the Space, clone it to your local machine:
|
| 50 |
+
|
| 51 |
+
```bash
|
| 52 |
+
git clone https://huggingface.co/spaces/YOUR_USERNAME/YOUR_SPACE_NAME
|
| 53 |
+
cd YOUR_SPACE_NAME
|
| 54 |
+
```
|
| 55 |
+
|
| 56 |
+
### 3. Copy WebVOWL Files
|
| 57 |
+
|
| 58 |
+
Copy the following files from your WebVOWL directory to the Space directory:
|
| 59 |
+
|
| 60 |
+
```bash
|
| 61 |
+
# From your WebVOWL directory
|
| 62 |
+
cp Dockerfile /path/to/YOUR_SPACE_NAME/
|
| 63 |
+
cp docker-compose.yml /path/to/YOUR_SPACE_NAME/
|
| 64 |
+
cp package.json /path/to/YOUR_SPACE_NAME/
|
| 65 |
+
cp Gruntfile.js /path/to/YOUR_SPACE_NAME/
|
| 66 |
+
cp webpack.config.js /path/to/YOUR_SPACE_NAME/
|
| 67 |
+
cp .jshintrc /path/to/YOUR_SPACE_NAME/
|
| 68 |
+
cp .jshintignore /path/to/YOUR_SPACE_NAME/
|
| 69 |
+
cp -r src /path/to/YOUR_SPACE_NAME/
|
| 70 |
+
cp -r util /path/to/YOUR_SPACE_NAME/
|
| 71 |
+
cp README.md /path/to/YOUR_SPACE_NAME/
|
| 72 |
+
```
|
| 73 |
+
|
| 74 |
+
Or use the provided `README_HUGGINGFACE.md` file as your Space's README.
|
| 75 |
+
|
| 76 |
+
### 4. Push to Hugging Face
|
| 77 |
+
|
| 78 |
+
```bash
|
| 79 |
+
cd /path/to/YOUR_SPACE_NAME
|
| 80 |
+
git add .
|
| 81 |
+
git commit -m "Initial WebVOWL deployment"
|
| 82 |
+
git push
|
| 83 |
+
```
|
| 84 |
+
|
| 85 |
+
### 5. Wait for Build
|
| 86 |
+
|
| 87 |
+
Hugging Face will automatically build your Docker container. You can monitor the build process in the "Logs" tab of your Space.
|
| 88 |
+
|
| 89 |
+
The build process includes:
|
| 90 |
+
- Building OWL2VOWL from source (Java/Maven)
|
| 91 |
+
- Building WebVOWL frontend (Node.js)
|
| 92 |
+
- Deploying to Tomcat server
|
| 93 |
+
|
| 94 |
+
This may take 5-10 minutes for the first build.
|
| 95 |
+
|
| 96 |
+
**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.
|
| 97 |
+
|
| 98 |
+
### 6. Access Your Application
|
| 99 |
+
|
| 100 |
+
Once the build is complete, your WebVOWL instance will be available at:
|
| 101 |
+
```
|
| 102 |
+
https://YOUR_USERNAME-YOUR_SPACE_NAME.hf.space
|
| 103 |
+
```
|
| 104 |
+
|
| 105 |
+
## Configuration Notes
|
| 106 |
+
|
| 107 |
+
- **Port**: The application runs on port 7860 (Hugging Face Spaces standard port)
|
| 108 |
+
- **Memory**: The default Space has 16GB RAM, which should be sufficient for WebVOWL
|
| 109 |
+
- **Persistent Storage**: Hugging Face Spaces are stateless. If you need persistent storage, consider using Hugging Face Datasets or external storage
|
| 110 |
+
|
| 111 |
+
## Troubleshooting
|
| 112 |
+
|
| 113 |
+
### Build Fails
|
| 114 |
+
|
| 115 |
+
Check the "Logs" tab in your Space for error messages. Common issues:
|
| 116 |
+
- Insufficient memory during Maven build
|
| 117 |
+
- Network issues downloading dependencies
|
| 118 |
+
|
| 119 |
+
### Application Not Responding
|
| 120 |
+
|
| 121 |
+
- Check that the Dockerfile exposes port 7860
|
| 122 |
+
- Verify Tomcat is running by checking the logs
|
| 123 |
+
- Ensure the WAR file was properly extracted
|
| 124 |
+
|
| 125 |
+
## Updating Your Deployment
|
| 126 |
+
|
| 127 |
+
To update your deployment:
|
| 128 |
+
|
| 129 |
+
```bash
|
| 130 |
+
cd /path/to/YOUR_SPACE_NAME
|
| 131 |
+
# Make your changes
|
| 132 |
+
git add .
|
| 133 |
+
git commit -m "Update description"
|
| 134 |
+
git push
|
| 135 |
+
```
|
| 136 |
+
|
| 137 |
+
Hugging Face will automatically rebuild and redeploy your Space.
|
| 138 |
+
|
| 139 |
+
## Resources
|
| 140 |
+
|
| 141 |
+
- [Hugging Face Spaces Documentation](https://huggingface.co/docs/hub/spaces)
|
| 142 |
+
- [Docker Spaces Guide](https://huggingface.co/docs/hub/spaces-sdks-docker)
|
| 143 |
+
- [WebVOWL GitHub](https://github.com/VisualDataWeb/WebVOWL)
|