wordpress - 如何在 Dockerfile 中下载和解压

标签 wordpress docker dockerfile wget unzip

所以,我有,它可以工作,但我想更改立即下载文件并解压缩的方式:

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;

最佳答案

Dockerfile 具有用于复制和提取的“ native 命令”.tar.gz文件。

因此,您可以将存档类型从 .zip 更改为 .tar.gz(也许在 future 的版本中也会支持 zip,我不确定)并使用 ADD而不是 COPY .

Read more about ADD

关于wordpress - 如何在 Dockerfile 中下载和解压,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53840831/

相关文章:

docker - docker-compose何时使用当前生成的镜像,何时重新制作本地镜像?

docker - 无法打开在端口上运行的 docker 应用程序

php - 如果购物车包含特定的 Woocommerce 产品类别,则阻止添加到购物车

从多进程 docker 容器记录

python - 如何停止Docker数据库容器

docker - Traefik docker 镜像不能在 Windows 上运行,但可以在 MacOS 上运行?

docker - 使用 docker 运行 dotnet 1.1

javascript - jQuery:用户必须在页面上停留一段确定的时间才能显示内容

asp.net - 来自数据库的 WordPress 永久链接?

linux - 如果原始图像已被删除,如何查找并删除调整大小的 WordPress 图像?