diff --git a/docker_portainer_stacks/portainer/setup-dockerapi-withtls b/docker_portainer_stacks/portainer/setup-dockerapi-withtls
new file mode 100644
index 0000000..1b608b2
--- /dev/null
+++ b/docker_portainer_stacks/portainer/setup-dockerapi-withtls
@@ -0,0 +1,40 @@
+
+#!/bin/bash
+###################################
+############ by Sthope ############
+###################################
+
+#### USAGE
+# bash -c "$(wget -qLO - https://git.sthope.dev/sthope/sthope-examples/raw/branch/master/docker_portainer_stacks/portainer/setup-dockerapi-withtls)"
+#
+
+findRandomTcpPort(){
+	port=$(( 100+( $(od -An -N2 -i /dev/random) )%(1023+1) ))
+	while :
+	do
+		(echo >/dev/tcp/localhost/$port) &>/dev/null &&  port=$(( 100+( $(od -An -N2 -i /dev/random) )%(1023+1) )) || break
+	done
+	echo "$port"
+}
+p=$(findRandomTcpPort)
+
+# MY_HOSTNAME=$(getent hosts $(hostname) | awk '{print $2}')
+# MY_HOSTNAME=$(getent hosts $(hostname) | awk '{print $1}')
+MY_IP=$(ip -4 route get 8.8.8.8 | awk {'print $7'} | tr -d '\n')
+
+function openssl_genrsa_pass {
+    LC_ALL=C tr -dc A-Za-z0-9 </dev/urandom | head -c 64 > remember2delete
+}
+
+$(openssl_genrsa_pass);cat remember2delete
+
+openssl genrsa -aes256  -passout file:remember2delete -out ca-key.pem 4096
+
+openssl req -new -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem -passin file:remember2delete \
+ -subj "/C=US/CN=${MY_IP}"
+
+clear
+echo "##########################################################"
+echo "############################# by Sthope ##################"
+echo "##########################################################"
+echo "Save this password and delete the file: ";cat remember2delete; echo "                  "
\ No newline at end of file