diff --git a/docker/README.md b/docker/README.md
index 32567e667980f2e374b1fbd8fdea7fd2d3ff838c..e93db2e0f64c888041ce7596d67394ff067e74fa 100644
--- a/docker/README.md
+++ b/docker/README.md
@@ -69,6 +69,7 @@ volumes:
 | `DUNITER_VALIDATOR` | Boolean (`true` / `false`) to run the node in validator mode. Configure the polkadot options `--validator --rpc-methods Unsafe`. | `false` |
 | `DUNITER_DISABLE_PROMETHEUS` | Boolean to disable the Prometheus endpoint on port 9615. | `false` |
 | `DUNITER_DISABLE_TELEMETRY` | Boolean to disable connecting to the Substrate tememetry server. | `false` |
+| `DUNITER_PRUNING_PROFILE` | * `default`<br> * `archive`: keep all blocks and state blocks<br> * `light`: keep only last 256 state blocks and last 14400 blocks (one day duration) | `default` |
 
 # Other duniter options
 
diff --git a/docker/docker-entrypoint b/docker/docker-entrypoint
index 05b9497d0ee96f8cbe2486d96c400e1aafc53c59..8e751d47be9f2de3bfb4c35ce9094de73988d1ac 100755
--- a/docker/docker-entrypoint
+++ b/docker/docker-entrypoint
@@ -55,6 +55,21 @@ if [ "$DUNITER_DISABLE_TELEMETRY" = true ]; then
   set -- "$@" --no-telemetry
 fi
 
+DUNITER_PRUNING_PROFILE="${DUNITER_PRUNING_PROFILE:-default}"
+case "$DUNITER_PRUNING_PROFILE" in
+  default)
+    ;;
+  archive)
+    set -- "$@" --state-pruning archive --blocks-pruning archive
+    ;;
+  light)
+    set -- "$@" --blocks-pruning 14400
+    ;;
+  *)
+    echo "ERROR: ignoring unknown DUNITER_PRUNING_PROFILE value '$DUNITER_PRUNING_PROFILE'" >&2
+    ;;
+esac
+
 DUNITER_CHAIN_NAME="${DUNITER_CHAIN_NAME:-dev}"
 case "$DUNITER_CHAIN_NAME" in
   dev)