2017-08-22 9 views
-1

私はnginxサーバで作業したいと思います。私はPHPを使用します:7.0-fpm ドッカーファイルには何を書いてください。nginxとphp:7.0-fpmのドッカーファイルにはどうすればよいですか?

+0

ないあなたが達成したいのかわからですが、あなたはnginxのとPHPをしたい場合コンテナがリンクされている場合は、docker-composeを使用する必要があります(https://docs.docker.com/compose/ – user2915097

答えて

0

これは私のドッキングウィンドウ-compose.yml

version: '3' 
services: 
    php: 
    build: 
     context: . 
     dockerfile: Dockerfile_php 
    image: php-fpm71:phalcon 
    networks: 
     - app 
    ports: 
     - "9000:9000" 
    volumes: 
     - ./www:/var/www/html 
     - ./conf/php/php.ini:/usr/local/etc/php/php.ini 
     - ./shared:/shared 
    nginx: 
    build: 
     context: . 
     dockerfile: Dockerfile_nginx 
    networks: 
     - app 
    depends_on: 
     - php 
    ports: 
     - "80:80" 
    volumes: 
     - ./www:/var/www/html 
     - ./conf/nginx/conf.d:/etc/nginx/conf.d 
     - ./logs/nginx:/var/log/nginx 
     - ./shared:/shared 
    mysql: 
    networks: 
     - app 
    depends_on: 
     - php 
    image: mysql:latest 
    ports: 
     - "3306:3306" 
    environment: 
     MYSQL_ROOT_PASSWORD: root 
    volumes: 
     - ./data/mysql:/var/lib/mysql 
     - ./shared:/shared 
networks: 
    app: 

Dockerfile_nginx

FROM nginx:latest 

MAINTAINER Yakup Arslan <[email protected]> 

RUN apt-get update -y 
RUN apt-get install -y \ 
        vim 

RUN apt-get autoremove -y && \ 
    apt-get autoclean -y && \ 
    apt-get clean -y && \ 
    rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* 

RUN rm -rf /var/log /var/cache 

Dockerfile_php

# 
# PHP-7.1 Phalcon Support 
# 
# 

# Pull base image 
FROM php:7.1-fpm 

MAINTAINER Yakup Arslan <[email protected]> 

RUN curl -O https://codeload.github.com/phalcon/cphalcon/tar.gz/v3.1.2 
RUN tar xvzf v3.1.2 
RUN cd cphalcon-3.1.2/build && ./install 
RUN cd ../../ && rm -Rf cphalcon-3.1.2 && rm -Rf v3.1.2 
RUN echo extension=phalcon.so > /usr/local/etc/php/conf.d/phalcon.ini 

RUN apt-get update -y 
RUN apt-get install -y \ 
        git \ 
        zip \ 
        unzip \ 
        libfreetype6-dev \ 
        libjpeg62-turbo-dev \ 
        libmcrypt-dev \ 
        libpng12-dev 

RUN git clone https://github.com/phalcon/phalcon-devtools.git /usr/local/lib/phalcon-devtools && \ 
    ln -svf /usr/local/lib/phalcon-devtools/phalcon.php /usr/local/bin/phalcon && \ 
    chmod ugo+x /usr/local/bin/phalcon 

RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \ 
    php -r "if (hash_file('SHA384', 'composer-setup.php') === '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" && \ 
    php composer-setup.php && \ 
    php -r "unlink('composer-setup.php');" && \ 
    mv composer.phar /usr/local/bin/composer 

RUN docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ 
RUN docker-php-ext-install -j$(nproc) mysqli \ 
             pdo_mysql \ 
             bcmath \ 
             gd 

RUN apt-get autoremove -y && \ 
    apt-get autoclean -y && \ 
    apt-get clean -y && \ 
    rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /etc/php5 /etc/php/5* /usr/lib/php/20121212 /usr/lib/php/20131226 

RUN rm -rf /var/log /var/cache 
+0

を参照)。 upars。私はcompose.ymlを使う必要がありますか?別の方法でもいいですかドッカーファイルだけではありません –

+0

[link](https://hub.docker.com)にドッカーアカウントを作成し、自分のイメージをコミットする必要があります。その後、 'docker run -it yourusername/yourcustomimage bash'を呼び出すことで自分のイメージを使用することができます。 – yakupars

関連する問題