diff --git a/Makefile b/Makefile
index d44c594058eb35b5b16c99c83419805972cafa0a..e0d6f200b0dc30efd21362b1be6f2e78b74aae1d 100644
--- a/Makefile
+++ b/Makefile
@@ -141,6 +141,12 @@ endif
 ## Packaging targets ##
 #######################
 
+IS_SHELL_INTERACTIVE := $(shell [ -t 0 ] && echo yes)
+
+# The following Make variable can be used to provide extra arguments
+# used with the 'docker run' commands invoked to build the packages.
+DOCKER_RUN_EXTRA_ARGS =
+
 # Append the output of make-packaging-target to this Makefile
 # see Makefile.packaging.distro_targets
 $(shell scripts/make-packaging-target.py --generate-all > Makefile.packaging.distro_targets)
diff --git a/docker/Dockerfile_debian_10 b/docker/Dockerfile_debian_10
index 5103cb1d9a54948395f27f02b58d223940e95216..561c27bdb786d0ab1a9b45eab7ee8619a6604fa8 100644
--- a/docker/Dockerfile_debian_10
+++ b/docker/Dockerfile_debian_10
@@ -22,4 +22,4 @@ COPY packaging/rules/debian/control /tmp/builddeps/debian/control
 RUN /opt/prebuild-package-debian.sh jami-deps
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
-CMD /opt/build-package-debian.sh
+CMD ["/opt/build-package-debian.sh"]
diff --git a/docker/Dockerfile_debian_testing b/docker/Dockerfile_debian_testing
index d96630cb3611a3688e32b844013cd20fe2820ded..65d3a1268923b025df24f3c3b6102394eb0a32b3 100644
--- a/docker/Dockerfile_debian_testing
+++ b/docker/Dockerfile_debian_testing
@@ -22,4 +22,4 @@ COPY packaging/rules/debian/control /tmp/builddeps/debian/control
 RUN /opt/prebuild-package-debian.sh jami-deps
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
-CMD /opt/build-package-debian.sh
+CMD ["/opt/build-package-debian.sh"]
diff --git a/docker/Dockerfile_debian_unstable b/docker/Dockerfile_debian_unstable
index ea79b312fd0ed5605a3d81f17139fa8735383fa9..e79dcccfe57f68c00e9359c40831f495b608c65b 100644
--- a/docker/Dockerfile_debian_unstable
+++ b/docker/Dockerfile_debian_unstable
@@ -22,4 +22,4 @@ COPY packaging/rules/debian/control /tmp/builddeps/debian/control
 RUN /opt/prebuild-package-debian.sh jami-deps
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
-CMD /opt/build-package-debian.sh
+CMD ["/opt/build-package-debian.sh"]
diff --git a/docker/Dockerfile_fedora_32 b/docker/Dockerfile_fedora_32
index 14435f3ec9bc62da5ed9b928f793cabf97d8022e..9896ecf0531f2337325e63825900196ac865eb4a 100644
--- a/docker/Dockerfile_fedora_32
+++ b/docker/Dockerfile_fedora_32
@@ -76,4 +76,4 @@ RUN dnf install -y \
 
 ADD scripts/build-package-rpm.sh /opt/build-package-rpm.sh
 
-CMD /opt/build-package-rpm.sh
+CMD ["/opt/build-package-rpm.sh"]
diff --git a/docker/Dockerfile_fedora_33 b/docker/Dockerfile_fedora_33
index d207e97c1f44b7f13c43c89a0bae62b966fb582d..633b855ba2794ac078f8fa51e67c96d91a2e1b31 100644
--- a/docker/Dockerfile_fedora_33
+++ b/docker/Dockerfile_fedora_33
@@ -76,4 +76,4 @@ RUN dnf install -y \
 
 ADD scripts/build-package-rpm.sh /opt/build-package-rpm.sh
 
-CMD /opt/build-package-rpm.sh
+CMD ["/opt/build-package-rpm.sh"]
diff --git a/docker/Dockerfile_fedora_34 b/docker/Dockerfile_fedora_34
index 6a3fc2e520848b933011d32575a9b9c29d723980..23a0ccf35eaf632822f529821418a649cbd05978 100644
--- a/docker/Dockerfile_fedora_34
+++ b/docker/Dockerfile_fedora_34
@@ -76,4 +76,4 @@ RUN dnf install -y \
 
 ADD scripts/build-package-rpm.sh /opt/build-package-rpm.sh
 
