From 91ddc7d34526a003788e481c22a192a1e57abed7 Mon Sep 17 00:00:00 2001 From: bergware Date: Sat, 10 May 2025 04:00:07 +0200 Subject: [PATCH] Update rc.docker --- etc/rc.d/rc.docker | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/etc/rc.d/rc.docker b/etc/rc.d/rc.docker index 9462a11de..111c14e4a 100755 --- a/etc/rc.d/rc.docker +++ b/etc/rc.d/rc.docker @@ -175,6 +175,8 @@ driver(){ ATTACH='macvlan' MODE='bridge' fi + # wlan0 has forced ipvlan + [[ $1 == wlan && $2 == forced ]] && ATTACH=ipvlan } # Custom networks @@ -389,14 +391,11 @@ docker_network_start(){ [[ -n $SUBNET6 ]] && SUBNET6="--ipv6 --subnet=$SUBNET6" if [[ -n $SUBNET || -n $SUBNET6 ]]; then TYPE=${NETWORK//[0-9.]/} - driver $TYPE - if [[ $TYPE == br ]]; then + driver $TYPE forced + if [[ $TYPE == br || $TYPE == wlan ]]; then VHOST=$NETWORK - elif [[ $TYPE == wlan ]]; then - VHOST=$NETWORK - ATTACH=ipvlan else - [[ $DOCKER_ALLOW_ACCESS == yes && -n $IPV4 ]] && VHOST=vhost${NETWORK//[^0-9.]/} || VHOST=$NETWORK + [[ -n $IPV4 && $DOCKER_ALLOW_ACCESS == yes ]] && VHOST=vhost${NETWORK//[^0-9.]/} || VHOST=$NETWORK fi # delete and recreate unconditionally log "Processing... $NETWORK" @@ -473,9 +472,11 @@ docker_network_start(){ docker_network_stop(){ log "Stopping network..." if ! docker_running; then return 1; fi + # read configuration settings + . $DOCKER_CFG for NIC in $NICS; do [[ ${NIC:0:3} == eth ]] && NIC=$(active $NIC) - driver ${NIC//[0-9]/} + driver ${NIC//[0-9]/} forced for NETWORK in $(network $ATTACH ${NIC//[^0-9]/}); do [[ $STOCK =~ ${NETWORK%%[0-9]*} || $DOCKER_USER_NETWORKS != preserve ]] && docker network rm $NETWORK &>/dev/null TYPE=${NETWORK//[0-9.]/}