2016-10-14 7 views
1

私はapache2サーバを使ってDockerでDjangoプロジェクトをホストしようとしています。私は手動でApacheサーバーを起動しており、デフォルトサイトにアクセスできます。しかし、000-default.configファイルを構成すると、エラーが発生します。このサーバーにアクセスする権限がありません。ドッカーのこのサーバ(apache2)にアクセスする権限がありません

これは私の000-default.configファイル

<VirtualHost *:8000> 
    DocumentRoot /code/demo 
    WSGIScriptAlias//code/demo/app/wsgi.py 
    <Directory "/code/demo/backup"> 
      Require all granted 
    </Directory> 
    CustomLog ${APACHE_LOG_DIR}/access.log combined 
    ErrorLog ${APACHE_LOG_DIR}/error.log 
</VirtualHost> 

であり、これは私が上に示した同じディレクトリからDjangoのプロジェクトをインポートしています私のDockerfile

FROM ubuntu 
MAINTAINER [email protected] 
RUN apt-get update && apt-get -y --force-yes install build-essential 
RUN apt-get -y --force-yes install python python-pip python-dev 
RUN apt-get -y --force-yes install libffi-dev libssl-dev 
RUN apt-get install -y --force-yes libmysqlclient-dev 
RUN mkdir /code 
ADD evn_packages.txt /code 
ADD python_packages.txt /code 
RUN apt-get install -y apache2 
RUN apt-get install -y mariadb-server 
RUN pip install --upgrade pip 
RUN pip install -r python_packages.txt 
RUN apt-get install -y vim 
ADD django /code 
EXPOSE 8000 
RUN apt-get install -y libapache2-mod-wsgi 

です。デフォルトのDjangoサーバでもプロジェクトを実行できますが、ブラウザでそのプロジェクトにアクセスすることはできません。私はポートフォリオをデフォルトのポート80で動作していなかったので、ポートリスニングを8000に変更しました。

ドッカーには新しく、Dockerfileでの許可はありませんか?私はネット上で良いコンテンツを見つけることができないので、Dockangのapache2を使ってDjangoプロジェクトをホストする方法についていくつかのリンクを共有できますか?スタートのために

答えて

1

<Directory "/code/ilab/backup"> 

は次のようになります。一般的には

<Directory "/code/demo/app"> 

それが学ぶためにたくさんがあるとして、ゼロから自分をドッカーイメージを構築しようとしているように悪い考えです物事は正しい方法で行います。例えば、Dockerがstdout/stderrにそれらをキャプチャできるようにするために、それらをstdout/stderrに送信する必要があるときに、コンテナ内のファイルにログを送信することなどの、別の問題があります。

すべてのことを正しく設定し、アプリケーションを展開するのが比較的容易な事前構築済みの画像を探してみてください。

:一例として、物事がで行われ方法を見て
関連する問題