docker が nginx コンテナを構築する際の一連の問題
背景: 最近、友人のために docker シリーズの技術共有を計画しました。しばらく docker 関連の技術を勉強した後、nginx コンテナを構築する際の落とし穴を記録します
1。 .nginx サーバーのルート ディレクトリ 問題
Docker 公式イメージは、debian/jessie プラットフォームに基づいた nginx を提供していますが、そのファイル構造は ubuntu の nginx とは異なります
例:
niginx コンテナを実行します
<code><span>//80端口被占用,so...</span> $ sudo docker run <span>-it</span><span>-p</span><span>800</span>:<span>800</span> nginx $ sudo docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES <span>1801</span>a32aab54 nginx <span>"nginx -g 'daemon off"</span><span>2</span> minutes ago Up <span>2</span> minutes <span>80</span>/tcp, <span>443</span>/tcp, <span>0.0</span><span>.0</span><span>.0</span>:<span>800</span><span>-></span><span>800</span>/tcp berserk_kare</code>
コンテナを入力してください
<code><span>$ </span>sudo docker exec -it <span>1801</span>a32aab54 /bin/bash root<span>@1801a32aab54</span><span>:/</span><span># </span></code>
nginx ディレクトリを表示します
<code><span># cd /etc/nginx/</span> conf<span>.d</span>/ koi-utf mime<span>.types</span> nginx<span>.conf</span> uwsgi_params fastcgi_params koi-win modules/ scgi_params win-utf </code>
おなじみの /sites-available だけでなく、/sites-enabled がないことがわかります
引き続き nginx 設定を表示します
<code><span># cat /conf.d/default.conf</span><span>server</span> { listen <span>80</span>; server_name localhost; <span>#charset koi8-r;</span><span>#access_log /var/log/nginx/log/host.access.log main;</span> location / { root /usr/share/nginx/html; <span>index</span><span>index</span>.html <span>index</span>.htm; } <span>#error_page 404 /404.html;</span><span># redirect server error pages to the static page /50x.html</span><span>#</span> error_page <span>500</span><span>502</span><span>503</span><span>504</span> /<span>50</span>x.html; location = /<span>50</span>x.html { root /usr/share/nginx/html; } <span>#...省略php-fpm配置,好长..</span> }</code>
ルート ディレクトリ設定: root /usr/share/nginx /html;
テスト
<code><span># cd /usr/share/nginx/html</span><span># touch index.html</span><span># echo "test nginx in docker" >index.html</span></code>
php-fpm設定関連
').addClass('事前番号付け').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });上記では、docker と nginx のコンテンツを含む、nginx コンテナーの構築に関する 167 の docker docker シリーズの問題を紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。