我正在尝试将phpmyadmin容器连接到另一个mysql容器。我用docker network create
创建了一个网络,并添加了两个容器。但是,当我尝试使用phpmyadmin登录时,每次都会显示密码不正确错误。
我检查了这两个容器是否对我已经创建的网络可用,因此我尝试将mysql容器从ping
转换为phpmyadmin容器,但是不幸的是,结果是负面的。
我遵循了本教程:
https://tecadmin.net/tutorial/docker/docker-networking-example/
您能向我解释一下docker run --network
是如何工作的吗?
答案 0 :(得分:1)
如果一切正常,则可以使用容器名称ping
从另一个容器中docker network create my-bridge-network
docker run --name mysql -e MYSQL_ROOT_PASSWORD=secret -d mysql/mysql-server --network my-bridge-network
docker run --name phpmyadmin -d -e PMA_HOST=mysql -p 8080:80 phpmyadmin/phpmyadmin --network my-bridge-network
。当您在2个容器之间创建网络时,它将创建一个带有容器名称和容器IP的别名。
例如
exec
在这种情况下,当您从ping
容器中phpmyadmin
mysql
时,您应该能够ping docker exec phpmyadmin ping mysql # if in phpmyadmin `ping` program is available
容器
<body>
<table>
<thead>
<tr>
<th>Name</th>
<th>City</th>
<th>Age</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>Don Joe</td>
<td>Itajai</td>
<td>20</td>
<td>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod temp. Excepteur sint occaecat cupidatat no</td>
</tr>
<tr>
...
</tr>