Dockerを使用して分散lnmpイメージを作成する

Dockerを使用して分散lnmpイメージを作成する

LNMP は、Linux システム上で Nginx、Mariadb、PHP を組み合わせて構築された動的 Web サイト サーバー アーキテクチャです。次に、Docker を使用して分散 lnmp イメージを作成します。

1. Docker分散lnmpイメージ生成

1. Nginx、MySQL、PHPコンテナを実行する

#ファイアウォールとコア保護をオフにする systemctl enable firewalld
systemctl 停止 ファイアウォール
強制0を設定する

# ポート 3306、80、9000 が使用されているかどうかを確認します ss -natp | grep 3306
ss -natp | grep 80
ss -natp | grep 9000

#カスタムネットワークを作成する docker network create -d bridge --subnet 172.168.184.0/24 --gateway 172.168.184.1 lnmp

#Nginx コンテナを実行します docker run -itd --name nginx --network lnmp -p 80:80 --ip 172.168.184.10 nginx:1.12.0

#MySQL コンテナを実行します docker run -itd --name mysql --network lnmp -p 3306:3306 --ip 172.168.184.20 -e MYSQL_ROOT_PASSWORD=010230 mysql:5.7

#PHP コンテナを実行します docker run -itd --name phpfpm --network lnmp -p 9000:9000 --ip 172.168.184.30 php:7.1-fpm 

ここに画像の説明を挿入
ここに画像の説明を挿入

ここに画像の説明を挿入

2. Nginx設定ファイルとPHPファイルを変更する

docker exec -it nginx /bin/bash
echo -e "サーバー{
    聞く 80;
    server_name ローカルホスト;
    位置 / {
        ルート /usr/share/nginx/html;
        インデックス index.html index.htmi index.php;
    }
    エラーページ 500 502 503 504 /50x.html;
    場所 = /50x.html {
        ルート /usr/share/nginx/html;
    }
    場所 ~ \.php$ {
        ルート /usr/share/nginx/html;
        172.168.184.30:9000; をパスします。
        fastcgi_index インデックス.php;
        fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;
        fastcgi_params を含めます。
    }
}" > /etc/nginx/conf.d/default.conf

nginx -s リロード

docker exec -it phpfpm /bin/bash
mkdir -p /usr/share/nginx/html
echo "<?php
phpinfo();
?>" > /usr/share/nginx/html/index.php 

ここに画像の説明を挿入

ここに画像の説明を挿入

4. テストを実施する

仮想マシンにlocalhost/index.phpを入力します。

ここに画像の説明を挿入

このマシンで 192.168.184.70/index.php を入力します (私の仮想マシンのアドレスは 192.168.184.70 です)

ここに画像の説明を挿入

以上がdockerを使って分散lnmpイメージを作成する手順です。docker分散lnmpイメージの詳細については、123WORDPRESS.COMの他の関連記事もご覧ください。

以下もご興味があるかもしれません:
  • Docker で LNMP 環境を素早く構築する方法 (最新)
  • DockerでLNMPアーキテクチャを展開する方法
  • dockerでlnmp環境を構築する方法
  • Dockerを使用して統合サービスlnmp環境を作成する
  • Dockerを使用してLNMP環境を構築する詳細な説明
  • DockerコンテナでLNMPをコンパイルする例

<<:  コンテンツ領域の周囲を回転する CSS 動的グラデーション ボーダーの効果 (サンプル コード)

>>:  リンク内の href=# はどういう意味ですか?

推薦する

mysql ワイルドカード (sql 高度なフィルタリング)

目次まず、値の一部と一致させるために使用される特殊文字であるワイルドカードについて簡単に紹介します。...

WeChatミニプログラムは同時通訳を利用して音声認識を実装します

私は同時通訳音声認識機能を使用して、WeChatアプレットのホームページの音声検索機能を実現しました...

MySQL を暗号化および復号化するいくつかの方法 (要約)

目次前面に書かれた双方向暗号化エンコード/デコードAES_ENCRYPT/AES_DECRYPT D...

Vue のルータールーティングの 2 つのモード (ハッシュと履歴) の詳細な説明

ハッシュモード(デフォルト)動作原理:ウェブページのハッシュ値の変化を監視する—> onhas...

CSS で 3D ルービック キューブを実装するサンプル コード

今日は簡単な3Dルービックキューブを作ってみましょうまずはレンダリングを見てみましょう!これを学んだ...

Vue はモバイル端末にマルチグリッド入力ボックスを実装

最近、同社は、下図に示すように、h5 ページ操作を完了するという要件を提示しました。 ネットで入手で...

FirefoxのWeb開発者を使用してWebページのスタイルを無効にする方法

前提条件: Web開発者プラグインがインストールされている操作手順: [ツール] -> [We...

MySQL マスター/スレーブ ステータスを監視するシェル スクリプト

Linuxでシェルスクリプトを共有して、MySQLのマスタースレーブ状態を監視し、エンタープライズW...

88 秒で 1,000 万件のレコードを MySQL データベース テーブルに挿入する方法

私が使用しているデータベースはMySQLデータベースバージョン5.7ですまずデータベーステーブルを自...

シンプルなショッピングフォームを実装するJavaScript

この記事では、簡単なショッピングフォームを実装するためのJavaScriptの具体的なコードを参考ま...

ページ内のリストプルダウン効果を実現するための純粋なCSS

次のような効果がよく見られます。 そうです、ページ上でよく使われる「展開と折りたたみ」のインタラクシ...

面接官はReactのライフサイクルについてよく質問します

ReactライフサイクルReactのライフサイクルを理解するのに役立つ2つの図React ライフサイ...

Vue シンプル登録ページ + 確認コード送信機能の実装例

目次1. エフェクト表示2. 検証コードとメールプッシュ管理の強化(後述のブログを参照) 3. 一般...

Vueはドラッグアンドドロップまたはクリックで写真をアップロードする機能を実装しています

この記事では、ドラッグアンドドロップやクリックによる画像のアップロードを実現するためのVueの具体的...