Странно, запустил nginx версии 1.12 в докере с "рабочим" конфигом, результат тот же - 404.
У нас следующая задача - необходимо спрятать за nginx с десяток других веб сервисов, nginx будет работать только как реверс-прокси. DNS использовать нельзя, nginx будет использоваться внутри локальной сети, dns может быть недоступен, да и адреса серверов могут быть разные.
Т.е. надо поднять сервер по-умолчанию (без виртуальных серверов), где каждая "виртуальная папка" (location) будет проксировать запросы на другой веб-сервер. Пример
/a => http://10.86.11.80/
/b => http://some_server
/c => http://other_server/some_folder/api
и т.д.
Пока писал это понял что nginx`у будет необходимо заменить все ссылки в ответе, что вряд ли возможно или всё таки можно это сделать?
Ещё раз посмотрел "рабочий" конфиг, вы были правы, я нашёл location / в котором был такой же proxy_pass поэтому всё работало.