1. 空のディレクトリを作成する $ cd /home/xm6f/dev $ mkdir myapp $ cd myapp/ 2.vim Dockerfileの内容は次のとおりです。 ## 基本的なPythonランタイム環境 FROM python ## 作業ディレクトリを設定する WORKDIR /app ## 現在のシステムフォルダの内容をコンテナのアプリディレクトリにコピーします ADD ./app ## 必要な依存パッケージをインストールする RUN pip install -r softwares.txt ## コンテナ外へのアクセス用にポートを開く EXPOSE 80 エクスポーズ3088 エクスポーズ8080 エクスポーズ8066 ## 環境変数 ENV NAME HELLO を定義する ## コマンド CMD ["python","app.py"] を実行します 3. 依存関係をインストールする vim softwares.txt の内容は次のとおりです。 フラスコ レディス 4.vim app.py、内容は次のとおりです。 FlaskからFlaskをインポート RedisからRedisをインポートすると、RedisError インポートOS インポートソケット # Redisに接続する redis = Redis(ホスト = "redis"、db = 0、socket_connect_timeout = 2、socket_timeout = 2) アプリ = Flask(__name__) @app.route("/") デフハロー(): 試す: 訪問数 = redis.incr("counter") RedisErrorを除く: visits = "<i>Redis に接続できません。カウンターが無効です</i>" html = "<h3>こんにちは {name}!</h3>" \ "<b>ホスト名:</b> {ホスト名} <br/>" \ 「<b>訪問数:</b> {訪問数}」 html.format(name=os.getenv("NAME", "world"), hostname=socket.gethostname(), visits=visits) を返します。 __name__ == "__main__" の場合: app.run(ホスト='0.0.0.0'、ポート=80) 5. コンパイル docker build を実行します。 6. 新しいイメージが生成されたことを確認する $ docker イメージ リポジトリ タグ イメージ ID 作成 サイズ myfirstapp 最新 01ea1129a831 2時間前 699MB 7. 画像を開始する $ docker run -p 4000:80 myfirstapp バックグラウンドで実行することもできます: $ docker run -d -p 4000:80 myfirstapp 8. サービスへのアクセス # カール http://localhost:4000 <h3>Hello world!</h3><b>ホスト名:</b> a6655d0d7e74<br/><b>訪問数:</b> <i>Redis に接続できません。カウンタが無効です</i> またはブラウザを使用してサービスにアクセスします: http://192.168.1.160:4000 9. 現在実行中のイメージを表示する $ docker ps コンテナID MAGEコマンド作成ステータスポート名 2db45cab2bb4 myfirstapp "python app.py" 2 分前 2 分前にアップ 0.0.0.0:4000->80/tcp elastic_wilson 10. ミラーリングをやめる $ docker stop 2db45cab2bb4 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: jsはユーザーのページ操作を記憶するためにクッキーを使用します
(1)実験環境youxi1 192.168.5.101 ロードバランサーyouxi2 192.168...
ウェブデザインでは、ウェブページを美しく見せるために矢印を装飾としてよく使用します。現在、多くのウェ...
この記事では、CSS スクロールバー セレクターを紹介し、Webkit ブラウザーと IE ブラウザ...
随分前に「Patterns for Sign Up & Ramp Up」を読み終えました。今...
目次Samba サーバーの紹介Samba サーバー コンポーネントSamba サーバー関連の設定ファ...
目次スプレッド演算子とレスト演算子とは何ですか?配列スプレッド演算子残り演算子(コレクション関数)ス...
目次1. 匿名スロット2. 名前付きスロット要約するスロット (slot) は、Vue のコンテンツ...
MySQL は、コミュニティ エディション (コミュニティ サーバー) とエンタープライズ エディシ...
Prometheus (プロメテウスとも呼ばれる) 公式サイト: https://prometheu...
目次1. プロキシとは何ですか? 2. 使い方は? 1. プロキシを使用する簡単な例2. 対象オブジ...
コードをコピーコードは次のとおりです。 <div contenteditable="...
目次Cocos Creator のリソース管理に関する問題リソースの依存関係リソースの使用レスローダ...
序文ソースコードは合計で 100 行強しかありません。これを読めば、react-dnd などの成熟し...
序文特に bash 環境では、スクリプトの実行方法によって結果が異なります。スクリプトを実行する方法...
私は最近countlyに触れて、慣れてきました。私は、必要に応じてcountlyのクラッシュプラグイ...