Я следил за Краткое руководство: Составьте и WordPress и не могу заставить его работать.
Я думаю, что это как-то связано с моей структурой каталогов. После выполнения всех шагов у меня был подкаталог с именем wordpress
но я думаю, что весь мой код ссылается на подкаталог с именем code
поэтому я решил переименовать мой wordpress
каталог code
, Я тогда перезапущу docker-compose up
но это также, к сожалению, не сработало.
ОБНОВИТЬ: От «не могу заставить его работать» Когда я вхожу загрузить веб-сайт PHP-сервер возвращает:
Not Found
The requested resource / was not found on this server
Ваш Dockerfile
а также docker-compose.yml
должен быть в вашем каталоге WordPress. (Тот, который вы переименовали код)
По какой-то причине вы думаете, что существует каталог кода. Там нет такого каталога в вашем WordPress, и это в совершенстве нормальный.
Давайте разберем команду, которая вас смущает:
Dockerfile
:ADD . /code
Эта строка позволяет скопировать указанный каталог (здесь он.) В указанный каталог контейнера (здесь это / code).
Это эквивалентно cp
Команда только то, что вы копируете с хоста в контейнер.
docker-compose.yml
:volumes:
- .:/code
Эта команда открывает каталог для контейнера. Здесь мы выставляем каталог хоста. в каталог / код контейнера.
Примечание: если вы понимаете объем, вы можете понять, что ADD
Инструкция в вашем Dockerfile не нужна.
Ваш docker-compose.yml
а также Dockerfile
выше предполагаемого рабочего каталога.
Поэтому при выполнении docker-compose он копирует содержимое вашего текущего каталога в каталог / code контейнера.
Поэтому, когда php пытается выполнить в / code, он не видит ожидаемый файл, следовательно, ошибка Not found.
Либо скопировать вас Dockerfile
а также docker-compose.yml
в каталог кодов (тот, который вы переименовали).
Или измените Dockerfile
а также docker-compose.yml
так что они указывают на хороший каталог.
Внимательно изучив это краткое руководство: Dockerfile
и составной файл должен быть внутри вашего wordpress
папка проекта, которую вы создали в начале. А также внутри этого wordpress
папка должна быть подпапка code
, Бежать docker-compose
изнутри wordpress
папка таким образом должна работать.
К сожалению, когда вы запускаете curl https://wordpress.org/latest.tar.gz | tar -xvzf -
команда изнутри вашего wordpress
папка проекта создает другую папку wordpress
ниже каталога вашего проекта. Вы должны переименовать это в code
,