Skip to content

Instantly share code, notes, and snippets.

@pedrolamas
Created August 18, 2020 19:32
Show Gist options
  • Save pedrolamas/db809a2b9112166da4a2dbf8e3a72ae9 to your computer and use it in GitHub Desktop.
Save pedrolamas/db809a2b9112166da4a2dbf8e3a72ae9 to your computer and use it in GitHub Desktop.

Revisions

  1. pedrolamas created this gist Aug 18, 2020.
    28 changes: 28 additions & 0 deletions docker-iptables-fix.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,28 @@
    #!/bin/bash
    currentAttempt=0
    totalAttempts=10
    delay=15

    while [ $currentAttempt -lt $totalAttempts ]
    do
    currentAttempt=$(( $currentAttempt + 1 ))

    echo "Attempt $currentAttempt of $totalAttempts..."

    result=$(iptables-save)

    if [[ $result =~ "-A DOCKER -i docker0 -j RETURN" ]]; then
    echo "Docker rules found! Modifying..."

    iptables -t nat -A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
    iptables -t nat -A PREROUTING -m addrtype --dst-type LOCAL ! --dst 127.0.0.0/8 -j DOCKER

    echo "Done!"

    break
    fi

    echo "Docker rules not found! Sleeping for $delay seconds..."

    sleep $delay
    done