diff --git a/readme b/readme
index 9d4edf04649e5ca2d4ca91a88cd8cb7f81ed1b3e..7ae77cde39a05cab5421975220229d076f81247a 100644
--- a/readme
+++ b/readme
@@ -11,6 +11,8 @@ Contents
 
   pylintrc: configuration of pylint (used by CI)
   readme: this file (are you even following?)
+  run_docker_container.sh: script to start a docker container in CWD for testing (must be run in CastorScript folder)
+  run_pylint.sh: script to run pylint on all files in Script
   run_unit_tests.sh: script to search and run Python unit tests
   script_setup.sh: script used in P1 to setup the running environment
   watchdog.sh: script called by sysadmin's cron task that starts and maintains
diff --git a/run_docker_container.sh b/run_docker_container.sh
new file mode 100755
index 0000000000000000000000000000000000000000..e1a8cdc423376cf59ffc338ae03f1bdb431eb644
--- /dev/null
+++ b/run_docker_container.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+# how to use docker for local testing
+# install docker
+
+# Logout and login again and run.
+#================================
+
+# run this command that does the following:
+# 1 docker! 
+# 2 Create a new container, 
+# 3 with an interactive shell, 
+# 4 mount this dir (hopefully the CastorScript dir!) to the container, 
+# 5 mount other important storage locations (AFS, cvmfs etc), 
+# 6 remove the container after shutdown, 
+# 7 and run the centos7 image, 
+# 8 when started, run the run_unit_tests script in bash
+# 1          2   3            4                       5                                          6         7                                                           8
+# docker run -it --privileged -v `pwd`:`pwd` -w `pwd` -v /cvmfs:/cvmfs:shared,ro -v /afs:/afs:ro --rm=true gitlab-registry.cern.ch/atlas-tdaq-software/tdaq_ci:centos7 bash ./run_unit_tests.sh
+# or without running the script:
+docker run -it --privileged -v `pwd`:`pwd` -w `pwd` -v /cvmfs:/cvmfs:shared,ro -v /afs:/afs:ro --rm=true gitlab-registry.cern.ch/atlas-tdaq-software/tdaq_ci:centos7 bash
\ No newline at end of file
diff --git a/run_pylint.sh b/run_pylint.sh
new file mode 100755
index 0000000000000000000000000000000000000000..3d93fc577eaefddeea503c6d3a23b178383e2d45
--- /dev/null
+++ b/run_pylint.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+# this script is made to run in docker
+if ! [ -v TDAQ_LCG_RELEASE ]
+then
+    source /afs/cern.ch/atlas/project/tdaq/cmake/cmake_tdaq/bin/cm_setup.sh nightly
+fi
+
+/cvmfs/sft.cern.ch/lcg/views/$TDAQ_LCG_RELEASE/$CMTCONFIG/bin/pylint $(find Script/ -name '*.py' -a -not -name config.py)
\ No newline at end of file
diff --git a/run_unit_tests.sh b/run_unit_tests.sh
index 9b9af0d5cca7d2f35f3e1d6c16a380e4406561ab..a26a2fd36c300ebf985e584b32ce35e7fe6e93be 100755
--- a/run_unit_tests.sh
+++ b/run_unit_tests.sh
@@ -1,7 +1,15 @@
 #!/bin/bash
+# Warning dragons be here:
+# this script is intended to run in a docker image with the following command:
+# sudo docker run -it --privileged -v `pwd`:`pwd` -w `pwd` -v /cvmfs:/cvmfs:shared,ro -v /afs:/afs:ro --rm=true gitlab-registry.cern.ch/atlas-tdaq-software/tdaq_ci:centos7 bash ./run_unit_tests.sh
 TOPDIR=$(cd `dirname $0` && echo `pwd`"/Script" )
 STARTDIR=$(echo $TOPDIR"/UnitTests")
 
+if ! [ -v TDAQ_LCG_RELEASE ]
+then
+    source /afs/cern.ch/atlas/project/tdaq/cmake/cmake_tdaq/bin/cm_setup.sh nightly
+fi
+
 python -m unittest discover -t $TOPDIR -s $STARTDIR -p "Test_*.py"  -f --verbose
 
 #for Gitlab CI: