web-dev-qa-db-fra.com

Comment télécharger et décompresser dans Dockerfile

Donc, je l'ai, cela fonctionne, mais je veux changer la façon de télécharger immédiatement le fichier et de le décompresser:

Dockerfile
FROM wordpress:fpm

# Copying themes from local  
COPY  ./wordpress/ /var/www/html/wp-content/themes/wordpress/    
RUN chmod -R 777 /var/www/html/    

Comment puis-je télécharger immédiatement le fichier à partir du site et le décompresser dans le dossier approprié?

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 

J'ai essayé:

#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;
9
DromiX

Dockerfile a une "commande native" pour copier et extraire .tar.gz des dossiers.

Vous pouvez donc changer le type d'archive de . Zip à . Tar.gz (peut-être que dans les futures versions, Zip sera également pris en charge, je ne suis pas sûr) et utilisez ADD au lieu de COPY.

En savoir plus sur ADD

1
Taron Saribekyan