質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

0回答

676閲覧

【Django】Herokuを使ったデプロイ

hfjdsfh_48

総合スコア13

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2021/10/04 12:31

Djangoで作成したアプリをHerokuを使ってデプロイしています。
DBはMySQLを使用します。

#発生している問題・エラーメッセージ
下記のmigrateコマンドを実行させると、エラーがでます。

$ heroku run python manage.py migrate --app アプリ名
MySQLdb._exceptions.OperationalError: (2002, "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)")

MySQLに接続できていないということだと思いますが、解決策がわかりません。

#該当のソースコード

setting.py

1 2import os 3 4# Build paths inside the project like this: os.path.join(BASE_DIR, ...) 5BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 6 7 8# Quick-start development settings - unsuitable for production 9# See https://docs.djangoproject.com/en/3.0/howto/deployment/checklist/ 10 11# SECURITY WARNING: keep the secret key used in production secret! 12SECRET_KEY = 'or_##f=%3xl@-q23yug2*hva@ft7%p^h2r%#r7f+)f*7+d)%*6' 13 14# SECURITY WARNING: don't run with debug turned on in production! 15DEBUG = False 16 17ALLOWED_HOSTS = ["*"] 18 19 20# Application definition 21 22INSTALLED_APPS = [ 23 'django.contrib.admin', 24 'django.contrib.auth', 25 'django.contrib.contenttypes', 26 'django.contrib.sessions', 27 'django.contrib.messages', 28 'django.contrib.staticfiles', 29 'django.contrib.humanize', 30 'website', 31] 32 33MIDDLEWARE = [ 34 'django.middleware.security.SecurityMiddleware', 35 'django.contrib.sessions.middleware.SessionMiddleware', 36 'django.middleware.common.CommonMiddleware', 37 'django.middleware.csrf.CsrfViewMiddleware', 38 'django.contrib.auth.middleware.AuthenticationMiddleware', 39 'django.contrib.messages.middleware.MessageMiddleware', 40 'django.middleware.clickjacking.XFrameOptionsMiddleware', 41 'whitenoise.middleware.WhiteNoiseMiddleware', 42] 43 44ROOT_URLCONF = 'django_website.urls' 45 46TEMPLATES = [ 47 { 48 'BACKEND': 'django.template.backends.django.DjangoTemplates', 49 'DIRS': [], 50 'APP_DIRS': True, 51 'OPTIONS': { 52 'context_processors': [ 53 'django.template.context_processors.debug', 54 'django.template.context_processors.request', 55 'django.contrib.auth.context_processors.auth', 56 'django.contrib.messages.context_processors.messages', 57 ], 58 }, 59 }, 60] 61 62WSGI_APPLICATION = 'django_website.wsgi.application' 63 64 65# Database 66# https://docs.djangoproject.com/en/3.0/ref/settings/#databases 67 68DATABASES = { 69 'default': { 70 'ENGINE': 'django.db.backends.mysql', 71 'NAME': 'DB名', 72 'USER': 'USER名', 73 'PASSWORD': 'パスワード', 74 'HOST': 'HOST名', 75 'PORT': 'ポート' 76 } 77} 78 79 80# Password validation 81# https://docs.djangoproject.com/en/3.0/ref/settings/#auth-password-validators 82 83AUTH_PASSWORD_VALIDATORS = [ 84 { 85 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', 86 }, 87 { 88 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', 89 }, 90 { 91 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', 92 }, 93 { 94 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', 95 }, 96] 97 98 99# Internationalization 100# https://docs.djangoproject.com/en/3.0/topics/i18n/ 101 102LANGUAGE_CODE = 'en-us' 103 104TIME_ZONE = 'Asia/Tokyo' 105 106USE_I18N = True 107 108USE_L10N = True 109 110USE_TZ = True 111 112 113# Static files (CSS, JavaScript, Images) 114# https://docs.djangoproject.com/en/3.0/howto/static-files/ 115 116STATIC_URL = '/assets/' 117STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles') 118 119 120STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'

requirments

1django 2whitenoise 3gunicorn 4mysqlclient

Procfile

1web: gunicorn django_website.wsgi

デプロイ自体はできておりMySQLに関係しないページは問題なく開来ますが、MySQLが関係あるページでは"Server Error (500)"とエラーが出ます。
ローカルでは動きます。
setting.pyに修正が必要でしょうか。詳しい方ご教授ください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問