diff --git a/docker-compose.yml b/docker-compose.yml
new file mode 100644
index 0000000000000000000000000000000000000000..365f25da182b5c80d3e21fa4e6ed55c46ce70c9f
--- /dev/null
+++ b/docker-compose.yml
@@ -0,0 +1,14 @@
+version: "2.1"
+services:
+  ntfy:
+    image: binwiederhier/ntfy
+    container_name: ntfy
+    command:
+      - serve
+    volumes:
+      - /var/cache/ntfy:/var/cache/ntfy
+      - /etc/ntfy:/etc/ntfy
+    ports:
+      - 80:80
+    restart: unless-stopped
+
diff --git a/docs/install.md b/docs/install.md
index 231b430681dff1705c465c557a4d5c56bca40d4c..ed7412314f684c45a5a691956da0f823643fbcf1 100644
--- a/docs/install.md
+++ b/docs/install.md
@@ -239,17 +239,18 @@ docker run \
     serve
 ```
 
-With other config options (configured via `/etc/ntfy/server.yml`, see [configuration](config.md) for details):
+With other config options and non-root user (configured via `/etc/ntfy/server.yml`, see [configuration](config.md) for details):
 ```bash
 docker run \
   -v /etc/ntfy:/etc/ntfy \
   -p 80:80 \
+  -u UID:GID \
   -it \
   binwiederhier/ntfy \
   serve
 ```
 
-Using docker-compose:
+Using docker-compose with non-root user:
 ```yaml
 version: "2.1"
 
@@ -259,6 +260,7 @@ services:
     container_name: ntfy
     command:
       - serve
+    user: UID:GID # optional. replace with your own user/group or uid/gid
     volumes:
       - /var/cache/ntfy:/var/cache/ntfy
       - /etc/ntfy:/etc/ntfy