[GH-ISSUE #247] issue: Docker deployment cannot bind to port when on a gluetun container network #112

Open
opened 2026-10-18 21:11:53 +00:00 by bsakaguchi · 0 comments
Owner

Originally created by @MattyIceee on GitHub (Sep 13, 2025).
Original GitHub issue: https://github.com/open-webui/mcpo/issues/247

Check Existing Issues

  • I have searched the existing issues and discussions.
  • I am using the latest version of mcpo.

mcpo Version

"main" (whatever is installed to this docker image tag: git-44ce6d0)

Open WebUI Version (if applicable)

No response

Operating System

linux

Browser (if applicable)

No response

Confirmation

  • I have read and followed all instructions in README.md.
  • I am using the latest version of both MCPO and Open WebUI.
  • I have included the browser console logs.
  • I have included the Docker container logs.
  • I have listed steps to reproduce the bug in detail.

Expected Behavior

I should be able to proxy the service behind a vpn using gluetun and still pass through the port (8000 in this case) to the local network. This works because the mcpo service should bind to that port inside the glueton network and forward it locally while proxying all other network traffic through my vpn.

Actual Behavior

When both services are started mcpo continually crashes because it fails to bind to its port (8000) in this case.

Steps to Reproduce

Use this docker compose configuration (with your own vpn and signin)

version: '3.8'

services:
gluetun:
image: qmcgaw/gluetun
container_name: gluetun
cap_add:
- NET_ADMIN
devices:
- /dev/net/tun:/dev/net/tun
ports:
- "8000:8000"
environment:
- VPN_SERVICE_PROVIDER=<your_vpn_provider> # e.g., wireshark, pia, etc.
- VPN_TYPE=openvpn # e.g., openvpn, wireguard
# Add your VPN credentials and configuration here
- OPENVPN_USER=<your_vpn_username>
- OPENVPN_PASSWORD=<your_vpn_password>
- FIREWALL_VPN_INPUT_PORTS=8000
restart: unless-stopped

mcpo:
image: ghcr.io/open-webui/mcpo:main
container_name: mcpo
network_mode: "service:gluetun"
depends_on:
- gluetun
command: ["--api-key", "mcpo", "--", "uvx", "duckduckgo-mcp-server"]
stdin_open: true
tty: true
restart: unless-stopped

Logs & Screenshots

docker logs for mcpo

mcpo-docker-logs.txt

Additional Information

It's strange that it can't bind to the port. I've never had this issue with any other webservice behind a glueton proxy.

Originally created by @MattyIceee on GitHub (Sep 13, 2025). Original GitHub issue: https://github.com/open-webui/mcpo/issues/247 ### Check Existing Issues - [x] I have searched the existing issues and discussions. - [x] I am using the latest version of mcpo. ### mcpo Version "main" (whatever is installed to this docker image tag: git-44ce6d0) ### Open WebUI Version (if applicable) _No response_ ### Operating System linux ### Browser (if applicable) _No response_ ### Confirmation - [x] I have read and followed all instructions in `README.md`. - [x] I am using the latest version of **both** MCPO and Open WebUI. - [x] I have included the browser console logs. - [x] I have included the Docker container logs. - [x] I have listed steps to reproduce the bug in detail. ### Expected Behavior I should be able to proxy the service behind a vpn using gluetun and still pass through the port (8000 in this case) to the local network. This works because the mcpo service should bind to that port inside the glueton network and forward it locally while proxying all other network traffic through my vpn. ### Actual Behavior When both services are started mcpo continually crashes because it fails to bind to its port (8000) in this case. ### Steps to Reproduce Use this docker compose configuration (with your own vpn and signin) version: '3.8' services: gluetun: image: qmcgaw/gluetun container_name: gluetun cap_add: - NET_ADMIN devices: - /dev/net/tun:/dev/net/tun ports: - "8000:8000" environment: - VPN_SERVICE_PROVIDER=<your_vpn_provider> # e.g., wireshark, pia, etc. - VPN_TYPE=openvpn # e.g., openvpn, wireguard # Add your VPN credentials and configuration here - OPENVPN_USER=<your_vpn_username> - OPENVPN_PASSWORD=<your_vpn_password> - FIREWALL_VPN_INPUT_PORTS=8000 restart: unless-stopped mcpo: image: ghcr.io/open-webui/mcpo:main container_name: mcpo network_mode: "service:gluetun" depends_on: - gluetun command: ["--api-key", "mcpo", "--", "uvx", "duckduckgo-mcp-server"] stdin_open: true tty: true restart: unless-stopped ### Logs & Screenshots docker logs for mcpo [mcpo-docker-logs.txt](https://github.com/user-attachments/files/22309628/mcpo-docker-logs.txt) ### Additional Information It's strange that it can't bind to the port. I've never had this issue with any other webservice behind a glueton proxy.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
open-webui/mcpo#112
No description provided.