Follow the below steps to mount an external drive inside PHP container to use the Uploads folder.
Steps
- Create a directory on the host
/data/example.com/uploads/
- Run below command
ee shell example.com
- Create the directory inside the container where you want to mount the directory
/var/www/htdocs/current/wp-content/uploads
- Edit
docker-compose.yml
for the site at below location
/opt/easyengine/sites/example.com
- We need to now add a line like the following at two places.
a. Below the htdocs line for php service
php:
image: easyengine/php7.3:v4.0.0
restart: always
labels:
- "io.easyengine.site=${VIRTUAL_HOST}"
volumes:
- "htdocs:/var/www"
- "/data/example.com/uploads/:/var/www/htdocs/current/wp-content/uploads"
b. Below the htdocs line for nginx service
nginx:
image: easyengine/nginx:v4.0.3
depends_on:
- php
restart: always
labels:
- "io.easyengine.site=${VIRTUAL_HOST}"
volumes:
- "htdocs:/var/www"
- "/data/example.com/uploads/:/var/www/htdocs/current/wp-content/uploads"
- Once the above lines are changed Run the below command
ee site disable example.com && ee site enable example.com
Verification
Upload a file and check if you can see the file at the host path. In our example scenario – /data/example.com/uploads/