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はユーザーのページ操作を記憶するためにクッキーを使用します
サブクエリの分類返された結果セットによる分類サブクエリは、返される結果セットの違いに応じて、テーブル...
ps コマンドを使用できます。プロセスの PID など、現在実行中のプロセスに関する関連情報を表示で...
序文スクロールやサイズ変更などのスクロール イベントがトリガーされると、トリガーの頻度が非常に高くな...
replace ステートメントは、一般的に insert ステートメントに似ています。ただし、テーブ...
エラーを報告するには次のコマンドを実行しますsystemctl dockerを再起動しますエラーメッ...
% ワイルドカードを使用すると、インデックス失敗の問題が発生することがよくあります。ここでは、lik...
この記事では、簡単なショッピングフォームを実装するためのJavaScriptの具体的なコードを参考ま...
1. 背景Youzan の各 OLTP データベース インスタンスには、実行時間が特定のしきい値を超...
目次1. はじめに2. 環境とツール3. Dockerをインストールし、リモート接続を構成する4. ...
Centos7では、/etc/rc.d/rc.localファイルの権限が削減されており、実行権限があ...
pssh は、多数のマシンでのバッチ ssh 操作に使用される、Python で実装されたオープン ...
Linux で大量のファイルを削除する効率をテストします。まず500,000個のファイルを作成する$...
01 並列レプリケーションの概念MySQL のマスター スレーブ レプリケーション アーキテクチャで...
勉強や仕事で FTP サーバーを頻繁に使用する場合は、起動時に自動的に起動するように設定できます。設...
背景最近、Docker 初心者の友人から、毎回プロジェクト構成ファイルにハードコーディングしてサービ...