Notea S3 Note-taking App
Last Updated: 15th September 2021
WARNING: Minio's executable was moved without notice from /usr/bin/minio
to /opt/bin/minio
. The docker-compose below has been updated. If the old path is used with a new Minio image, Minio will not start. - 2021-09-15
What is Notea?
"Notea is a privacy-first, open-source note-taking application. It supports Markdown syntax, sharing, responsive and more." - https://cinwell.com/notea/
Live Demo: https://notea.cinwell.com/
Prerequisites:
- Server Setup
- Docker
Ubuntu Guide: https://docs.docker.com/engine/install/ubuntu/
Debian Guide: https://docs.docker.com/engine/install/debian/ - Docker-Compose -
sudo apt install docker-compose
- Reverse Proxy - Caddy Setup Guide
Install
Notea does not require a database instead it relies on an AWS S3 or S3
Compatible bucket. We will be setting up Minio which is a self-hosted compatible S3 software. Instead of this, you could use AWS S3 (5GB Free) or another compatible provider such as Scaleway (75GB Free).
- Head to your home directory:
cd
- Create a new directory for notea:
mkdir notea && cd notea
- Create docker-compose.yaml:
nano docker-compose.yaml
Use the following template:
version: '3'
services:
notea:
image: cinwell/notea
container_name: notea
environment:
- STORE_ACCESS_KEY=CHANGEME1
- STORE_SECRET_KEY=CHANGEME2
- STORE_BUCKET=notea
- STORE_END_POINT=https://minio.example.com
- STORE_FORCE_PATH_STYLE=true
- PASSWORD=CHANGEME3
- COOKIE_SECURE=true
- BASE_URL="https://notea.example.com"
networks:
default:
ipv4_address: 10.10.10.16
notea-s3:
image: minio/minio
container_name: notea-s3
environment:
MINIO_ACCESS_KEY: CHANGEME1
MINIO_SECRET_KEY: CHANGEME2
volumes:
- ./minio-data:/data
entrypoint: sh
command: -c 'mkdir -p /data/notea && /opt/bin/minio server /data'
networks:
default:
ipv4_address: 10.10.10.15
networks:
default:
external:
name: dockernet
*When using images within your notes, the web app will directly query the S3 Bucket, therefore Minio should be set up with a hostname and reverse proxy.
- Spin it up:
sudo docker-compose up -d
- Configure your reverse proxy
Example Caddyfile config:
notea.example.com {
reverse_proxy 10.10.10.16:3000
}
minio.example.com {
reverse_proxy 10.10.10.15:9000
}
Enjoy!
Comments
Cover Image Credit: https://unsplash.com/@cathrynlavery