-CMD /opt/build-package-rpm.sh
+CMD ["/opt/build-package-rpm.sh"]
diff --git a/docker/Dockerfile_opensuse-leap_15.2 b/docker/Dockerfile_opensuse-leap_15.2
index a97e217003349f1138e245956e0bad67f776e42d..a334372a2c4d1d4b4ef34d4f2fc348ac7b0d8f52 100644
--- a/docker/Dockerfile_opensuse-leap_15.2
+++ b/docker/Dockerfile_opensuse-leap_15.2
@@ -96,4 +96,4 @@ RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 50
 
 ADD scripts/build-package-rpm.sh  /opt/build-package-rpm.sh
 
-CMD /opt/build-package-rpm.sh
+CMD ["/opt/build-package-rpm.sh"]
diff --git a/docker/Dockerfile_opensuse-leap_15.3 b/docker/Dockerfile_opensuse-leap_15.3
index 9fd006e3de46e4c6f58e35a9bebaf780bd97333c..ca5bd38a407f5695794e1230e5f6260f8f08478b 100644
--- a/docker/Dockerfile_opensuse-leap_15.3
+++ b/docker/Dockerfile_opensuse-leap_15.3
@@ -96,4 +96,4 @@ RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 50
 
 ADD scripts/build-package-rpm.sh  /opt/build-package-rpm.sh
 
-CMD /opt/build-package-rpm.sh
+CMD ["/opt/build-package-rpm.sh"]
diff --git a/docker/Dockerfile_opensuse-tumbleweed b/docker/Dockerfile_opensuse-tumbleweed
index 606511f7a2283a5a85f657e73a1a1262938980d7..52a3b332d300a0eebf3b9a09331af5bb44b42832 100644
--- a/docker/Dockerfile_opensuse-tumbleweed
+++ b/docker/Dockerfile_opensuse-tumbleweed
@@ -101,4 +101,4 @@ RUN zypper --non-interactive install -y \
 
 ADD scripts/build-package-rpm.sh  /opt/build-package-rpm.sh
 
-CMD /opt/build-package-rpm.sh
+CMD ["/opt/build-package-rpm.sh"]
diff --git a/docker/Dockerfile_raspbian_10_armhf b/docker/Dockerfile_raspbian_10_armhf
index 44a6e26c16d92261b4583c7770e381b254b13325..b0cb8cf903f72fa69afd896504a0bdcb61b2b18a 100644
--- a/docker/Dockerfile_raspbian_10_armhf
+++ b/docker/Dockerfile_raspbian_10_armhf
@@ -79,4 +79,4 @@ RUN apt update && \
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
 
-CMD /opt/build-package-debian.sh
+CMD ["/opt/build-package-debian.sh"]
diff --git a/docker/Dockerfile_rhel_8 b/docker/Dockerfile_rhel_8
index db5566d84f99d7bd179923630654b33a9f0a3928..97597da37556e6825fb16822de2cac1f45ab3914 100644
--- a/docker/Dockerfile_rhel_8
+++ b/docker/Dockerfile_rhel_8
@@ -82,4 +82,4 @@ RUN dnf install -y \
 
 ADD scripts/build-package-rpm.sh /opt/build-package-rpm.sh
 
