如何远程访问 docker 上的 mariadb?
how to remote access to mariadb on docker?
我创建了一个包含 mariadb 实例的 docker 容器,但我无法从我的物理机访问数据库:
我从 docker 检查得到了 IP 地址,从 docker ps 得到了端口,但是 Sequel Pro 给了我连接失败的消息(与Visual Studio代码)。显然,我可以从 docker 容器内部连接到数据库引擎。
我哪里错了?非常感谢大家! :)
[编辑] 感谢所有评论...
如果我尝试公开端口,容器不会 运行:/
它对我有用:
- 创建一个新的 mariadb 容器
docker container run \
--name sql-maria \
-e MYSQL_ROOT_PASSWORD=12345 \
-e MYSQL_USER=username \
-e MYSQL_PASSWORD=12345 \
-e MYSQL_DATABASE=dbname \
-p 3306:3306 \
-d mariadb:10
- 查看日志并等待 mariadb 服务器启动
docker container logs -f sql-maria
日志的尾部应该是这样的
2020-02-04 20:02:44 0 [Note] mysqld: ready for connections.
- 使用您选择的客户端连接到 mariadb。我在这里使用 mysql 客户端
mysql -h 127.0.0.1 -p -u username dbname
如果您使用的是基于 unix 的系统,则必须使用环回地址 127.0.0.1 而不是 localhost
我创建了一个包含 mariadb 实例的 docker 容器,但我无法从我的物理机访问数据库:
我从 docker 检查得到了 IP 地址,从 docker ps 得到了端口,但是 Sequel Pro 给了我连接失败的消息(与Visual Studio代码)。显然,我可以从 docker 容器内部连接到数据库引擎。
我哪里错了?非常感谢大家! :)
[编辑] 感谢所有评论...
如果我尝试公开端口,容器不会 运行:/
它对我有用:
- 创建一个新的 mariadb 容器
docker container run \
--name sql-maria \
-e MYSQL_ROOT_PASSWORD=12345 \
-e MYSQL_USER=username \
-e MYSQL_PASSWORD=12345 \
-e MYSQL_DATABASE=dbname \
-p 3306:3306 \
-d mariadb:10
- 查看日志并等待 mariadb 服务器启动
docker container logs -f sql-maria
日志的尾部应该是这样的
2020-02-04 20:02:44 0 [Note] mysqld: ready for connections.
- 使用您选择的客户端连接到 mariadb。我在这里使用 mysql 客户端
mysql -h 127.0.0.1 -p -u username dbname
如果您使用的是基于 unix 的系统,则必须使用环回地址 127.0.0.1 而不是 localhost