更新时间:2023-11-18 17:00:10
像原始问题的评论中提到的 php:fpm 图像要求将卷设置为 / var / www / html
。
如果要使用其他目录,可以使用自己的Dockerfile(基于php:fpm )。 Dockerfile
会这样:
FROM php:fpm
WORKDIR / var / www
好像将工作区设置为所需的目录这个窍门。
然后在您的 docker-compose.yml
中,您将使用该Dockerfile构建而不是使用php :fpm image直接。
版本:2
服务:
#...
fpm:
build:./path/to/dockerfile
卷:
- ./src:/var/www
I'm having an issue when trying to start multiple containers with docker-compose:
Dockerfile:
FROM nginx:1.9
ADD ./nginx-sites/default /etc/nginx/sites-available/default
docker-compose.yml:
version: "2"
services:
web:
build: .
ports:
- "80:80"
volumes:
- ./src:/var/www
links:
- fpm
fpm:
image: php:7-fpm
volumes:
- ./src:/var/www
When I use docker-compose up
to start the application, I get the following error:
ERROR: Container command not found or does not exist.
Would love some help with this issue.
Like mentioned in the comments to the original question the php:fpm image requires for it's volume to be set to /var/www/html
.
If you want to use a different dir you can work around that by using your own Dockerfile (based on php:fpm). That Dockerfile
would like this:
FROM php:fpm
WORKDIR /var/www
It seems like setting the workdir to the desired dir does the trick.
Then in your docker-compose.yml
you would build with that Dockerfile instead of using the php:fpm image directly.
version: "2"
services:
# ...
fpm:
build: ./path/to/dockerfile
volumes:
- ./src:/var/www