diff --git a/emhttp/plugins/dynamix.docker.manager/DockerSettings.page b/emhttp/plugins/dynamix.docker.manager/DockerSettings.page index 227be890b..7d6c11b39 100644 --- a/emhttp/plugins/dynamix.docker.manager/DockerSettings.page +++ b/emhttp/plugins/dynamix.docker.manager/DockerSettings.page @@ -4,8 +4,8 @@ Icon="icon-docker" Tag="icon-docker" --- (_(optional)_): **_(Subnet)_:** **_(Gateway)_:** - > - **_(DHCP pool)_:**: -/ "; - echo ""; -?> @@ -422,10 +414,6 @@ _(IPv6 custom network on interface)_ (_(optional)_): **_(Gateway)_:**" title="_(IPv6 address nnnn:xxxx::yyyy)_"> - > - **_(DHCP pool)_:**>/ - @@ -528,7 +516,6 @@ if (isset($dockercfg[$docker_dhcp6]) || empty($dockercfg["DOCKER_AUTO_$net"])):? _(IPv6 custom network on interface)_ : : **_(Subnet)_:** **_(Gateway)_:** - **_(DHCP pool)_:** @@ -551,7 +538,7 @@ if (!$vlan) { _(IPv6 custom network on interface)_ : : **_(Subnet)_:** / **_(Gateway)_:** - **_(DHCP pool)_:** + diff --git a/etc/rc.d/rc.docker b/etc/rc.d/rc.docker index dfe398e62..03fcc79d6 100755 --- a/etc/rc.d/rc.docker +++ b/etc/rc.d/rc.docker @@ -323,16 +323,13 @@ docker_network_start(){ RANGE=${!DHCP} GATEWAY=$(ip -4 route show default dev $NETWORK | awk '{print $3;exit}') fi - SUBNET6=; GATEWAY6=; SERVER6=; RANGE6=; + SUBNET6=; GATEWAY6=; SERVER6=; IPV6=$(ip -6 -br addr show $NETWORK scope global nodad | awk '{print $3;exit}') [[ -z $IPV6 ]] && IPV6=$(ip -6 -br addr show $NETWORK scope global dynamic | awk '{print $3;exit}') if [[ -n $IPV6 ]]; then # get IPV6 subnet, preset to /64 if single host address is given [[ ${IPV6#*/} == 128 ]] && SUBNET6=$(echo $IPV6 | sed -r 's/^([^:]+):([^:]+):([^:]+):([^:]+).*$/\1:\2:\3:\4::\/64/') || SUBNET6=$(ip -6 route show $IPV6 dev $NETWORK | awk '{print $1;exit}') SERVER6=${IPV6%/*} - DHCP6=${NETWORK/./_} - DHCP6=DOCKER_DHCP6_${DHCP6^^} - RANGE6=${!DHCP6} GATEWAY6=$(ip -6 route show default dev $NETWORK | awk '{print $3;exit}') # replace link local address for first address in subnet [[ ${GATEWAY6:0:4} == fe80 ]] && GATEWAY6=${SUBNET6%/*}1 @@ -354,8 +351,6 @@ docker_network_start(){ GATEWAY6=DOCKER_GATEWAY6_$DEVICE GATEWAY6=${!GATEWAY6} SERVER6=; - RANGE6=DOCKER_RANGE6_$DEVICE - RANGE6=${!RANGE6} fi # custom network already existing and changed? if [[ $NETWORKS =~ "$NETWORK " ]]; then @@ -375,7 +370,7 @@ docker_network_start(){ [[ -n ${SERVERS[1]} && ${SERVERS[1]} =~ '.' ]] && SERVER0=${SERVERS[1]} || SERVER1=${SERVERS[1]} # check for changes [[ $SUBNET != $SUBNET0 || $SUBNET6 != $SUBNET1 ]] && UPDATE=1 - [[ $RANGE != $RANGE0 || $RANGE6 != $RANGE1 ]] && UPDATE=1 + [[ $RANGE != $RANGE0 ]] && UPDATE=1 [[ (-n $GATEWAY && $GATEWAY != $GATEWAY0) || (-n $GATEWAY6 && $GATEWAY6 != $GATEWAY1) ]] && UPDATE=1 [[ (-n $SERVER && $SERVER != $SERVER0) || (-n $SERVER6 && $SERVER6 != $SERVER1) ]] && UPDATE=1 if [[ -z $UPDATE ]]; then @@ -388,20 +383,19 @@ docker_network_start(){ fi # set parameters for custom network creation N4=$SUBNET; R4=$RANGE; - N6=$SUBNET6; R6=$RANGE6; + N6=$SUBNET6; [[ -n $SUBNET && -n $GATEWAY ]] && GATEWAY="--gateway=$GATEWAY" || GATEWAY=; [[ -n $SUBNET && -n $SERVER ]] && SERVER="--aux-address=server=$SERVER" || SERVER=; [[ -n $SUBNET && -n $RANGE ]] && RANGE="--ip-range=$RANGE" || RANGE=; [[ -n $SUBNET ]] && SUBNET="--subnet=$SUBNET" [[ -n $SUBNET6 && -n $GATEWAY6 ]] && GATEWAY6="--gateway=$GATEWAY6" || GATEWAY6=; [[ -n $SUBNET6 && -n $SERVER6 ]] && SERVER6="--aux-address=server6=$SERVER6" || SERVER6=; - [[ -n $SUBNET6 && -n $RANGE6 ]] && RANGE6="--ip-range=$RANGE6" || RANGE6=; [[ -n $SUBNET6 ]] && SUBNET6="--ipv6 --subnet=$SUBNET6" if [[ -n $SUBNET || -n $SUBNET6 ]]; then TYPE=${NETWORK//[0-9.]/} driver $TYPE [[ $TYPE == br ]] && VHOST=$NETWORK || VHOST=vhost${NETWORK//[^0-9.]/} - docker network create -d $ATTACH $SUBNET $GATEWAY $SERVER $RANGE $SUBNET6 $GATEWAY6 $SERVER6 $RANGE6 -o parent=$VHOST $NETWORK | xargs docker network inspect -f "created network $ATTACH {{.Name}} with subnets: {{range .IPAM.Config}}{{.Subnet}}; {{end}}" 2>/dev/null | log + docker network create -d $ATTACH $SUBNET $GATEWAY $SERVER $RANGE $SUBNET6 $GATEWAY6 $SERVER6 -o parent=$VHOST $NETWORK | xargs docker network inspect -f "created network $ATTACH {{.Name}} with subnets: {{range .IPAM.Config}}{{.Subnet}}; {{end}}" 2>/dev/null | log # connect containers to this new network for CONNECT in ${NETRESTORE[$NETWORK]}; do CONTAINER=${CONNECT%,*}