我在Windows 7 x64下使用PC。
我安装了OracleVM,然后在那里安装了Ubuntu 18.04。在Ubuntu中,我安装了Docker并使用PHP,Nginx和MariaDB创建并运行了一个环境,然后我设法在那里建立了一个Drupal 8站点。一切顺利,我设法从我的Windows PC上的浏览器访问该网站。我使用映射VM设置上的端口进行设置。
但我不知道如何从Windows客户端(例如HeidiSQL)访问该容器中的数据库。不幸的是,映射端口对我没有帮助。
这是我的容器列表
example3_project_adminer /entrypoint.sh php -S 0.0. ... Up 9000/tcp
example3_project_mailhog MailHog Up 1025/tcp, 8025/tcp
example3_project_mariadb /docker-entrypoint.sh mysqld Up 3306/tcp
example3_project_nginx /docker-entrypoint.sh sudo ... Up 80/tcp
example3_project_php /docker-entrypoint.sh sudo ... Up 9000/tcp
example3_project_portainer /portainer --no-auth -H un ... Up 9000/tcp
example3_project_traefik /traefik -c /dev/null --we ... Up 0.0.0.0:8000->80/tcp
你能澄清我,怎么做?
如果没有问题的最小可验证示例(例如此情况下的docker调用),则无法自信地回答。但我猜你没有将MariaDB端口暴露给docker主机操作系统(Ubuntu 18.04)。
看看nginx
是如何工作的,因为它明显暴露,并确保你的mariadb
容器类似(可能与端口3306 mysql / mariadb端口)。
一旦您可以从Ubuntu计算机连接,您应该能够依次通过Oracle VM映射端口。