-CMD /opt/build-package-rpm.sh
\ No newline at end of file
+CMD ["/opt/build-package-rpm.sh"]
\ No newline at end of file
diff --git a/docker/Dockerfile_ubuntu_18.04 b/docker/Dockerfile_ubuntu_18.04
index 202d28e99b935a8735ca106d7127e61eaac33799..ae5bc5b0549791e70c0e9a5d3bc5251c6d7a4aa8 100644
--- a/docker/Dockerfile_ubuntu_18.04
+++ b/docker/Dockerfile_ubuntu_18.04
@@ -27,4 +27,4 @@ RUN update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 50
 RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 50
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
-CMD /opt/build-package-debian.sh
+CMD ["/opt/build-package-debian.sh"]
diff --git a/docker/Dockerfile_ubuntu_20.04 b/docker/Dockerfile_ubuntu_20.04
index 69f26e748075b9a718096c63f0366ecd02971280..b79f1f5a97a44961355f53e510bdbf30f82c3fa5 100644
--- a/docker/Dockerfile_ubuntu_20.04
+++ b/docker/Dockerfile_ubuntu_20.04
@@ -22,4 +22,4 @@ COPY packaging/rules/debian/control /tmp/builddeps/debian/control
 RUN /opt/prebuild-package-debian.sh jami-deps
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
-CMD /opt/build-package-debian.sh
+CMD ["/opt/build-package-debian.sh"]
diff --git a/docker/Dockerfile_ubuntu_20.10 b/docker/Dockerfile_ubuntu_20.10
index 9cd7a3bd8ecde34927b6f61a404881b84fab512d..61f850e7767bab48fbe031f1fe47068a14225f4b 100644
--- a/docker/Dockerfile_ubuntu_20.10
+++ b/docker/Dockerfile_ubuntu_20.10
@@ -22,4 +22,4 @@ COPY packaging/rules/debian/control /tmp/builddeps/debian/control
 RUN /opt/prebuild-package-debian.sh jami-deps
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
-CMD /opt/build-package-debian.sh
+CMD ["/opt/build-package-debian.sh"]
diff --git a/docker/Dockerfile_ubuntu_21.04 b/docker/Dockerfile_ubuntu_21.04
index 05ee0f295df010fa305e1f77669e30ed17d2ddba..3dcbfb967190cc70678384906248a60ec7ec4431 100644
--- a/docker/Dockerfile_ubuntu_21.04
+++ b/docker/Dockerfile_ubuntu_21.04
@@ -22,4 +22,4 @@ COPY packaging/rules/debian/control /tmp/builddeps/debian/control
 RUN /opt/prebuild-package-debian.sh jami-deps
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
-CMD /opt/build-package-debian.sh
+CMD ["/opt/build-package-debian.sh"]
diff --git a/patches/docker-snap-build-scripts.patch b/patches/docker-snap-build-scripts.patch
index 4dcc0f93e1497bedd8f693b9612c9364e2587cc9..82838f15f9f97ea6426261943b3ef89ae49e8489 100644
--- a/patches/docker-snap-build-scripts.patch
+++ b/patches/docker-snap-build-scripts.patch
@@ -27,4 +27,4 @@ Author: Amin Bandali <amin.bandali@savoirfairelinux.com>
 +
 +ADD scripts/build-package-snap.sh /opt/build-package-snap.sh
 +
-+CMD /opt/build-package-snap.sh
++CMD ["/opt/build-package-snap.sh"]
diff --git a/scripts/make-packaging-target.py b/scripts/make-packaging-target.py
index c8038dbfd51e8386605f1853a4fe884784d0e524..2b0db5ce272bcc5ec82588a9c49f8b8a31c066eb 100755
--- a/scripts/make-packaging-target.py
+++ b/scripts/make-packaging-target.py
@@ -43,8 +43,6 @@ target_template = """\
 
 PACKAGE_%(distribution)s_DOCKER_IMAGE_NAME:=jami-packaging-%(distribution)s$(RING_PACKAGING_IMAGE_SUFFIX)
 PACKAGE_%(distribution)s_DOCKER_IMAGE_FILE:=.docker-image-$(PACKAGE_%(distribution)s_DOCKER_IMAGE_NAME)
-DOCKER_EXTRA_ARGS =
-
 
 PACKAGE_%(distribution)s_DOCKER_RUN_COMMAND = docker run \\
     --rm \\
@@ -59,8 +57,9 @@ PACKAGE_%(distribution)s_DOCKER_RUN_COMMAND = docker run \\
     -v $(CURDIR):/opt/ring-project-ro:ro \\
     -v $(CURDIR)/packages/%(distribution)s:/opt/output \\
     -v /opt/cache-packaging:/opt/cache-packaging \\
-    -t $(DOCKER_EXTRA_ARGS) %(options)s \\
     -v /opt/ring-contrib:/opt/ring-contrib \\
+    -t $(and $(IS_SHELL_INTERACTIVE),-i) %(options)s \\
+    $(DOCKER_RUN_EXTRA_ARGS) \\
     $(PACKAGE_%(distribution)s_DOCKER_IMAGE_NAME)
 
 $(PACKAGE_%(distribution)s_DOCKER_IMAGE_FILE): docker/Dockerfile_%(docker_image)s
@@ -82,7 +81,6 @@ package-%(distribution)s: packages/%(distribution)s/%(output_file)s
 PACKAGE-TARGETS += package-%(distribution)s
 
 .PHONY: package-%(distribution)s-interactive
-package-%(distribution)s-interactive: DOCKER_EXTRA_ARGS = -i
 package-%(distribution)s-interactive: $(RELEASE_TARBALL_FILENAME) packages/%(distribution)s $(PACKAGE_%(distribution)s_DOCKER_IMAGE_FILE)
 	$(PACKAGE_%(distribution)s_DOCKER_RUN_COMMAND) bash
 """