docker pull nginx
を作成し、ここにファイルを配置します Nginx に相当するディレクトリを変更せずに docker にマッピングします。がコンテナに入りました
mkdir -p /data/nginx/{conf,conf.d,html,logs}
それが不便な場合は、次のようにすることもできます。 2 つのウィンドウを開いて 1 つを入力します。コンテナーに移動し、左側を右側にコピーします。これは、ファイルが正しいことを確認するためです
##启动容器 docker run -itd nginx /bin/bash #进入容器 docker attach xxxxxxxxxx
ファイル | マウント パス | ##nginx パス | ##設定ファイル |
/data/ nginx/conf/nginx.conf | /etc/nginx/nginx.conf | 設定ファイルフォルダ | |
/data/nginx/conf.d | /etc/nginx/conf.d | ホームページ フォルダー html パス | |
/data/nginx/ html | /usr/share/nginx/html | ログ ファイル | |
/data/nginx/logs | /var/log/nginx |
server { #端口号 listen 80; #定义使用 localhost 访问 server_name localhost; #charset koi8-r; #access_log /var/log/nginx/host.access.log main; location / { #根目录位置 root /usr/share/nginx/html; #index 文件位置 index 1.html; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} }
<html> <head> <title>Mynginx</title> </head> <body> <h2> 欢迎使用nginx! </h2> </body> </html>
docker run --name myNginx -d -p 8089:80 -v /data/nginx/html:/usr/share/nginx/html -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/conf.d:/etc/nginx/conf.d -v /data/nginx/logs:/var/log/nginx nginx
次はコンテナが正常に起動するかどうかを確認できます
docker ps
コンテナが表示されない場合は、起動に問題があることを意味します。設定ファイルの記述が間違っているか、マウントパスが間違っています。
起動後は直接起動できますブラウザlocalhost:8089 先ほど書いた1.indexのページが見られました
6。 nginxを停止せずに設定ファイルを更新する
設定ファイルを変更する場合、設定ファイルを更新する必要がありますこのとき、2つのウィンドウを開いてください非常にクールなウィンドウです
#进入容器 docker exec -it xxxxxxxxxxx /bin/bash #测试配置文件是否有问题 nginx -t #要是显示 successful 就可以更新了 nginx -s reload
以上がDocker に Nginx をデプロイする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。