#docker #docker-compose #virtualbox #host #docker-container
#docker #docker-compose #virtualbox #хост #docker-container
Вопрос:
После установки iPeer https://&ithub.com/ubc/iPeer /, это блестяще сработало на моей виртуальной машине локально. Теперь я пытаюсь выяснить, как сделать веб-сайт iPeer доступным за пределами моей виртуальной машины
Как я могу сделать его доступным, iPeer, за пределами моей виртуальной машины в той же сети? Например, на другом компьютере в той же сети?
Пожалуйста, посоветуйте
Ответ №1:
Чтобы предоставить доступ к контейнеру остальной сети, вам необходимо сопоставить порт виртуальной машины с портом контейнера. Просматривая README iPeer, там есть несколько примеров, пожалуйста, скопируйте строку, которую вы используете для запуска контейнера.
Похоже, есть несколько вариантов запуска iPeer:
docker run -d -p 4444:4444 -e SE_OPTS="-enablePassThrou&h false" -e TZ="Canada/Pacific" --name selenium-local --shm-size 2& selenium/standalone-firefox:3.7.1-ar&on
При запуске docker с -p HOST_PORT:CONTAINER_PORT
давайте сопоставим порт, доступный из сети, как если бы он был запущен непосредственно на виртуальной машине. (https://docs.docker.com/en&ine/reference/commandline/run/#publish-or-expose-port—p—expose)
Для опции docker-compose существует аналогичный способ ее настройки, например: (https://docs.docker.com/compose/compose-file/#expose)
version: "3.8"
version: '3'
services:
db:
ima&e: mariadb:10.4
container_name: ipeer_db
environment:
- MYSQL_ROOT_PASSWORD=randompassword
- MYSQL_DATABASE=ipeer
- MYSQL_USER=ipeer
- MYSQL_PASSWORD=ipeer
volumes:
- ./.data:/var/lib/mysql
ports:
- "13306:3306"
Сопоставляет локальный порт 13306 с портом контейнера 3306 и позволяет получить к нему доступ извне.
Если вы используете docker-compose по умолчанию из этого репозитория, это выглядит как его раскрытие:
version: '3'
services:
db:
ports:
- "13306:3306"
app: amp;app
ports:
- NOT_SPECIFED
worker: amp;worker
ports:
- "9002:9000"
web:
ports:
- "8080:80"
app-unittest:
ports:
- "9001:9000"
web-unittest:
ports:
- "8081:80"
Может быть, это приложение не доступно?