Dockerコンテナを介してランプアーキテクチャを構築するプロセス

Dockerコンテナを介してランプアーキテクチャを構築するプロセス

1. Centosイメージを取得する

[root@localhost ~]# docker pull centos
デフォルトタグの使用: 最新
最新: library/centos から取得
a1d0c7532777: プル完了 
ダイジェスト: sha256:a27fd8080b517143cbbbab9dfb7c8571c40d67d534bbdee55bd6c473f432b177
ステータス: centos:latest の新しいイメージをダウンロードしました
docker.io/ライブラリ/centos:最新
[root@localhost ~]# docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
centos 最新 5d0da3dc9764 2か月前 231MB
[root@localhost ~]# 


2. nginxイメージをビルドする

[root@localhost ~]# docker run --name nginx -it centos
[root@522006030d19 /]# useradd -r -M -s /sbin/nologin nginx
[root@522006030d19 /]# yum -y インストール pcre-devel pcre gcc gcc-c++ openssl-devel zlib zlib-devel make vim wget openssl openssl-devel gd-devel
[root@522006030d19 /]# mkdir -p /var/log/nginx
[root@522006030d19 /]# chown -R nginx.nginx /var/log/nginx
[root@522006030d19 /]# cd /usr/src/
[root@522006030d19 src]# wget https://nginx.org/download/nginx-1.20.1.tar.gz
[root@522006030d19 src]# tar xf nginx-1.20.1.tar.gz 
[root@522006030d19 src]# cd nginx-1.20.1
[root@522006030d19 nginx-1.20.1]# ./configure \
> --prefix=/usr/local/nginx \
> --user=nginx \
> --group=nginx \
> --デバッグあり\
> --with-http_ssl_module \
> --with-http_realip_module \
> --with-http_image_filter_module \
> --with-http_gunzip_module \
> --with-http_gzip_static_module \
> --with-http_stub_status_module \
> --http-log-path=/var/log/nginx/access.log \
> --error-log-path=/var/log/nginx/error.log
[root@522006030d19 nginx-1.20.1]# make -j $(grep 'プロセッサ' /proc/cpuinfo | wc -l) && make install
[root@522006030d19 nginx-1.20.1]# echo 'export PATH=/usr/local/nginx/sbin:$PATH' > /etc/profile.d/nginx.sh[root@522006030d19 nginx-1.20.1]# source /etc/profile.d/nginx.sh
[root@522006030d19 nginx-1.20.1]# nginx 
[root@522006030d19 nginx-1.20.1]# ss -antl
状態 受信Q 送信Q ローカルアドレス:ポート ピアアドレス:ポート プロセス      
聞く 0 128 0.0.0.0:80 0.0.0.0:*                      
[ルート@522006030d19 nginx-1.20.1]#           
[root@522006030d19 nginx-1.20.1]# echo "デーモンオフ;" >> /usr/local/nginx/conf/nginx.conf
[root@522006030d19 nginx-1.20.1]# 末尾 -1 /usr/local/nginx/conf/nginx.conf
デーモンオフ;
[ルート@522006030d19 nginx-1.20.1]# 

//別のターミナルを開く [root@localhost ~]# docker commit -c 'CMD ["/usr/local/nginx/sbin/nginx"]'-p nginx pengyudong/nginx:v1
sha256:2153a12060f6cca88646f285a1ae2af2a94c0d489ad8393f931d29c8fdd8af6e
[root@localhost ~]# docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
pengyudong/nginx v1 2153a12060f6 27秒前 576MB
centos 最新 5d0da3dc9764 2か月前 231MB
[root@localhost ~]# 

