我在Ubuntu系统上安装了Docker并制作了一个MySQL容器:
version: '3.8'
services:
MySQL:
container_name: MySQL
image: mysql:8.0.19
volumes:
- mysql-volume:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: pskPSK258##
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: pskPSK258##
command: --default-authentication-plugin=mysql_native_password
volumes:
mysql-volume:
name: mysql-volume
driver: local
容器运行时,无法使用本地主机或127.0.0.1连接到它。但是,当我使用“ Docker inspect MySQL”获得MySQL容器的IP地址时,我可以连接到MySQL。 如何使用地址127.0.0.1连接到数据库?
答案 0 :(得分:1)
为了能够从主机访问,您需要将容器的端口绑定到主机的端口:
services:
MySQL:
image: mysql/mysql-server:8.0.19
ports:
- "3306:3306" # or "127.0.0.1:3306:3306" to only bind to localhost
ports
部分采用HOST_PORT:CONTAINER_PORT
或HOST_IP:HOST_PORT:CONTAINER_PORT
格式。