diff --git a/daemon/Dockerfile b/daemon/Dockerfile
index 8bd418dde5c3871c7e56b73aeea72146eeaa5a67..43e2d04563ae5ebac04a35096d6e832f81f856b0 100644
--- a/daemon/Dockerfile
+++ b/daemon/Dockerfile
@@ -78,6 +78,7 @@ ENV EXTERNAL_IP_CMD=""
 ENV EXTERNAL_IP=""
 
 VOLUME ["/data"]
+VOLUME ["/session"]
 VOLUME ["/tmp"]
 
 ENTRYPOINT ["/entrypoint.sh"]
diff --git a/daemon/entrypoint.sh b/daemon/entrypoint.sh
index 8679a8ab2108e3c9b1e967a49f259ee01a1bf3df..7f44c86cc322d03adb9818c17aebafd7977aa899 100755
--- a/daemon/entrypoint.sh
+++ b/daemon/entrypoint.sh
@@ -1,9 +1,8 @@
 #!/bin/sh
 set -eu
 
-mkdir -p /tmp/.session
 echo > /tmp/rtorrent.log
-rm /tmp/.session/rtorrent.lock /tmp/.session/rtorrent.pid || true
+rm /session/rtorrent.lock /session/rtorrent.pid || true
 
 if [ -n "$EXTERNAL_IP_CMD" ]; then
   EXTERNAL_IP=$(eval "$EXTERNAL_IP_CMD")
diff --git a/daemon/src/rtorrent.rc b/daemon/src/rtorrent.rc
index a95df6eb43ef3a8196b3a0ceaadcd9a0855207ce..3019bc467b125da6ff389b907931341b86529d27 100644
--- a/daemon/src/rtorrent.rc
+++ b/daemon/src/rtorrent.rc
@@ -4,8 +4,8 @@
 
 method.insert = cfg.download, private|const|string, /data/
 method.insert = cfg.tmp,      private|const|string, /tmp/
+method.insert = cfg.session,  private|const|string, /session/
 method.insert = cfg.logfile,  private|const|string, (cat,(cfg.tmp),"rtorrent.log")
-method.insert = cfg.session,  private|const|string, (cat,(cfg.tmp),".session/")
 
 # Listening port for incoming peer traffic
 network.port_range.set = 50000-50000