diff --git a/src/com/mirantis/mk/Debian.groovy b/src/com/mirantis/mk/Debian.groovy
index 11b8f2d..9f3bd66 100644
--- a/src/com/mirantis/mk/Debian.groovy
+++ b/src/com/mirantis/mk/Debian.groovy
@@ -32,7 +32,7 @@
     def img = dockerLib.getImage("tcpcloud/debian-build-${os}-${dist}", image)
     def workspace = common.getWorkspace()
 
-    img.inside("-v ${workspace}:${workspace} -u root:root" ) {
+    img.inside("-u root:root" ) {
         sh("""cd ${workspace} && (which eatmydata || (apt-get update && apt-get install -y eatmydata)) &&
             export LD_LIBRARY_PATH=\${LD_LIBRARY_PATH:+"\$LD_LIBRARY_PATH:"}/usr/lib/libeatmydata &&
             export LD_PRELOAD=\${LD_PRELOAD:+"\$LD_PRELOAD "}libeatmydata.so &&
@@ -91,7 +91,7 @@
     def img = dockerLib.getImage("tcpcloud/debian-build-${os}-${dist}", image)
     def workspace = common.getWorkspace()
 
-    img.inside("-v ${workspace}:${workspace} -u root:root" ) {
+    img.inside("-u root:root" ) {
         sh("""cd ${workspace} && apt-get update && apt-get install -y build-essential devscripts &&
         cd ${dir} && uscan --download-current-version &&
         dpkg-buildpackage -S -nc -uc -us""")
@@ -121,7 +121,7 @@
     def dist = imageArray[1]
     def img = dockerLib.getImage("tcpcloud/debian-build-${os}-${dist}", image)
 
-    img.inside("-v ${workspace}:${workspace} -u root:root") {
+    img.inside("-u root:root") {
 
         withEnv(["DEBIAN_FRONTEND=noninteractive", "DEBFULLNAME='${gitName}'", "DEBEMAIL='${gitEmail}'"]) {
             sh("""cd ${workspace} && (which eatmydata || (apt-get update && apt-get install -y eatmydata)) &&
@@ -173,7 +173,7 @@
     def os = imageArray[0]
     def dist = imageArray[1]
     def img = dockerLib.getImage("tcpcloud/debian-build-${os}-${dist}", image)
-    img.inside("-v ${workspace}:${workspace} -u root:root") {
+    img.inside("-u root:root") {
         sh("""cd ${workspace} && apt-get update && apt-get install -y lintian &&
             lintian -Ii -E --pedantic --profile=${profile} ${changes}""")
     }
