gatewayIp method

Future<String> gatewayIp(
  1. String id
)

Returns the gateway IP address of the bridge network for id.

Reads NetworkSettings.Networks[mode].Gateway. Falls back to 'localhost' when the gateway is empty.

Implementation

Future<String> gatewayIp(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?['Gateway'] as String? ?? 'localhost';
}