diff --git a/README.rst b/README.rst
index 0c974881202dda1cb5cda940d4a2c6c4bd56b911_UkVBRE1FLnJzdA==..4ae10c14846ba5c43a47c35beeffb5b185f24125_UkVBRE1FLnJzdA== 100644
--- a/README.rst
+++ b/README.rst
@@ -1,5 +1,5 @@
 rodolf
-=============================================================
+======
 
 RDF data production monitoring (RODOLF)
 
@@ -53,9 +53,10 @@
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 The docker-compose.yaml contains the following containers :
-- rodolf : the cubicweb instance
-- frontend: nextjs front
+- rodolf-backend: the cubicweb instance
+- rodolf-frontend: the nextjs front
+- virtuoso: the rdf repository and sparql endpoint
 - minio:  object storage server
 - postgresql: sql database server
 - redis: key value database for session and rq tasks
 
@@ -58,13 +59,10 @@
 - minio:  object storage server
 - postgresql: sql database server
 - redis: key value database for session and rq tasks
 
-Environement initialisation :
-+++++++++++++++++++++++++++++
-
-When starting for the first time tou must run following commands:
+When starting for the first time you must run following commands:
 
 .. code-block::
 
     # install node modules in your volumes
     docker compose run --rm --entrypoint npm rodolf-frontend ci
@@ -66,7 +64,8 @@
 
 .. code-block::
 
     # install node modules in your volumes
     docker compose run --rm --entrypoint npm rodolf-frontend ci
+
     # set the localinstall egg in your volume
     docker compose run --rm --entrypoint pip rodolf install -e /src
@@ -71,4 +70,5 @@
     # set the localinstall egg in your volume
     docker compose run --rm --entrypoint pip rodolf install -e /src
+
     # create the instance
     docker compose run --entrypoint docker-cubicweb-helper rodolf create-instance
@@ -73,6 +73,7 @@
     # create the instance
     docker compose run --entrypoint docker-cubicweb-helper rodolf create-instance
-    #init the db
+
+    # init the db
     docker compose run --rm --entrypoint cubicweb-ctl rodolf db-init instance -a
 
 Then to start the services do:
@@ -81,6 +82,19 @@
 
     docker compose up --build -d
 
+and point your browser to::
+
+  # virtuoso
+  http://localhost:8890/
+
+  # rodolf frontend
+  http://localhost:3000/
+
+  # rodolf backend
+  http://localhost:8080/
+
+  # minio
+  http://localhost:9001/
 
 Learn More
 ----------
diff --git a/docker-compose.yaml b/docker-compose.yaml
index 0c974881202dda1cb5cda940d4a2c6c4bd56b911_ZG9ja2VyLWNvbXBvc2UueWFtbA==..4ae10c14846ba5c43a47c35beeffb5b185f24125_ZG9ja2VyLWNvbXBvc2UueWFtbA== 100644
--- a/docker-compose.yaml
+++ b/docker-compose.yaml
@@ -1,1 +1,6 @@
+networks:
+  backend:
+    driver: bridge
+  frontend:
+
 services:
@@ -1,5 +6,33 @@
 services:
-  rodolf:
+  # sparql service
+
+  virtuoso:
+    image: openlink/virtuoso-opensource-7
+    ports: 
+      - "8890:8890"
+      - "127.0.0.1:1111:1111"
+    environment:
+      DBA_PASSWORD: virtuoso  # admin user is 'dba'
+      VIRTUOSO_DATABASE_DIR: ./docker-data/virtuoso
+    volumes:
+      - ./docker-data/virtuoso:/opt/virtuoso-opensource/database
+    networks:
+      - frontend
+      - backend
+
+  # rodolf application
+
+  rodolf-frontend:
+    build: ./frontend
+    ports:
+      - "3000:3000"
+    networks:
+      - frontend
+    command: dev
+    volumes:
+      - ./frontend:/app/
+
+  rodolf-backend:
     user: root
     build: .
     ports:
@@ -14,6 +47,10 @@
       REDIS_SESSIONS_SECRET: loutre
       DEBUG: 1
       CW_INTERFACE: 0.0.0.0
+      AWS_S3_ENDPOINT_URL: http://minio:9000/
+      AWS_ACCESS_KEY_ID: test
+      AWS_SECRET_ACCESS_KEY: test1234
+      RODOLF_S3_BUCKET: rodolf
     depends_on:
       redis:
         condition: service_started
@@ -28,8 +65,29 @@
       - ./docker-data/config/:/etc/cubicweb.d/instance/
       - .:/src/
 
-  rodolf-frontend:
-    build: ./frontend
-    ports:
-      - "3000:3000"
+  rodolf-worker:
+    user: root
+    build: .
+    command: ["cubicweb-ctl", "rq-worker", "instance"]
+    environment:
+      CW_DB_HOST: db
+      CW_DB_PORT: 5432
+      CW_DB_NAME: rodolf
+      CW_DB_USER: rodolf
+      CW_DB_PASSWORD: rodolf
+      REDIS_SESSIONS_URL: redis://redis:6379
+      REDIS_SESSIONS_SECRET: loutre
+      DEBUG: 1
+      CW_INTERFACE: 0.0.0.0
+      AWS_S3_ENDPOINT_URL: http://minio:9000/
+      AWS_ACCESS_KEY_ID: test
+      AWS_SECRET_ACCESS_KEY: test1234
+      RODOLF_S3_BUCKET: rodolf
+    depends_on:
+      redis:
+        condition: service_started
+      db:
+        condition: service_healthy
+      minio:
+        condition: service_started
     networks:
@@ -35,4 +93,3 @@
     networks:
-      - frontend
-    command: dev
+      - backend
     volumes:
@@ -38,5 +95,9 @@
     volumes:
-      - ./frontend:/app/
+      - ./docker-data/config/:/etc/cubicweb.d/instance/
+      - .:/src/
+
+
+  # storage services used by rodolf-backend
 
   minio:
     image: minio/minio
@@ -74,16 +135,3 @@
     networks:
       - backend
 
-  virtuoso:
-    image: openlink/virtuoso-opensource-7
-    ports: ["8890:8890", "127.0.0.1:1111:1111"]
-    environment:
-      DBA_PASSWORD: virtuoso  # admin user is 'dba'
-      VIRTUOSO_DATABASE_DIR: ./docker-data/virtuoso
-    volumes:
-      - ./docker-data/virtuoso:/opt/virtuoso-opensource/database
-
-networks:
-  backend:
-    driver: bridge
-  frontend: