実現したいこと
お世話になります。
DockerでVoicevoxのサーバーを立ち上げており、そのサーバーにリクエストを投げた時に200番のレスポンスが返るようにしたいです。
よろしくお願いいたします。
発生している問題・分からないこと
requestsのURLにlocalhostを指定すると403エラーになってしまいます。
エラーメッセージ
error
1HTTP error occurred: 403 Client Error: Forbidden for url: http://localhost:50021/speakers
該当のソースコード
Python
1import requests 2from requests.exceptions import HTTPError 3 4try:5 response = requests.get("http://localhost:50021/speakers")6 # response = requests.get("https://www.google.com/") この場合は正常に動作7 # 正常な応答を得られた場合、ステータスコードが200台であることを確認8 response.raise_for_status()9except HTTPError as http_err:10 # HTTPエラー発生時(例:404, 403, 500等)の処理11 print(f'HTTP error occurred: {http_err}')12except Exception as err:13 # その他のエラー発生時の処理14 print(f'Other error occurred: {err}')15else:16 # エラーが発生しなかった場合の処理17 print('Success!')
docker
1version: "3"2services:3 voicevox:4 image: voicevox/voicevox_engine:cpu-ubuntu20.04-latest 5 ports:6 - "50021:50021"7 tty: true
試したこと・調べたこと
上記の詳細・結果
試したこと
- 別のPCで行ったところ正常に動作
- ブラウザやPostmanからであれば正常に動作
- 同じ型の別のPCで友人に試してもらったところ正常に動作
- localhostではなく、googleのURLを入れて実行したら正常に動作
- localhostを127.0.0.1に変更し実行したが403エラーが表示される
- PCの再起動を行っても403エラーが表示される
- Docker Desktopを再起動しても403エラーが表示される
- コンテナを削除し、docker-compose up -dを再度実行しても403エラーが表示される
- Pythonをアンインストール後、再度インストールしても403エラーが表示される
- PCやアプリのアップデートを全て行っても403エラーが表示される
補足
関係あるかは分かりませんが、コンテナを停止させても403エラーが表示されました。
Pythonのコードを実行後、Dockerのログには何も表示されませんでした。(ブラウザやPostmanからアクセスした際にはログが表示されていました。)
使用したバージョンは以下の通りです。
python==3.11.4 (python==3.10も使用して試してみました。)
requests==2.31.0
0 コメント