diff --git a/tools/jenkins/build_docker_and_run_tests.sh b/tools/jenkins/build_docker_and_run_tests.sh
index f554b65f709a771107d38005f121feb5e44a7993..fa6bd44e180cd8d9a4181c1e35b32a5f4b060f55 100755
--- a/tools/jenkins/build_docker_and_run_tests.sh
+++ b/tools/jenkins/build_docker_and_run_tests.sh
@@ -57,7 +57,7 @@ docker run \
   -e "config=$config" \
   -e "arch=$arch" \
   -e CCACHE_DIR=/tmp/ccache \
-  -it \
+  -i $TTY_FLAG \
   -v "$git_root:/var/local/jenkins/grpc" \
   -v /tmp/ccache:/tmp/ccache \
   -w /var/local/git/grpc \
diff --git a/tools/run_tests/run_tests.py b/tools/run_tests/run_tests.py
index 1491b1c41c25ab42735aa7c6f2be1e785ee79598..f7e9805393d217f80c6b67f064a47cd7ad8e13e0 100755
--- a/tools/run_tests/run_tests.py
+++ b/tools/run_tests/run_tests.py
@@ -484,6 +484,8 @@ if args.use_docker:
   env['RUN_TESTS_COMMAND'] = run_tests_cmd
   if args.xml_report:
     env['XML_REPORT'] = args.xml_report
+  if not args.travis:
+    env['TTY_FLAG'] = '-t'  # enables Ctrl-C when not on Jenkins.
 
   subprocess.check_call(['tools/jenkins/build_docker_and_run_tests.sh'],
                         shell=True,