Я хочу развернуть небольшое приложение Python, которое подключается к серверу MySQL (который в данный момент работает локально).В ./fzwk-app/
я создал модуль database
с DBController.py
:
class DbController(object):
def __init__(self):
self._db_connection = mysql.connector.connect(
host='localhost',
user='foo',
passwd='bar',
database='mydb'
)
self._db_cur = self._db_connection.cursor()
# ...
При запуске моего небольшого приложения с помощью локального запуска ./fzwk-app/__init__.py
на моем устройстве dev, соединение с БД работает очень хорошо.Теперь я хотел начать развертывание в Docker-контейнере.Во-первых, я настроил Dockerfile следующим образом:
FROM python:3.6
ADD ./fzwk-app/ /
RUN pip3 install mysql-connector
CMD [ "python", "./__init__.py" ]
Построение образа Docker прекрасно работает (docker build -t fzwk-app:0.1 .
), но когда я пытаюсь создать и запустить контейнер (docker run fzwk-app
), япоприветствовал следующую трассировку Python:
Traceback (most recent call last):
File "./__init__.py", line 21, in <module>
from database import DbController as db
File "/database/DbController.py", line 18, in <module>
import mysql.connector
ModuleNotFoundError: No module named 'mysql'
Где моя ошибка?