Итак, у меня он работает, но я хочу изменить способ, чтобы сразу скачать файл и распаковать его:
Dockerfile
FROM wordpress:fpm
# Copying themes from local
COPY ./wordpress/ /var/www/html/wp-content/themes/wordpress/
RUN chmod -R 777 /var/www/html/
Как сразу скачать файл с сайта и разархивировать в соответствующую папку?
docker-compose.yml
wordpress:
build: .
links:
- db:mysql
nginx:
image: raulr/nginx-wordpress
links:
- wordpress
ports:
- "8080:80"
volumes_from:
- wordpress
db:
image: mariadb
environment:
MYSQL_ROOT_PASSWORD: qwerty
Я пытался:
#install unzip and wget
RUN \
apt-get update && \
apt-get install unzip wget -y && \
rm -rf /var/lib/apt/lists/*
RUN wget -O /var/www/html/type.zip http://wp-templates.ru/download/2405 \
&& unzip '/var/www/html/type.zip' -d /var/www/html/wp-content/themes/ && rm
/var/www/html/type.zip || true;
Попробуйте использовать CMD вместо RUN, CMD произойдет после загрузки Docker и вызова точки входа.

В Dockerfile есть «собственная команда» для копирования и извлечения файлов .tar.gz.
Таким образом, вы можете изменить тип архива с .zip на .tar.gz (возможно, в будущих версиях также будет поддерживаться zip, я не уверен) и использовать ADD вместо COPY.
Узнать больше о ADD
Вопрос в том, как совместить ADD с wget, потому что ADD распаковывает только файлы местный.
Чрезвычайно глупо, что ADD копирует, извлекает или загружает… но никогда не микширует. Лично я создал бы 3 разных глагола (с одним значением). (извините за тираду)
Что происходит, когда вы запускаете эту команду? Я бы удалил часть
|| true, так как это подавит любой сбой, который вам на самом деле не нужен.