将django docker容器链接到mysql docker容器

时间:2016-12-01 12:12:52

标签: mysql django docker docker-compose

由于我对此很新,我在开始之前在互联网上阅读了相当数量,我认为我做了教程中所说的一切,但是,我的django应用程序不想使用mysql容器。根据我的阅读,在settings.py文件中,我必须添加以下代码:

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': 'TheDatabase',
    'USER': 'TheUsername',
    'PASSWORD': 'ThePassword',
    'HOST': 'mysql',
    'PORT': '3306',

    }
}

我使用docker-compose.yml链接停靠者容器和我的docker-compose.yml看起来如下:

version: '2'
services:
    mysql:  
        image: mysql:latest
        environment:
            -MYSQL_DATABASE: TheDatabase
            -MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
            -MYSQL_USER: TheUsername
            -MYSQL_PASSWORD: ThePassword

    django:
        build: .
        volumes:
            - .:/app
        ports:
            - "443:443"
            - "8000:8000"
        links:
            - mysql

我认为问题出在两个容器之间的关系的原因是,因为当我访问https://127.0.0.1/时我得到0个问题,但是,一旦我尝试以超级用户身份登录,我得到错误消息 504 Timed-out ,因此我认为问题必须在数据库中。在Django应用程序的Dockerfile中我只安装了Mysql-Python和libmysqlclient-dev,我应该在django应用程序的容器中安装其他任何东西还是这个呢?我的另一个问题是,dockerhub上的图像mysql-server和mysql有什么区别,因为它们的描述完全相同?

0 个答案:

没有答案