hanabira.org is free open-source self-hostable Japanese and Korean learning website portal
10K+
Hanabira (https://hanabira.org/) can be run locally or on your server/laptop. To get started quickly, you can run Hanabira public Docker images. Current setup requires also NGINX reverse proxy, so the containers find each other and so that Certbot can easily renew SSL certificates on our Hanabira.org server. Eventually we will have fully containerized setup with docker-compose for one-click spin-up. Currently, Docker images are too big and un-optimized, this will be fixed once we get out of Alpha stage.
Use clean VirtualBox Linux Ubuntu based VM machine.
Check config directory in the GitHub repo https://github.com/tristcoil/hanabira.org , put .env and config.json files into a directory ideally called hanabira from which we will mount these files into the containers. These files will contain your OpenAI and DEEPL API keys. Also put hanabira.org NGINX file into /etc/nginx/sites-enabled directory (and delete default config file). Restart NGINX.
Start pre-made public hanabira containers. One of the containers will need to mount the config files.
#FRONTEND-NEXT
docker run -d -p 3000:3000 -e REACT_APP_HOST_IP=$(hostname -I | awk '{print $1}') --restart=unless-stopped coil/hanabira.org:frontend-next
#STATIC BACKEND EXPRESS+DB
docker run -d -p 8000:8000 -e REACT_APP_HOST_IP=$(hostname -I | awk '{print $1}') --restart=unless-stopped coil/hanabira.org:express-db
#DYNAMIC BACKEND FLASK+DB
docker run -d -p 5100:5100 -v /home/coil/user_db:/data/db --add-host=host.docker.internal:host-gateway --restart=unless-stopped coil/hanabira.org:flask-dynamic-db
# DICTIONARY/TEXT PARSER/YOUTUBE backend image /d-api/v1
docker run -d -p 5200:5200 --add-host=host.docker.internal:host-gateway -v $(pwd)/.env:/app/.env -v $(pwd)/config.json:/app/config.json --restart=unless-stopped coil/hanabira.org:dictionary-db
Hanabira will be then accessible locally on: http://localhost:8080/
If you cannot reach the website locally, we recommend to check if all containers are running and to clear browser cache.
Notes on Docker and NGINX handling:
Setup reverse NGINX proxy:
sudo apt-get install nginx
sudo systemctl enable nginx
sudo systemctl start nginx
# put hanabira.org file into /etc/nginx/sites-enabled directory, also delete file called "default" so it is not conflicting our new config and restart nginx
sudo systemctl restart nginx
sudo systemctl status nginx
Install Docker:
sudo apt-get install docker-compose
sudo usermod -aG docker $USER
(then reboot VM for the changes to take effect, there are options without reboot, this one is just easy)
Content type
Image
Digest
sha256:c0dfa7a6f…
Size
1.3 GB
Last updated
over 1 year ago
docker pull coil/hanabira.org:frontend-next