bridgeIp method

Future<String> bridgeIp(
  1. String id
)

Returns the bridge-network IP address of id.

Reads NetworkSettings.Networks[mode].IPAddress, where mode is the container's NetworkMode (defaulting to 'bridge'). Falls back to 'localhost' when the address is empty.

Implementation

Future<String> bridgeIp(String id) async {
  final details = await containerDetails(id);
  final networkSettings = details['NetworkSettings'] as Map<String, dynamic>;
  final networkMode = (details['HostConfig']
          as Map<String, dynamic>?)?['NetworkMode'] as String? ??
      'bridge';
  final networkName = networkMode == 'default' ? 'bridge' : networkMode;
  final networks = networkSettings['Networks'] as Map<String, dynamic>?;
  final network = networks?[networkName] as Map<String, dynamic>?;
  return network?['IPAddress'] as String? ?? 'localhost';
}