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

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

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

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

Python

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

pip

pipとは、Pythonを用いて書かれているパッケージソフトのインストールや管理を行うためのパッケージマネジメントシステムです。pipを使う主なメリットは、コマンドラインインターフェースにて容易にPythonパッケージソフトをインストール可能だという点です。

解決済

herokuのデプロイエラー ( freeze のエラー )

TM_raspberry
TM_raspberry

総合スコア1

Heroku

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

Python

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

pip

pipとは、Pythonを用いて書かれているパッケージソフトのインストールや管理を行うためのパッケージマネジメントシステムです。pipを使う主なメリットは、コマンドラインインターフェースにて容易にPythonパッケージソフトをインストール可能だという点です。

2回答

0評価

0クリップ

381閲覧

投稿2021/11/15 13:16

編集2021/11/15 15:09

前提・実現したいこと

ラズパイ3B+で、raspberrypiOSを使用して勉強中の初心者です。

LINEとSlackを連携させる (2.LINE→Slackの連携編)

この記事を参考に、pythonとherokuを使ってLINEの投稿をslackに送りたいと考えています。

参考記事のPythonは3.7.8ですが、herokuデプロイの際に、そのバージョンに対応していないというエラーが出たので、pyenvをインストールしてv3.9.8を入れています。

$ which pyenv
/home/ユーザーネーム/.pyenv/bin/pyenv

$ which python
/home/ユーザーネーム/.pyenv/shims/python

$ which pip
/home/ユーザーネーム/.pyenv/shims/pip

$ python -V
Python 3.9.8

となり、PATHは通っていると思われます。

herokuのインストールは以下を参考にしました。
Raspberry Pi】Heroku CLIのインストールからアプリのデプロイまで

また、heroku-18から20にアップグレードしました。

発生している問題・エラーメッセージ

参考HPのとおりに全て用意してherokuにデプロイする際に、
$ git push heroku master
をすると、require.txtに記載しているfreezeのところでエラーが出てしまいます。

remote: Compressing source files... done. remote: Building source: remote: remote: -----> Building on the Heroku-20 stack remote: -----> Using buildpack: heroku/python remote: -----> Python app detected remote: -----> Using Python version specified in runtime.txt remote: -----> Requirements file has been changed, clearing cached dependencies remote: -----> Installing python-3.9.8 remote: -----> Installing pip 21.3.1, setuptools 57.5.0 and wheel 0.37.0 remote: -----> Installing SQLite3 remote: -----> Installing requirements with pip remote: Collecting Flask remote: Downloading Flask-2.0.2-py3-none-any.whl (95 kB) remote: Collecting line-bot-sdk remote: Downloading line_bot_sdk-2.0.1-py2.py3-none-any.whl (83 kB) remote: ERROR: Could not find a version that satisfies the requirement freeze (from versions: none) remote: ERROR: No matching distribution found for freeze remote: ! Push rejected, failed to compile Python app. remote: remote: ! Push failed

require.txt

Flask line-bot-sdk freeze slackweb

runtime.txt

python-3.9.8

試したこと

$ pip install <freezeなどのコマンド>
のエラーの原因 を調べたところ、原因の一つはopenSSLの未インストールがあるようで、

$ sudo apt install libssl-dev
をして、

libssl-dev はすでに最新バージョン (1.1.1d-0+deb10u7) です。
と出てから、pyenvでPython3.9.8をインストールし直して、

$ pip3 install freeze

を実行したのですが、

Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple ERROR: Could not find a version that satisfies the requirement freeze (from versions: none) ERROR: No matching distribution found for freeze

が出てしまいます。
sudoをつけたりpip3で実行しても同様です。

もしかして、httpsに対応する設定をしないといけないでしょうか...?
参考→RaspberryPiでApache2をHTTPSに対応させたい!

freeze自体のインストールは現在機能しないのでしょうか?

※pyenvのパスがあるディレクトリ付近にfreeze.shは存在していました。

なにか初歩的な見落としなどがあるのかもしれませんが、
知恵をお貸しいただけると助かります。

よろしくお願いします。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

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

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

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

Heroku

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

Python

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

pip

pipとは、Pythonを用いて書かれているパッケージソフトのインストールや管理を行うためのパッケージマネジメントシステムです。pipを使う主なメリットは、コマンドラインインターフェースにて容易にPythonパッケージソフトをインストール可能だという点です。