Получение страницы приветствия nginx вместо домашней страницы rails - PullRequest
0 голосов
/ 10 апреля 2020

Привет, я создал приложение rails (rails new railsapp). Мой docker файл

# Dockerfile

FROM ruby:2.7.0-alpine as builder

# Install dependencies for native extensions

RUN apk add --no-cache build-base libffi-dev
RUN apk add --no-cache sqlite-libs
RUN apk add --no-cache tzdata sqlite-dev
# This will be our application rootfolder

WORKDIR /application

# Copy all the content from current directory

COPY . /application

COPY Gemfile Gemfile.lock ./

# Build our application

RUN bundle install
RUN bundle exec rake

# Here we start a new stage
FROM nginx:latest
COPY nginx.conf /etc/nginx/conf.d/default.conf
COPY --from=builder /application/public /usr/share/nginx/html

Я создал образ, запустив docker image build -t railsapp. Когда я бегу,

 docker container run -p 8888:80 railsapp

я получаю "Welcome nginx page". Я должен получить страницу рельсов .. Но не отображается. Я не знаю, какую ошибку я допустил в файле docker. Я новичок ie до docker. Пожалуйста, кто-нибудь, помогите мне. Заранее спасибо.

nginx .conf

 server {
listen       80;
server_name  localhost;


location / {

// Я не знаю, что указывать в следующих директивах. Я написал следующий код для реагирования приложения.

    root   /usr/share/nginx/html;
    index  index.html index.htm;
    try_files $uri /index.html;                 
}

#error_page  404              /404.html;

# redirect server error pages to the static page /50x.html
#
error_page   500 502 503 504  /50x.html;
location = /50x.html {
    root   /usr/share/nginx/html;
}

}

1 Ответ

1 голос
/ 10 апреля 2020

Попробуйте удалить файл nginx html по умолчанию или создайте собственный файл конфигурации nginx и укажите путь к файлам

root /var/www/UI;
  try_files $uri $uri/ /index.html$is_args$args;
...