前提・実現したいこと
DockerでPythonを実行するコンテナを作るを元にwebブラウザの画面上にpythonファイルの出力結果を表示したいのですが、printの結果が表示されず真っ白のままです。htmlは画面に表示され、コードの変更も反映されます。リンク内容の変更箇所は以下のみで、コードやコマンドも同じものを使用しました。
・プロジェクトフォルダのパスをdescktop直下に配置
該当のソースコード
index.py
1#!/usr/bin/env python3 2 3print("Content-type: text/plain\n") 4print("Hello! Python on Docker!")
Dockerfile
1FROM python:alpine 2 3WORKDIR /app 4 5COPY . /app 6 7CMD ["python","-m","http.server","--cgi"] 8
index.html
1<!DOCTYPE html> 2<html lang="ja"> 3 4<head> 5 <meta charset="utf-8"> 6 <title>Test Page</title> 7</head> 8 9<body> 10 <h1>Welcome to Python!</h1> 11 <p>This is test page.<br>Edited.</p> 12</body> 13 14</html>
試したこと
「python ブラウザに出力できない」等のワードで検索
補足情報(FW/ツールのバージョンなど)
Python 3.10.1
Docker 20.10.11
「htmlが出力できている」とは何をもってそう判断したのですか
リンク先のページと同じ作業をしたものとしますが、どこまで同じでどこが違うのですか
(Dockerfileにshebangがついてますが、他は同じですか)
「htmlが出力できている」はタグの内容(h1やpのテキスト)がブラウザの画面に表示されているという意味でした。
ファイルの内容とコマンド、どちらもコピペしました。
リンクではプロジェクトフォルダのパスが「/Users/test/docker/python/」ですが、自分は「descktop/python」にしました。
リンク先のDockerfileの先頭に #!/usr/bin/env python3 は無いですよね?
だからすでにコピペを間違っています。
質問に慣れてないようなので一応書きますが、あなたの質問文は(いろいろ)情報不足で
何がどうなったのか読み手に伝わりません。
今回の場合は、リンク先に従って作業したのでしょうから、どこまで(完全に)同じなのか、どこから違っているのか(それはどう違っているのか)を書くとわかりやすいでしょう。
質問文に不備や瑕疵があり申し訳ありませんでした。一度初めからやり直し、質問文を修正します。
回答1件
あなたの回答
tips
プレビュー