如何在Docker容器中重新加载服务配置(php-fpm)?

时间:2018-07-19 16:31:31

标签: php docker

我需要以root用户身份运行php-fpm。

我正在执行此页面Start PHP-FPM with root option automatically上的步骤,但是好像based并没有包含systemd和systemctl:16.04,所以我无法重新加载服务配置。

然后如何进行其他操作?今天,我正在同一容器中安装apache / php-fpm。

谢谢。

Dockerfile:

FROM ubuntu:16.04

# Installer Nano / Apache2
RUN apt-get update && apt-get install -y \
    apt-utils \
    nano \
    apache2

# Activer le module Apache mod_proxy_fcgi
RUN a2enmod proxy_fcgi

# Activer le module Apache mod_rewrite
RUN a2enmod rewrite

# Installation PHP + extensions / composer
RUN apt-get install -y \
    php-fpm \
    php-mcrypt \
    php-mysql \
    php-apcu \
    php-curl \
    php-intl \
    php-xdebug \
    php-xml \
    php-zip \
    php-bcmath \
    php-gd \
    php-json \
    php-ldap \
    php-mbstring \
    php-mysql \
    php-pgsql \
    php-sqlite3 \
    php-xml \
    php-xsl \
    php-zip \
    php-soap \
    php-opcache \
    composer

# Creation dossier php pour pid/socket php-fpm
RUN mkdir /run/php

# Activer config
RUN a2enconf php7.0-fpm

EXPOSE 80

VOLUME /var/www/html
WORKDIR /var/www/html

# Clean up APT when done.
RUN apt-get clean

我的docker-compose文件:

version: '2'

services:
    apachephp:
        container_name: monserveur
        image: toto/apache2_php-fpm7.0.30:0.4
        ports:
            - "80:80"
        volumes:
            - D:\projets\lab.magento225:/var/www/html
        links:
            - db:db
        tty: true
    db:
        container_name: mabdd
        image: mysql:5.6
        ports:
            - "3306:3306"
        volumes:
            - D:\local.databases\lab.magento225:/var/lib/mysql
        environment:
            - MYSQL_ROOT_PASSWORD=root
    pma:
        container_name: phpmyadmin
        image: phpmyadmin/phpmyadmin
        ports:
            - "8080:80"
        links:
            - db:db

1 个答案:

答案 0 :(得分:0)

在任何基于Docker的环境中,最简单的方法是停止并删除容器并运行一个新容器,并且它将在启动时读取其新配置。