A small project planning tool designed specifically for weddings.
- HTML 53.7%
- Python 41.6%
- JavaScript 2.7%
- CSS 1.2%
- Dockerfile 0.6%
- Other 0.2%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| backend | ||
| container | ||
| frontend | ||
| .containerignore | ||
| .gitignore | ||
| .python-version | ||
| Containerfile | ||
| dovely.container | ||
| manage.py | ||
| package-lock.json | ||
| package.json | ||
| pyproject.toml | ||
| README.md | ||
| uv.lock | ||
Overview
Dovely is a small project planning service designed for weddings.
Local
Build and run the container like so:
$ podman build -t dovely .
$ podman run -p 8000:8000 \
> -v dovely-data:/data \
> -v dovely-db:/var/lib/postgresql/data \
> -v dovely-media:/var/www/media \
> dovely
Quadlet
The dovely.container file is a Quadlet. After building the container image,
you can install the systemd unit onto the host:
$ podman build -t dovely .
$ podman quadlet install dovely.container
NGINX
Use Let's Encrypt to get a TLS certificate:
$ certbot certonly --standalone -d getdovely.com -d www.getdovely.com
You can then expose the container by including the following stanza within an NGINX config:
server {
server_name getdovely.com www.getdovely.com;
listen 80;
listen [::]:80;
listen 443 ssl;
listen [::]:443 ssl;
ssl_certificate /etc/letsencrypt/live/getdovely.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/getdovely.com/privkey.pem;
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Connection $http_connection;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}