-
Notifications
You must be signed in to change notification settings - Fork 1
/
DockerFile
31 lines (24 loc) · 1.1 KB
/
DockerFile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# /path/to/app/Dockerfile
FROM ruby:2.7-alpine3.14
# Установка в контейнер runtime-зависимостей приложения
RUN apk add --update --virtual runtime-deps postgresql-client nodejs libffi-dev readline sqlite
# Установка часового пояса
RUN apk add --update tzdata && \
cp /usr/share/zoneinfo/Asia/Yakutsk /etc/localtime && \
echo "Asia/Yakutsk" > /etc/timezone
# Соберем все во временной директории
WORKDIR /tmp
ADD Gemfile* ./
RUN apk add --virtual build-deps build-base openssl-dev postgresql-dev libc-dev linux-headers libxml2-dev libxslt-dev readline-dev && \
bundle install --jobs=2 && \
apk del build-deps
# Копирование кода приложения в контейнер
ENV APP_HOME /app
COPY . $APP_HOME
WORKDIR $APP_HOME
# Настройка переменных окружения для production
ENV RAILS_ENV=production
# Проброс порта 5050
EXPOSE 5050
# Запуск по умолчанию сервера puma
CMD ["bundle", "exec", "puma", "-C", "config/puma.rb"]