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データベース(de1)を作成する方法

1. MYSQLに接続するフォーマット: mysql -h ホストアドレス -u ユーザー名 -p ...

JavaScript Proxyオブジェクトの詳細な説明

目次1. プロキシとは何ですか? 2. 使い方は? 1. プロキシを使用する簡単な例2. 対象オブジ...

Windows 10 での mysql-8.0.17-winx64 のインストール方法

1.公式サイトからダウンロードして解凍する参考: ダウンロード後、zip 圧縮ファイル (mysql...

MySQLアカウントのIP制限条件を変更する方法

序文最近、仕事で、MySQL ユーザーの権限を変更するには、特定の IP アドレスへのアクセスを制限...

MySQL 8.0.15 圧縮版インストール グラフィック チュートリアル

この記事では、参考までにMySQL 8.0.15圧縮版のインストール方法を紹介します。具体的な内容は...

面接の質問: 3 行 3 列のレイアウト、表は結合され、ネストされた表は許可されません

面接の質問で、3 行 3 列のレイアウトが求められます。1 行目の 2 番目の列と 2 行目の 2 ...

LED を使って Linux カーネルを使い始める方法を探る

目次序文LEDトリガー探索を始めるLEDデバイス登録LEDディレクトリ類推によって理解するクラスディ...

Linuxシステムにおける重要なサブディレクトリの問題について話す

/etc/fstabパーティション/ディスクを自動的にマウントし、マウントするパーティション/デバイ...

Vue2.x - アンチシェイクとスロットリングの使用例

目次ユーティリティ: vue での使用:説明する:画像安定化:スロットル:ユーティリティ: // 手...

Apache FlinkCEP でタイムアウトステータス監視を実装するための詳細な手順

CEP - 複合イベント処理。ご注文後、一定期間内にお支払いの確認が取れませんでした。タクシーの配...

js の通常形式の日付と時刻に 0 を自動的に追加する 2 つのソリューション

目次背景解決策1アイデア:コード:解決策2アイデア:要約する参照する背景日付と時間をフォーマットする...

オブジェクト内のフィールドを削除する js メソッド

この記事では主に、オブジェクト内のフィールドを削除するための js の実装を紹介し、次のように共有し...

MYSQL は、指定されたユーザーのランキングとクエリを実装します。ランキング関数 (並列ランキング関数) のサンプルコード

序文この記事は主に、MYSQL でランキングを実現し、指定ユーザーランキング関数 (並列ランキング関...

MySQL 5.7.27 のインストールと設定方法のグラフィックチュートリアル

MySQL 5.7.27の詳細なダウンロード、インストール、および構成チュートリアルは参考までに、具...

Vueはechartsを使用して組織図を描画します

昨日、円形のプログレスバー (Vue 円形プログレスバーを参照してください) についてブログを書きま...