[root@localhost ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
[root@localhost ~]# docker ps -a
コンテナID イメージ コマンド 作成ステータス ポート名
522006030d19 centos "/bin/bash" 14 分前 終了 (0) 38 秒前 nginx
[root@localhost ~]# docker rm 522006030d19
522006030d19
[root@localhost ~]# docker run pengyudong/nginx:v1
[root@localhost ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
9c129a20e7c7 pengyudong/nginx:v1 "/usr/local/nginx/sb…" 約 1 分前 2 秒前 blissful_perlman

[root@localhost ~]# docker 検査 9c129a20e7c7
...N 行を省略 "Gateway": "172.17.0.1",
            "グローバルIPv6アドレス": "",
            "グローバルIPv6プレフィックス長": 0,
            "IPアドレス": "172.17.0.2",
.....N行省略 [root@localhost ~]# curl 172.17.0.2
<!DOCTYPE html>
<html>
<ヘッド>
<title>nginx へようこそ!</title>
<スタイル>
    体 {
        幅: 35em;
        マージン: 0 自動;
        フォントファミリー: Tahoma、Verdana、Arial、sans-serif;
    }
</スタイル>
</head>
<本文>
<h1>nginx へようこそ!</h1>
<p>このページが表示されたら、nginxウェブサーバーは正常にインストールされており、
動作しています。さらに設定が必要です。</p>

<p>オンラインドキュメントとサポートについては、
<a href="http://nginx.org/" rel="external nofollow" >nginx.org</a>。<br/>
商用サポートは以下からご利用いただけます。
<a href="http://nginx.com/" rel="external nofollow" >nginx.com</a> です。</p>

<p><em>nginx をご利用いただきありがとうございます。</em></p>
</本文>
</html>
[root@localhost ~]# 

3. MySQLイメージをビルドする

[root@localhost ~]# docker run --name mysql -it centos
[root@16256ee64b9e /]# cd /usr/src/
[root@16256ee64b9e src]# ls
カーネルをデバッグする
[root@16256ee64b9e ソース]# 
//別のターミナルを開く [root@localhost src]# ls
デバッグカーネル mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz
[root@localhost ~]# cd /usr/src/
[root@localhost src]# docker cp mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz mysql:/usr/src/
[root@16256ee64b9e src]# ls
デバッグカーネル mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz
[root@16256ee64b9e ソース]# 
[root@16256ee64b9e src]# yum -y インストール ncurses-devel openssl-devel openssl cmake mariadb-devel ncurses-compat-libs libaio numactl
[root@16256ee64b9e src]# useradd -r -M -s /sbin/nologin mysql
[root@16256ee64b9e src]# tar xf mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz 
[root@16256ee64b9e src]# mv mysql-5.7.34-linux-glibc2.12-x86_64 /usr/local/mysql 
[root@16256ee64b9e src]# cd /usr/local/
[root@16256ee64b9e ローカル]# ls
bin などゲームには lib lib64 libexec mysql sbin share src が含まれます
[root@16256ee64b9e ローカル]# chown -R mysql.mysql /usr/local/mysql 
[root@16256ee64b9e ローカル]# mkdir /opt/data
[root@16256ee64b9e ローカル]# chown -R mysql.mysql /opt/data 
[root@16256ee64b9e ローカル]# /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --datadir=/opt/data
2021-12-06T02:53:34.095554Z 0 [警告] 暗黙の DEFAULT 値を持つ TIMESTAMP は非推奨です。--explicit_defaults_for_timestamp サーバー オプションを使用してください (詳細についてはドキュメントを参照してください)。
2021-12-06T02:53:35.482793Z 0 [警告] InnoDB: 新しいログファイルが作成されました、LSN=45790
2021-12-06T02:53:35.506011Z 0 [警告] InnoDB: 外部キー制約システム テーブルを作成しています。
2021-12-06T02:53:35.562063Z 0 [警告] 既存の UUID が見つからなかったため、このサーバーが初めて起動されたと想定します。新しい UUID を生成しています: b4aa24d8-563f-11ec-80a8-0242ac110003。
2021-12-06T02:53:35.562798Z 0 [警告] Gtid テーブルは使用準備ができていません。テーブル 'mysql.gtid_executed' を開くことができません。
2021-12-06T02:53:35.979249Z 0 [警告] CA 証明書 ca.pem は自己署名されています。
2021-12-06T02:53:36.217615Z 1 [警告] root@localhost が空のパスワードで作成されました。--initialize-insecure オプションをオフにすることを検討してください。
[root@16256ee64b9e ローカル]# 
[root@16256ee64b9e local]# echo 'export PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
[root@16256ee64b9e ローカル]# . /etc/profile.d/mysql.sh
[root@16256ee64b9e ローカル]# echo $PATH
/usr/local/mysql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
[root@16256ee64b9e ローカル]# cat > /etc/my.cnf <<EOF
> [mysqld]
> ベースディレクトリ = /usr/local/mysql
> データディレクトリ = /opt/data
> ソケット = /tmp/mysql.sock
> ポート = 3306
>pidファイル = /opt/data/mysql.pid
> ユーザー = mysql
> 名前解決をスキップ
> 終了
[root@16256ee64b9e ローカル]# cat /etc/m
マシンID modprobe.d/ motd my.cnf
makedumpfile.conf.sample モジュールロード.d/ mtab my.cnf.d/
[root@16256ee64b9e ローカル]# cat /etc/my.cnf
[mysqld]
ベースディレクトリ = /usr/local/mysql
データディレクトリ = /opt/data
ソケット = /tmp/mysql.sock
ポート = 3306
pid ファイル = /opt/data/mysql.pid
ユーザー = mysql
名前解決をスキップ
[root@16256ee64b9e ローカル]# 

[root@16256ee64b9e local]# sed -ri 's#^(basedir=).*#\1/usr/local/mysql#g' /usr/local/mysql/support-files/mysql.server
[root@16256ee64b9e local]# sed -ri 's#^(datadir=).*#\1/opt/data#g​​' /usr/local/mysql/support-files/mysql.server
[root@16256ee64b9e ローカル]# sed -n '46,1p' /usr/local/mysql/support-files/mysql.server
ベースディレクトリ=/usr/local/mysql
[root@16256ee64b9e ローカル]# sed -n '47,1p' /usr/local/mysql/support-files/mysql.server
データディレクトリ=/opt/data
[root@16256ee64b9e ローカル]# sed -n '46,47p' /usr/local/mysql/support-files/mysql.server
ベースディレクトリ=/usr/local/mysql
データディレクトリ=/opt/data
[root@16256ee64b9e ローカル]# 

[root@16256ee64b9e ~]# /usr/local/mysql/support-files/mysql.server を起動します
MySQL を起動しています。'/opt/data/16256ee64b9e.err' にログを記録しています。
 成功! 
[root@16256ee64b9e ~]# ss -antl
状態 受信Q 送信Q ローカルアドレス:ポート ピアアドレス:ポート プロセス      
聞く 0 80 *:3306 *:*                      
[ルート@16256ee64b9e ~]#mysql
MySQL モニターへようこそ。コマンドは ; または \g で終わります。
MySQL接続IDは2です
サーバーバージョン: 5.7.34 MySQL コミュニティサーバー (GPL)

Copyright (c) 2000、2021、Oracle およびその関連会社。

OracleはOracle Corporationおよびその関連会社の登録商標です。
その他の名称は各社の商標である場合があります。
所有者。

ヘルプを表示するには、「help;」または「\h」と入力します。現在の入力ステートメントをクリアするには、「\c」と入力します。

mysql> パスワードを password('123') に設定します。
クエリは正常、影響を受けた行は 0 行、警告は 1 件 (0.00 秒)

mysql>終了
さよなら
[ルート@16256ee64b9e ~]# 


[root@16256ee64b9e ~]# mkdir /scripts
[root@16256ee64b9e ~]# vi /scripts/start.sh 
[root@16256ee64b9e ~]# sed -n '1,3p' /scripts/start.sh 
#!/bin/bash
/usr/local/mysql/support-files/mysql.server を起動します
バイナリ
[root@16256ee64b9e ~]# chmod +x /scripts/start.sh 

[root@localhost ~]# docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
pengyudong/nginx v1 2153a12060f6 28 分前 576MB
centos 最新 5d0da3dc9764 2か月前 231MB
[root@localhost ~]# docker commit -c 'CMD ["/scripts/start.sh"]' -p mysql pengyudong/mysql:v1
sha256:9c8b9aa2d9177e737138f7a42976210fd6e7b039cb543c306281be72c351806e
[root@localhost ~]# docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
pengyudong/mysql v1 9c8b9aa2d917 4秒前 3.81GB
pengyudong/nginx v1 2153a12060f6 30分前 576MB
centos 最新 5d0da3dc9764 2か月前 231MB

[root@localhost ~]# docker run --name mysql-1 -dit --net=container:97c5a3076d39 pengyudong/mysql:v1
[root@localhost ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
ade839dc292e pengyudong/mysql:v1 “/scripts/start.sh” 12 分前 12 分前 mysql-1
29007b1a67a8 pengyudong/nginx:v1 “/usr/local/nginx/sb…” 2時間前 約1時間前
[root@localhost ~]# docker exec -it mysql-1 /bin/bash
[root@29007b1a67a8 /]# ss -antl
状態 受信Q 送信Q ローカルアドレス:ポート ピアアドレス:ポート プロセス
聞く 0 128 0.0.0.0:80 0.0.0.0:*
聞く 0 80 *:3306 :

4. PHPイメージをビルドする

[root@localhost ~]# cd /usr/src/
[root@localhost src]# ls
デバッグカーネル mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz php-8.0.10.tar.gz
[root@localhost src]# docker cp php-8.0.10.tar.gz php8:/usr/src/

[root@a116c2a489fe src]# ls
デバッグカーネル php-8.0.10.tar.gz
[root@a116c2a489fe src]# yum -y インストール epel-release

[root@a116c2a489fe src]# yum -y install sqlite-devel libzip-devel libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libicu-devel libjpeg libjpeg-devel libpng libpng-devel openldap-devel pcre-devel freetype freetype-devel gmp gmp-devel readline readline-devel libxslt libxslt-devel oniguruma gcc gcc-c++ make libcurl-devel

[root@a116c2a489fe src]# yum -y インストール http://mirror.centos.org/centos/8-stream/PowerTools/x86_64/os/Packages/oniguruma-devel-6.8.2-2.el8.x86_64.rpm

[root@a116c2a489fe src]# tar xf php-8.0.10.tar.gz 
[root@a116c2a489fe src]# cd php-8.0.10

[root@a116c2a489fe php-8.0.10]# ./configure --prefix=/usr/local/php8 \
> --with-config-file-path=/etc \
> --enable-fpm \
> --disable-debug \
> --disable-rpath \
> --enable-shared \
> --enable-soap \
有効なexif \
--enable-ftp \
--enable-gd \
--jpeg 付き \
--with-zlib-dir \
--freetype \ で
--gettext \ で
--enable-mbstring \
--enable-pdo \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--readline で読み込みます \
--enable-shmop \
--enable-simplexml \
--en> --with-openssl \
> --enable-bcmath \
> --with-iconv \
> --with-bz2 \
> --enable-calendar \
> --with-curl \
> --enable-exif \
> --enable-ftp \
> --enable-gd \
> --jpeg \ で始まる
> --with-zlib-dir \
> --freetype \
> --with-gettext \
> --enable-mbstring \
> --enable-pdo \
> --with-mysqli=mysqlnd \
> --with-pdo-mysql=mysqlnd \
> --with-readline \
> --enable-shmop \
> --enable-simplexml \
> --enable-sockets \
> --zip \ で
> --enable-mysqlnd-compression-support \
> --with-pear \
> --enable-pcntl \
> --enable-posix

[root@a116c2a489fe php-8.0.10]# make -j $(grep 'プロセッサ' /proc/cpuinfo | wc -l) && make install

[root@a116c2a489fe php-8.0.10]# echo 'export PATH=/usr/local/php7/bin:$PATH' > /etc/profile.d/php.sh
[root@a116c2a489fe php-8.0.10]# ソース /etc/profile.d/php.sh


[root@a116c2a489fe php-8.0.10]# cp -f /usr/src/php-8.0.10/php.ini-production /etc/php.ini
cp: '/etc/php.i' を上書きしますか? はい
[root@a116c2a489fe php-8.0.10]# cp -f /usr/src/php-8.0.10/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@a116c2a489fe php-8.0.10]# chmod +x /etc/init.d/php-fpm
[root@a116c2a489fe php-8.0.10]# cp -f /usr/local/php8/etc/php-fpm.conf.default /usr/local//php8/etc/php-fpm.conf  
[root@a116c2a489fe php-8.0.10]# cp -f /usr/local/php8/etc/php-fpm.d/www.conf.default /usr/local/php8/etc/php-fpm.d/www.conf
[root@a116c2a489fe php-8.0.10]# mkdir /scripts
[root@a116c2a489fe php-8.0.10]# vi /scripts/start.sh
[root@a116c2a489fe php-8.0.10]# cat /scripts/start.sh 
#!/bin/bash
/etc/init.d/php-fpm を起動します
バイナリ

[root@a116c2a489fe php-8.0.10]# chmod +x /scripts/start.sh 
[root@a116c2a489fe php-8.0.10]# /etc/init.d/php-fpm を起動します
php-fpm の起動が完了しました
[root@a116c2a489fe php-8.0.10]# ss -antl
状態 受信Q 送信Q ローカルアドレス:ポート ピアアドレス:ポート プロセス      
聞く 0 128 127.0.0.1:9000 0.0.0.0:*                      
[root@a116c2a489fe php-8.0.10]# 

[root@0e6298ebe47d php-8.0.10]#
[root@0e6298ebe47d php-8.0.10]# mkdir -p /var/www/html
[root@0e6298ebe47d php-8.0.10]# vi /var/www/html/index.php
[root@0e6298ebe47d php-8.0.10]# cat /var/www/html/index.php

<?php phpinfo(); ?>

[root@0e6298ebe47d php-8.0.10]#

[root@localhost src]# docker commit -c 'CMD ["/bin/bash","/scripts/start.sh"]' -p php8 pengyudong/php8:v1
sha256:8ee4d3fb7bd27b0242cf096464932ff98fbc42d641d1f6b9cac7ddccb429f450
[root@localhost src]# docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
pengyudong/php8 v1 8ee4d3fb7bd2 22秒前 1.52GB
pengyudong/mysql v1 9c8b9aa2d917 30分前 3.81GB
pengyudong/nginx v1 2153a12060f6 約1時間前 576MB
centos 最新 5d0da3dc9764 2か月前 231MB
[root@localhost src]# 


5. lnmpを設定する

//nginx を設定する
[root@localhost ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
a116c2a489fe centos "/bin/bash" 28 分前 28 分前 php8
16256ee64b9e centos "/bin/bash" 55 分前 29 分前 mysql
9c129a20e7c7 pengyudong/nginx:v1 "/usr/local/nginx/sb..." 59 分前 57 分前 blissful_perlman
[root@localhost ~]# docker exec -it 9c129a20e7c7 /bin/bash

[root@9c129a20e7c7 ~]# vi /usr/local/nginx/conf/nginx.conf
...
        位置 / {
            ルートhtml;
            index index.php index.html index.htm; //index.phpを追加
        }
...
        場所 ~ \.php$ {
            root /var/www/html; // fastcgi_pass 127.0.0.1:9000 を変更します。
            fastcgi_index インデックス.php;
            fastcgi_param SCRIPT_FILENAME $Document_root$fastcgi_script_name; // 変更 include fastcgi_params;
        }
...

[root@localhost ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
a116c2a489fe centos "/bin/bash" 35 分前 35 分前 php8
16256ee64b9e centos "/bin/bash" 約1時間前 36分前 mysql
9c129a20e7c7 pengyudong/nginx:v1 "/usr/local/nginx/sb..." 約 1 時間前 46 秒前 blissful_perlman
[root@localhost ~]# docker commit -c 'CMD ["/usr/local/nginx/sbin/nginx"]'-p 9c129a20e7c7 pengyudong/nginx:v2
sha256:8ca4733bb94edf9dac98982610e626b663052000d2c165127e257eeebec34027
[root@localhost ~]# 
sha256:dd9ec3401a3df247bc19cb792a076cfa915e67cb88fdbdfbf2284bbda6ac9a78
[root@localhost ~]# docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
pengyudong/nginx v2 dd9ec3401a3d 7秒前 576MB
pengyudong/php8 v1 8ee4d3fb7bd2 8分前 1.52GB
pengyudong/mysql v1 9c8b9aa2d917 38 分前 3.81GB
pengyudong/nginx v1 2153a12060f6 約1時間前 576MB
centos 最新 5d0da3dc9764 2か月前 231MB
[root@localhost ~]# 

//php を設定する
[root@localhost ~]# docker exec -it php8 /bin/bash
[root@a116c2a489fe /]# mkdir -p /var/www/html
[root@a116c2a489fe /]# vi /var/www/html/index.php
[root@a116c2a489fe /]# cat /var/www/html/index.php
<?php
  phpinfo();
?>
[ルート@a116c2a489fe /]# 

[root@localhost ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
a116c2a489fe centos "/bin/bash" 37 分前 37 分前 php8
16256ee64b9e centos "/bin/bash" 約1時間前 38分前 mysql
9c129a20e7c7 pengyudong/nginx:v1 "/usr/local/nginx/sb..." 約 1 時間前 3 分前 blissful_perlman
[root@localhost ~]# docker commit -c 'CMD ["/bin/bash","/scripts/start.sh"]' -p php8 pengyudong/php8:v2
sha256:6e582cd9d5e8ce4b91addb12e6a53a6e3f5cf762aabe2ce24e5f6396ec3f15ed
[root@localhost ~]# docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
pengyudong/php8 v2 6e582cd9d5e8 8秒前 1.52GB
pengyudong/nginx v2 dd9ec3401a3d 2分前 576MB
pengyudong/php8 v1 8ee4d3fb7bd2 10分前 1.52GB
pengyudong/mysql v1 9c8b9aa2d917 40分前 3.81GB
pengyudong/nginx v1 2153a12060f6 約1時間前 576MB
centos 最新 5d0da3dc9764 2か月前 231MB
[root@localhost ~]# 

//コンテナモードを使用してコンテナ間の通信を有効にします [root@localhost ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
a116c2a489fe centos "/bin/bash" 38 分前 38 分前 php8
16256ee64b9e centos "/bin/bash" 約1時間前 40分前 mysql
9c129a20e7c7 pengyudong/nginx:v1 "/usr/local/nginx/sb..." 約 1 時間前 4 分前 blissful_perlman
[root@localhost ~]# docker rm -f a116c2a489fe 16256ee64b9e 9c129a20e7c7
a116c2a489fe
16256ee64b9e
9c129a20e7c7
[root@localhost ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
[root@localhost ~]# 

[root@localhost ~]# docker run --name nginx -dit -p 80:80 pengyudong/nginx:v2
f64441e51181b9dc41806a9b1363a22ce28fd83f4cbd7f85df6eed88774a4197
[root@localhost ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
f64441e51181 pengyudong/nginx:v2 "/usr/local/nginx/sb..." 7 秒前 7 秒前にアップ 0.0.0.0:80->80/tcp, :::80->80/tcp nginx
[root@localhost ~]# 

[root@localhost ~]# docker run --name mysql -dit --net=container:f64441e51181 pengyudong/mysql:v1
96530de34b37a5fc6af1564df64f423321b04641f6aea5a3dd5be199f02a8510
[root@localhost ~]# docker run --name php8 -dit --net=container:f64441e51181 pengyudong/php8:v2
27834149fc66f007ba1cca5d298351d39f7d819af3f1ec6fcf8e12bbdc39fb4d
[root@localhost ~]# 
[root@localhost ~]# docker ps
コンテナID イメージ コマンド 作成ステータス ポート名
27834149fc66 pengyudong/php8:v2 "/bin/bash /scripts/..." 29秒前 28秒前 php8
96530de34b37 pengyudong/mysql:v1 "/scripts/start.sh" 約 1 分前 約 1 分前 mysql
f64441e51181 pengyudong/nginx:v2 "/usr/local/nginx/sb..." 2 分前 2 分前にアップ 0.0.0.0:80->80/tcp, :::80->80/tcp nginx
[root@localhost ~]# docker exec -it nginx /bin/bash
[root@f64441e51181 /]# ss -antl
状態 受信Q 送信Q ローカルアドレス:ポート ピアアドレス:ポート プロセス      
聞く 0 128 127.0.0.1:9000 0.0.0.0:*                      
聞く 0 128 0.0.0.0:80 0.0.0.0:*                      
聞く 0 80 *:3306 *:*                      
[ルート@f64441e51181 /]# 

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

これで、docker コンテナを使用したランプ アーキテクチャの構築に関するこの記事は終了です。docker を使用したランプの構築に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Dockerを使用してMacにランプ環境を構築する
  • Dockerで構築されたランプアプリケーションの例の詳細な説明
  • Dockerを使用してLAMPオペレーティング環境を構築するための詳細なチュートリアル

<<:  CSS 複合セレクタの具体的な使用法

>>:  CSS3 テキストシャドウ text-shadow プロパティの詳細な説明

推薦する

Vueは秒殺しのカウントダウンコンポーネントを実装する

この記事では、2番目のキルカウントダウンコンポーネントを実装するためのVueの具体的なコードを参考ま...

LinuxでifconfigとaddrがIPアドレスを表示できない問題を解決する

1. 仮想マシンにLinuxシステムをインストールし、仮想マシンを起動し、rootとパスワードを入力...

Vue で手ぶれ補正を実装するためのサンプルコード

手ぶれ防止: 繰り返しのクリックによるイベントのトリガーを防止まず、揺れとは何でしょうか? 震えるの...

Linux 継続的インテグレーションで Maven を自動的にインストールする方法

Mavenパッケージを解凍する tar xf apache-maven-3.5.4-bin.tar....

Mysql 5.7.19 無料インストール版 (64 ビット) の設定方法に関する詳細なチュートリアル

公式サイトから mysql-5.7.19-winx64 をダウンロードします。これはシステムの 64...

MySQL 8.0の新機能、隠しフィールドの詳細な説明

序文MySQL バージョン 8.0.23 では、新しい機能「Invisible Column (In...

HTML ハイパーリンク内の中国語文字化けの分析と解決

Vm 内のハイパーリンク URL は、Get 要求のパラメータとして中国語と連結する必要があります。...

Dockerコンテナの入退出方法の詳細な説明

1 Dockerサービスを開始するまず、docker サービスを開始する方法を知っておく必要がありま...

Office ファイルのオンライン プレビュー用の Vue サンプル コード

最近、電子アーカイブに取り組んでおり、バックエンドではファイルの Huawei Cloud OSS ...

CSS 不透明度子要素が親要素の透明度を継承するためのソリューションの詳細な説明

プロジェクト ページの作成中に、子要素が親要素の透明度を継承するという問題に遭遇しました。多くのドキ...

Linux学習におけるmkdirコマンドの詳しい説明

目次序文1. ファイルの概念に関する基礎知識2. mkdir コマンド序文最近、Linux にますま...

VirtualBox仮想マシンがNATモードで外部ネットワークに接続できない問題の解決策

背景VirtualBox 仮想マシン (Ubuntu 16.04 システムがロードされている) には...

Linux の grep コマンドと egrep コマンドの詳細な説明

反復/egrep構文: grep [-cinvABC] 'word' ファイル名-c...

Node.jsをゼロから学ぶ

目次URL モジュール1. 解析メソッド2. フォーマット方法3. 解決方法イベントモジュール(イベ...