wait for docker to be ready

This commit is contained in:
Josh Spicer 2023-06-28 17:19:40 +00:00
parent 1de0ff9f77
commit 72a0981209
3 changed files with 37 additions and 6 deletions

View file

@ -385,7 +385,7 @@ dockerd_start="AZURE_DNS_AUTO_DETECTION=${AZURE_DNS_AUTO_DETECTION} DOCKER_DEFAU
# Handle DNS # Handle DNS
set +e set +e
cat /etc/resolv.conf | grep -i 'internal.cloudAAAapp.net' > /dev/null 2>&1 cat /etc/resolv.conf | grep -i 'internal.cloudapp.net' > /dev/null 2>&1
if [ $? -eq 0 ] && [ "${AZURE_DNS_AUTO_DETECTION}" = "true" ] if [ $? -eq 0 ] && [ "${AZURE_DNS_AUTO_DETECTION}" = "true" ]
then then
CUSTOMDNS="--dns 168.63.129.16" CUSTOMDNS="--dns 168.63.129.16"
@ -404,6 +404,20 @@ dockerd_start="AZURE_DNS_AUTO_DETECTION=${AZURE_DNS_AUTO_DETECTION} DOCKER_DEFAU
# Start docker/moby engine # Start docker/moby engine
( dockerd $CUSTOMDNS $DEFAULT_ADDRESS_POOL > /tmp/dockerd.log 2>&1 ) & ( dockerd $CUSTOMDNS $DEFAULT_ADDRESS_POOL > /tmp/dockerd.log 2>&1 ) &
# Wait for API to be listening on unix socket.
echo "Waiting for 'docker-in-docker' to be ready..."
COUNTER=0
while ! (cat /tmp/dockerd.log | grep 'API listen on /var/run/docker.sock') > /dev/null 2>&1; do
sleep 1
COUNTER=$((COUNTER+1))
if [ $COUNTER -gt 5 ]
then
echo "(!) 'docker-in-docker' did not initialize correctly."
exit 1
fi
done
echo "'docker-in-docker' initialization complete." echo "'docker-in-docker' initialization complete."
INNEREOF INNEREOF
)" )"

View file

@ -0,0 +1,11 @@
#!/bin/bash
set -e
# Optional: Import test library
source dev-container-features-test-lib
./test.sh
# Report result
reportResults

View file

@ -50,23 +50,29 @@
}, },
"docker_build_older": { "docker_build_older": {
"image": "mcr.microsoft.com/devcontainers/javascript-node:0-18", "image": "mcr.microsoft.com/devcontainers/javascript-node:0-18",
"remoteUser": "node",
"features": { "features": {
"docker-in-docker": { "docker-in-docker": {
"version": "20", "version": "20",
"moby": "false", "moby": "false",
"dockerDashComposeVersion": "v2" "dockerDashComposeVersion": "v2"
} }
}, }
"remoteUser": "node"
}, },
"docker_build_no_compose": { "docker_build_no_compose": {
"image": "mcr.microsoft.com/devcontainers/javascript-node:0-18", "image": "mcr.microsoft.com/devcontainers/javascript-node:0-18",
"remoteUser": "node",
"features": { "features": {
"docker-in-docker": { "docker-in-docker": {
"dockerDashComposeVersion": "none" "dockerDashComposeVersion": "none"
} }
}, }
"remoteUser": "node" },
"javascript_node_major_version_1": {
"image": "mcr.microsoft.com/devcontainers/javascript-node:1-18",
"remoteUser": "node",
"features": {
"docker-in-docker": {}
}
} }
} }