本文作者:kris

怎样设置才能允许外网访问MySQL-如何设置访问外网

kris 2025-02-01 20:06:05 2
怎样设置才能允许外网访问MySQL-如何设置访问外网摘要: docker容器内怎么连接外部的mysql?1.用-v挂载主机数据卷到容器内[plain]viewplaincopydockerrun-v/path/to/hostdir:/mnt...

docker容器内怎么连接外部的mysql?

1.用-v挂载主机数据卷到容器内

[plain]viewplaincopy

dockerrun-v/path/to/hostdir:/mnt$container

在容器内拷贝

cp/mnt/sourcefile/path/to/destfile

2.直接在主机上拷贝到容器物理存储系统

A.获取容器名称或者id:

[plain]viewplaincopy

$dockerps

B.获取整个容器的id

[plain]viewplaincopy

$dockerinspect-f'{{.Id}}'步骤A获取的名称或者id

C.在主机上拷贝文件:

怎样设置才能允许外网访问MySQL-如何设置访问外网

图片来源:网络

[plain]viewplaincopy

$sudocppath-file-host/var/lib/docker/aufs/mnt/FULL_CONTAINER_ID/PATH-NEW-FILE

或者

$sudocppath-file-host/var/lib/docker/devicemapper/mnt/123abc>/rootfs/root

例子:

[plain]viewplaincopy

$dockerps

CONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMES

d8e703d7e303solidleon/ssh:latest/usr/sbin/sshd-Dcranky_pare

$dockerinspect-f'{{.Id}}'cranky_pare

or

$dockerinspect-f'{{.Id}}'d8e703d7e303

d8e703d7e3039a6df6d01bd7fb58d1882e592a85059eb16c4b83cf91847f88e5

$sudocpfile.txt/var/lib/docker/aufs/mnt/**d8e703d7e3039a6df6d01bd7fb58d1882e592a85059eb16c4b83cf91847f88e5

3.用输入输出符

[plain]viewplaincopy

dockerrun-iubuntu/bin/bash-c'cat>/path/to/container/file'

或者

[plain]viewplaincopy

dockerexec-it

如果单指用docker的话 你有很多种办法。

1. 通过 docker run -p 将端口暴露出来 然后 PHP 通过 db 服务器的 IP ➕ port 进行连接

2. 你也可以使用 host 网络模式 通过指定 net 为 host 这种情况你也直接 IP ➕ port 连接

3. 你也可以加个代理容器 通过这个代理来将流量分发过去

通常情况下这三种办法已经能解决你绝大部分的问题了

文章版权及转载声明

作者:kris本文地址:https://www.damoyx.com/p/29563.html发布于 2025-02-01 20:06:05
文章转载或复制请以超链接形式并注明出处大漠游侠网

阅读
分享