Compare commits

..

No commits in common. "3853165bd15ec352e60289c62ea736fb2e7d3781" and "7a021dba860482ff17efe8ecfe7716be29dae08a" have entirely different histories.

View file

@ -15,18 +15,13 @@ The goal is to keep it simple! For feature-rich solutions are [hedgedoc](https:/
## Features ## Features
**Use cases:**
- shared notepad on multiple machines
- collaboration on the same notepage with multiple people (notes, config, etc)
- config changes in aukpad > `curl -o app.conf https://aukpad.com/{pad_id}/raw` > change config in aukpad > repeat `curl` command
**Available**: **Available**:
- live collab notepad - live collab notepad
- line numbers - line numbers
- custom path `{pad_id}` for more privacy - custom path for more privacy
- optional caching with valkey/redis - optional caching with valkey/redis
- pad creation with HTTP post requests with curl (see *Usage*) - pad creation with HTTP post requests with curl (see *Usage*)
- `{pad_id}/raw` HTTP endpoint - `[pad_id]/raw` HTTP endpoint
**Ideas**: **Ideas**:
[Check out the open feature requests](https://git.uphillsecurity.com/cf7/aukpad/issues?q=&type=all&sort=&state=open&labels=12&milestone=0&project=0&assignee=0&poster=0&archived=false) [Check out the open feature requests](https://git.uphillsecurity.com/cf7/aukpad/issues?q=&type=all&sort=&state=open&labels=12&milestone=0&project=0&assignee=0&poster=0&archived=false)
@ -50,57 +45,6 @@ ip -br a | curl -X POST https://aukpad.com --data-binary @- # command output
## Installation ## Installation
**Please use a reverse proxy and TLS in production!**
### Docker
**Simple / Testing**
`docker run -p 127.0.0.1:8000:8000 git.uphillsecurity.com/cf7/aukpad:latest`
Open `127.0.0.1:8000`
**Adv. example with Podman**
```bash
# Create Pod
podman pod create --name aukpad-pod -p 127.0.0.1:8000:8000
# Start Valkey Container (or replace with redis)
podman run -d --name aukpad-cache \
--replace \
--pod aukpad-pod \
--restart=unless-stopped \
docker.io/valkey/valkey:7 \
--requirepass xeZNopyIeMMncqDFPHtJQwMwIathgMWo \
--maxmemory 2gb \
--maxmemory-policy allkeys-lru \
--save "" \
--appendonly no \
--bind 0.0.0.0 \
--protected-mode yes
# Start aukpad Container
podman run -d --name aukpad-app \
--replace \
--pod aukpad-pod \
--read-only \
--tmpfs /tmp \
--security-opt no-new-privileges:true \
--cap-drop ALL \
--user 1000:1000 \
-e USE_VALKEY=true \
-e VALKEY_URL=redis://:xeZNopyIeMMncqDFPHtJQwMwIathgMWo@localhost:6379 \
-e MAX_TEXT_SIZE=5 \
-e MAX_CONNECTIONS_PER_IP=20 \
-e RETENTION_HOURS=72 \
git.uphillsecurity.com/cf7/aukpad:latest
```
*Tested only with Podman - Docker-Compose file might follows.*
Enable support for web sockets in your reverse proxy of choice! - Nginx config example will be added at some point.
### Environment Variables ### Environment Variables
The following environment variables can be configured: The following environment variables can be configured:
@ -111,9 +55,13 @@ The following environment variables can be configured:
| `VALKEY_URL` | `redis://localhost:6379/0` | Redis/Valkey connection URL | | `VALKEY_URL` | `redis://localhost:6379/0` | Redis/Valkey connection URL |
| `MAX_TEXT_SIZE` | `5` | Maximum text size in MB (5MB default) | | `MAX_TEXT_SIZE` | `5` | Maximum text size in MB (5MB default) |
| `MAX_CONNECTIONS_PER_IP` | `10` | Maximum concurrent connections per IP address | | `MAX_CONNECTIONS_PER_IP` | `10` | Maximum concurrent connections per IP address |
| `RETENTION_HOURS` | `48` | How long to retain pads in hours after last access | | `RETENTION_HOURS` | `48` | How long to retain pads in hours (48 hours default) |
| `DESCRIPTION` | `powered by aukpad.com` | Instance description shown on info page | | `DESCRIPTION` | `powered by aukpad.com` | Instance description shown on info page |
### Running
WORK IN PROGRESS
--- ---
## Security ## Security