My Docker Compose File не работает должным образом - PullRequest
0 голосов
/ 27 января 2019

привет, как вы, ребята, у меня есть 2 файла docker-compose, но оба файла не работают должным образом, я сталкиваюсь с этим введите описание изображения здесь ошибка, пожалуйста, скажите мне любое тело, как это исправить, я даю вам файл composeсодержимое

(СОСТАВИТЬ ФАЙЛ 1)

db:
  build: ./mysql
  volumes:
    - /opt/containers/personal/mysql:/var/lib/mysql
web:
  build: ./web
  ports:
    - 80:80
  volumes:
    - /opt/containers/personal/php:/var/www/html
  links:
    - db:db

(СОСТАВИТЬ ФАЙЛ 2)

version: "3"
services:
  nginx:
    build: ./nginx
    ports:
      - 80:80
      - 443:443
    volumes:
      - /opt/containers/personal/nginx/certs:/certs
    depends_on: 
      - web
    networks:
      - webdbnet
  web:
    build: ./web
    volumes:
      # Example of host volume mounted in container
      # - /opt/containers/personal/php:/var/www/html
      # Example of docker volume mounted in container
      - web-data:/var/www/html
    networks:
      - webdbnet
  db:
    # build: ./mysql
    image: mysql:latest
    environment:
      MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
    volumes:
      - /opt/containers/personal/mysql:/var/lib/mysql
    networks:
      - webdbnet

networks:
  webdbnet:

volumes:
  web-data:

(И ЭТО МОЙ СТРОИТЕЛЬНЫЙ КОНТЕНТ-ФАЙЛ DOCKER)

FROM php:7-apache

RUN apt-get update && apt-get install -y \
      libmcrypt-dev \
      libfreetype6-dev \
      libjpeg-dev \
      libpng-dev \
    && a2enmod rewrite expires \
    && pecl install mcrypt-1.0.1 \
    && docker-php-ext-install gd mysqli opcache iconv \
    && docker-php-ext-configure gd \
       --with-freetype-dir=/usr/include/ \
       --with-jpeg-dir=/usr/include/ \
       --with-png-dir=/usr/include/ \
    && docker-php-ext-enable mcrypt mysqli

COPY index.html /var/www/html/
COPY index.php  /var/www/html/

Извините за мой плохой английский

Ответы [ 2 ]

0 голосов
/ 27 января 2019

Когда вы используете официальный образ для php и для этого примера попробуйте установить pecl install mcrypt-1.0.1, после этой команды вам нужно будет добавить эту строку в

RUN pecl install mcrypt

RUN echo "extension=mcrypt.so" >> /usr/local/etc/php/conf.d/docker-php-ext-intl.ini

Только расширение, установленное через docker-php-ext-install, не являетсятребуется включить с помощью * .so файла

Надеюсь, это поможет ..

0 голосов
/ 27 января 2019

Похоже, вы используете не ту версию PHP для mcrypt.

Попробуйте заменить

FROM php:7-apache

с

FROM php:7.2.14-apache-stretch

В вашем файле сборки.

php:7-apache выводит вас на последнюю версию, которая является 7.3.1, а mcrypt, кажется, хочет 7.2. *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...