У меня есть файл docker-compose.yml с несколькими контейнерами: php + nginx + mysql + socks5
version: "2"
services:
php:
image: "superapp"
container_name: "superapp"
command: "/laravel.sh"
build:
context: ./docker/php
volumes:
- "./:/var/www/superapp"
links:
- mysql
environment:
PHP_IDE_CON§IG: serverName=superapp.com
depends_on:
- mysql
nginx:
container_name: "nginx"
build:
context: ./docker/nginx
args:
- PHP_UPSTREAM=php
volumes_from: [php]
volumes:
- ./docker/nginx/sites-available/:/etc/nginx/sites-available
ports:
- "80:80"
- "443:443"
- "9000:9000"
links:
- php
mysql:
container_name: "database"
image: mysql:latest
command: '--default-authentication-plugin=mysql_native_password'
ports:
- '3307:3306'
volumes:
- ./docker/mysql:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=password
- MYSQL_DATABASE=megabase
socks5:
container_name: "socks5"
build: ./docker/socks5
ports:
- '1080:1080'
socks5 DockerFile
FROM debian:jessie
ADD ssh/ /root/.ssh
ADD config/ssh_config /etc/ssh
CMD ["ssh", "-C2qTnN", "-D", "1080", "user@ip"]
EXPOSE 1080
Когда я пытаюсь в контейнере socks5 запустить эту команду
curl --socks5 127.0.0.1:1080 http://check-host.net/ip
Я успешно получаю IP-адрес, но когда я пробую его на php-контейнере
curl --socks5 socks5:1080 http://check-host.net/ip
У меня ошибка "curl: (7) Не удалось подключиться к порту socks5 1080: соединение отклонено"
tcpdump в контейнере socks5 показывает, что 1080 получает трафик из php контейнера!
если я запускаю socat на порту 1081 на контейнере socks5 и транслирую его на 127.0.0.1:1080, это замедлит мою проблему!
но как я могу отправить свой трафик из php-контейнера в контейнер socks5?