Как скачать и разархивировать в Dockerfile

Итак, у меня он работает, но я хочу изменить способ, чтобы сразу скачать файл и распаковать его:

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;

Что происходит, когда вы запускаете эту команду? Я бы удалил часть || true, так как это подавит любой сбой, который вам на самом деле не нужен.

David Maze 19.12.2018 02:53

Попробуйте использовать CMD вместо RUN, CMD произойдет после загрузки Docker и вызова точки входа.

H. Bloch 23.01.2020 10:02
Как убрать количество товаров в категории WooCommerce
Как убрать количество товаров в категории WooCommerce
По умолчанию WooCommerce показывает количество товаров рядом с категорией, как показано ниже.
16
2
22 832
1

Ответы 1

В Dockerfile есть «собственная команда» для копирования и извлечения файлов .tar.gz.

Таким образом, вы можете изменить тип архива с .zip на .tar.gz (возможно, в будущих версиях также будет поддерживаться zip, я не уверен) и использовать ADD вместо COPY.

Узнать больше о ADD

Вопрос в том, как совместить ADD с wget, потому что ADD распаковывает только файлы местный.

David Dale 10.07.2021 10:54

Чрезвычайно глупо, что ADD копирует, извлекает или загружает… но никогда не микширует. Лично я создал бы 3 разных глагола (с одним значением). (извините за тираду)

lapo 16.11.2021 14:11

Другие вопросы по теме