Не удается подключить контейнер Docker к хост -машине MySQL Service [Duplicate]MySql

Форум по Mysql
Ответить
Anonymous
 Не удается подключить контейнер Docker к хост -машине MySQL Service [Duplicate]

Сообщение Anonymous »

У меня есть приложение NESTJS, которое подключается к базе данных MySQL, установленной в моем хост -машине, которую я пытаюсь сделать.

Код: Выделить всё

FROM node:20

WORKDIR /app

COPY package*.json ./

RUN npm install --legacy-peer-deps

COPY . .

COPY .env ./

EXPOSE 4444

CMD [ "npm", "start" ]
и.

Код: Выделить всё

DATABASE_HOST=localhost
DATABASE_PORT=3306
DATABASE_NAME=appdb
DATABASE_USER=appuser
DATABASE_PASS=password
APP_PORT=4444
JWT_SECRET=es un secreto
DOMAIN=localhost
SSL=false
UI_URL=http://localhost:3000
Когда контейнер в создании с использованием приложения Docker build -t. и я пытаюсь запустить его, используя: Docker Run App Я должен успешно использовать флаг -network = host , чтобы контейнер мог подключиться к базе данных в моем хост -машине.

Код: Выделить всё

ERROR [TypeOrmModule] Unable to connect to the database. Retrying (1)...
Error: connect ECONNREFUSED 127.0.0.1:3306
Затем я пишу следующий docker-compose.yml

Код: Выделить всё

services:
app:
container_name: app
env_file:
- .env
build:
context: .
dockerfile: Dockerfile
ports:
- "4444:4444"
restart: unless-stopped
и когда я выполняю командный Docker Compose up-build он бросает ту же ошибку, что и выше. /etc/mysql/mariadb.conf.d/50-shever.cnf
Это ошибка, которая добавляется при использовании host.docker.internal в качестве базы данныхERROR [TypeOrmModule] Unable to connect to the database. Retrying (1)...
app | Error: Access denied for user 'appuser'@'localhost' (using password: YES)
app | at Packet.asError (/app/node_modules/mysql2/lib/packets/packet.js:738:17)
app | at ClientHandshake.execute (/app/node_modules/mysql2/lib/commands/command.js:29:26)
app | at PoolConnection.handlePacket (/app/node_modules/mysql2/lib/connection.js:481:34)
app | at PacketParser.onPacket (/app/node_modules/mysql2/lib/connection.js:97:12)
app | at PacketParser.executeStart (/app/node_modules/mysql2/lib/packet_parser.js:75:16)
app | at Socket. (/app/node_modules/mysql2/lib/connection.js:104:25)
app | at Socket.emit (node:events:524:28)
app | at addChunk (node:internal/streams/readable:561:12)
app | at readableAddChunkPushByteMode (node:internal/streams/readable:512:3)
app | at Readable.push (node:internal/streams/readable:392:5)
< /code>
Что я делаю не так? Что мне нужно изменить?

Подробнее здесь: https://stackoverflow.com/questions/795 ... se-service
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «MySql»