Я пытаюсь перенести мою текущую среду разработки WordPress (на виртуальной машине) в Docker. Пока что все работает отлично, за исключением php-memcached.
libmemcached-dev, libmemcached11 и php-memcached все устанавливают и активируют себя правильно, но мне не удается установить соединение между клиентом memcached в контейнере wordpress с сервером memcached, работающим в отдельном контейнере memcached.
Страница концентратора док-станции memcached предлагает использовать —link, но у меня это не сработало, и это устаревший метод, которого я хотел бы избежать!
Dockerfile:
FROM wordpress
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
apt-utils \
&& apt-get install -y libmcrypt-dev \
libmagickwand-dev \
libmemcached-dev \
libmemcached11 \
libc-client-dev \
libkrb5-dev \
libtidy-dev \
libxslt1-dev \
libxslt1.1 \
&& rm -r /var/lib/apt/lists/*
RUN pecl install memcached \
&& pecl install imagick \
&& pecl install mcrypt-1.0.1
RUN docker-php-ext-enable imagick \
mcrypt \
memcached
RUN docker-php-ext-configure imap --with-kerberos --with-imap-ssl \
&& docker-php-ext-install imap
RUN docker-php-ext-install \
intl \
shmop \
sysvmsg \
sysvsem \
sysvshm \
tidy \
wddx \
xmlrpc \
xsl
Docker-compose.yml:
version: '3.3'
services:
db:
image: mysql:5.7
container_name: anweb-mysql
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
container_name: anweb-wp
links:
- cache
image: anwptest:latest
volumes:
- /home/andrew/anweb-wp:/var/www/html
ports:
- "8000:80"restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: anweb-phpmyadmin
environment:
WORDPRESS_DB_HOST: db:3306
restart: always
ports:
- "8080:80"volumes:
- phpmyadmin_data:/sessions
cache:
image: memcached
container_name: anweb-memcached
restart: always
ports:
- "11211:11211"entrypoint:
- memcached
- -m 64
volumes:
db_data:
wp_data:
phpmyadmin_data:
Что мне не хватает?
Задача ещё не решена.
Других решений пока нет …