Acceda al servicio de hermanos desde el servicio del contenedor acoplable

Ejecuto el contenedor Docker basado en imágenes de nodo (terminal de inicio rápido de Docker desde Windows)

FROM node:7.8.0
ENV NPM_CONFIG_LOGLEVEL warn

VOLUME /tmp
#copy server source /piu contains node server and /piu/client contains react+redux client
ADD piu /piu
ADD server_start.sh /

#clean windows \r char to make the .sh file real executable
RUN sed -i -e 's/\r$//' server_start.sh

CMD ./server_start.sh

EXPOSE 3000 3009

Inicio el cliente Node (en el puerto 3000) y el servidor Node (basado en express) (en el puerto 3009). El cliente accede al servidor REST a través de una llamada AJAX.

componentDidMount() {
    const that = this;
    console.log('SERVER_URL=' + SERVER_URL); //the output is localhost:3009
    axios
        .get(SERVER_URL + '/posts')
        .then(res => {
            that.setState({pageInfo: res.data});
        })
        .catch(err => {
            console.log(err)
        })
}

Funciona perfectamente desde el host (el cliente accede a localhost: 3009 y devuelve resultados). Y puedo llamar: 3009 y nuevamente tener resultados correctos.

Pero cuando construyo y ejecuto la imagen de Docker falla.

docker run -p 3000-3009:3000-3009 --add-host="mongodb:192.168.12.151" MyDockerImage

--add-host se usa para acceder a mongo db que se ejecuta en el host.

El puerto del servidor 3009 está expuesto, así que tengo un truco para llamar

192.168.99.100:3009 //the docker IP and exposed port

en lugar delocalhost:3009 pero sería bueno dejar que el servidor de acceso del cliente directamente dentro del contenedor.

¿Cómo especificar localhost correctamente dentro del contenedor acoplable para acceder al servicio hermano?

ACTUALIZAR

#!/bin/bash

# Start the first process (server)
npm run start_docker --prefix piu &
status=$?
if [ $status -ne 0 ]; then
  echo "Failed to start my_first_process: $status"
  exit $status
fi

# Start the second process (client)
npm run start --prefix piu/client
status=$?
if [ $status -ne 0 ]; then
  echo "Failed to start my_second_process: $status"
  exit $status
fi

Respuestas a la pregunta(1)

Su respuesta a la pregunta