没有一个回答我的问题。
我想做什么?
我有一个mysql docker-compose映像,并想使用以下方法从我的ubuntu主机连接到它
localhost:3306
这不起作用
如果我使用的话确实可以工作
0.0.0.0:3306
这不是我想要做的。我为什么要做所有这一切?因为我必须开始在具有旧mysql版本的oooold旧版应用程序上工作。现在,我的计算机上安装了mysql 8.0,并且不想仅为该项目降级。遗留代码中有大约1000个对localhost:3306的引用。现在我可以重构所有内容,创建一个配置文件等...但是更好的是,如果我可以使其工作,以便localhost:3306实际上访问我的mysql docker-compose容器。那可能吗?我必须在docker-compose yaml文件中添加什么?
我的mysql docker-compose yaml文件是这样的:
version: '3.3'
services:
sciodb:
container_name: sciodb
image: mysql:5.6
restart: always
environment:
MYSQL_DATABASE: 'db'
# So you don't have to use root, but you can if you like
MYSQL_USER: 'myuser'
# You can use whatever password you like
MYSQL_PASSWORD: 'test1234'
# Password for root access
MYSQL_ROOT_PASSWORD: 'test1234'
ports:
# <Port exposed> : < MySQL Port running inside container>
- '3306:3306'
expose:
# Opens port 3306 on the container
- '3306'
# Where our data will be persisted
volumes:
- /home/myuser/nmyapp_db:/var/lib/mysql
- /media/sf_vmwareshare:/var/vmwareshare