I’m migrating our home grown solution to use the new multi-container support of Resin. Previously we were running multiple apps from a single docker file.
One of the things that we did was setup a loopback within our network-manager container. While this worked fine in our solution, we are hitting major issues inside of a container. We get a simple error “Failed to configure loopback device: Permission denied”. We are running in privileged mode, we are using the exact same code.
Below are our compose file and relevant Docker File:
version: '2' services: machine-comm: privileged: true restart: always build: machineComms ports: - "81:81" network-manager: privileged: true restart: always labels: io.resin.features.dbus: '1' build: networkManager ports: - "80:80" front-end: privileged: true restart: always build: frontEnd ports: - "8080:80"
FROM resin/%%RESIN_MACHINE_NAME%%-golang:slim ENV INITSYSTEM on ENV PORT 8080 ENV DBUS_SYSTEM_BUS_ADDRESS /host/run/dbus/system_bus_socket ENV HOTSPOT_UUID 349b60d6-0528-11e8-ba89-0ed5f89f718b ENV HOTSPOT_INTERFACE wlan0 ENV HOTSPOT_PSK wmaHOTSpot ENV HOTSPOT_IP 10.0.0.1 ENV HOTSPOT_PREFIX 24 WORKDIR /go/src/network-manager-server COPY . ./ RUN go build server.go CMD ./server -reset
This seems to have mostly impacted our routing of HTTP requests to each other. Does this problem solve itself if we start using Docker’s built in container to container messaging?