production build
parent
da5286dc86
commit
8b2e0595f2
|
|
@ -16,7 +16,7 @@ WORKDIR /rails
|
|||
|
||||
# Install base packages
|
||||
RUN apt-get update -qq && \
|
||||
apt-get install --no-install-recommends -y curl libjemalloc2 libvips sqlite3 && \
|
||||
apt-get install --no-install-recommends -y curl libjemalloc2 libvips sqlite3 libpq-dev && \
|
||||
rm -rf /var/lib/apt/lists /var/cache/apt/archives
|
||||
|
||||
# Set production environment
|
||||
|
|
@ -45,9 +45,6 @@ COPY . .
|
|||
# Precompile bootsnap code for faster boot times
|
||||
RUN bundle exec bootsnap precompile app/ lib/
|
||||
|
||||
# Precompiling assets for production without requiring secret RAILS_MASTER_KEY
|
||||
RUN SECRET_KEY_BASE_DUMMY=1 ./bin/rails assets:precompile
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
2
Gemfile
2
Gemfile
|
|
@ -30,6 +30,8 @@ gem 'solid_cable'
|
|||
gem 'solid_cache'
|
||||
gem 'solid_queue'
|
||||
|
||||
gem 'pg'
|
||||
|
||||
# Reduces boot times through caching; required in config/boot.rb
|
||||
gem 'bootsnap', require: false
|
||||
|
||||
|
|
|
|||
|
|
@ -240,6 +240,7 @@ GEM
|
|||
parser (3.3.6.0)
|
||||
ast (~> 2.4.1)
|
||||
racc
|
||||
pg (1.5.9)
|
||||
propshaft (1.1.0)
|
||||
actionpack (>= 7.0.0)
|
||||
activesupport (>= 7.0.0)
|
||||
|
|
@ -461,6 +462,7 @@ DEPENDENCIES
|
|||
jbuilder
|
||||
kamal
|
||||
lookbook (~> 2.3)
|
||||
pg
|
||||
propshaft
|
||||
puma (>= 5.0)
|
||||
rails (~> 8.0.0)
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
rQktudMLk/4nS4BJHGKoD4lBqDG6MEtDu6OGfa2co0Xh8IJKZptHAj/NQYLJ5/KKFjT4neeHnik9PggP8wA0xHsd2CpYz0tZtkBVNqKMsup2SawPXGFyXvxIuWjz4cnrR+ld1eRXW//9fReowT4h39sNnmoCdjJ/V9dIHW7SpsEm+GZwG4nxKbC69OI6cB1tnZw9yLbQ7YaiyEn0F0jAX8Z12KDnBrWBvoE7FT2Q46mdPBLOq/Y01SmgRnf4gG10qnL6vekNi+uCwpK7uFR7yOs9l4GB0HgU/f+E+6FZQzLOKv9xZQHosykScU87NAJ8l2cMCUpaxyO2nea7+7NXbbl0zu51TcBbRTdLZris9yGH0TXwfpX7PchcL5PHUG6PWh/F2UI4aEV1cM5IK+YOQmPHrB99dFYyKTWfnnWD3jRQRsyOQKTndTPHO7rm+kilUiy0SCzgrY+Pm2qR/eozCJ7tx6j/soqgTePSCUdo+A39oNrsXW3mzmOb--Gxpp+BnADvqu/55D--KNdQDd1XXqlyBaf7l0UnPQ==
|
||||
PRcWjIOSDHFafgdZ5HQOiUQNOZpdKVqG62n3hbtmJ07hJzUdQ6vVOjRtw7j49J+4bHykHIMwqbwtYtreroD10bItlKmQ11Nd+h3cauM+DJxsa8DdWeV8zDx94jImPRPtofu3C9Oj6ogHCJrcxWg3L9rWNaOyYCsLN1uECMOQhpIxNVjF0bcGERZhTAWbLIr2jewkJK0TWu8DyZCSn9esA4MZFEP8rVae5ApZlFHcDKkXVHG/JuF+MuP7OO6rFPdgigRO0nzIXH6yXNwNATH9Yi8x0dREjK0mk6h/aYHWnNp0RT8Qnbcpt30lauFLv3W48qkQ621UU7fuFS6LZukr30NLrNUEXVZMid3iGGvLUZk2P3bS1dl0rg9X11f/3FJ58dXAZnJkMogqR3NlfjqArZD74UC0AURGFUuAwNJCfw6vCAbAMHW9iNGE0IiRT0PcrQsNApqlTZQie0SM+89TWr4CV2EEqXdgc8v7SG6X4mks58AEDWaYRSeH--h6b3cNVTSphSsWVJ--5cXbFf2DabGLMkRA0K2GcQ==
|
||||
|
|
@ -25,8 +25,13 @@ test:
|
|||
# is mounted as a persistent Docker volume in config/deploy.yml.
|
||||
production:
|
||||
primary:
|
||||
<<: *default
|
||||
database: storage/production.sqlite3
|
||||
adapter: postgresql
|
||||
encoding: unicode
|
||||
host: <%= ENV['DATABASE_HOST'] %>
|
||||
database: <%= ENV['DATABASE_NAME'] %>
|
||||
username: <%= ENV['DATABASE_USER'] %>
|
||||
password: <%= ENV['DATABASE_PASS'] %>
|
||||
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
|
||||
cache:
|
||||
<<: *default
|
||||
database: storage/production_cache.sqlite3
|
||||
|
|
|
|||
|
|
@ -0,0 +1,35 @@
|
|||
version: '2'
|
||||
|
||||
services:
|
||||
rails:
|
||||
build:
|
||||
context: ./
|
||||
environment:
|
||||
DATABASE_HOST: postgres
|
||||
DATABASE_NAME: chatbot_prod
|
||||
DATABASE_USER: postgres
|
||||
DATABASE_PASS: postgres
|
||||
RAILS_MASTER_KEY: 8a8e7fc319733cd969f23450cbdfadaf
|
||||
SOLID_QUEUE_IN_PUMA: true
|
||||
depends_on:
|
||||
- postgres
|
||||
ports:
|
||||
- "3000:3000"
|
||||
networks:
|
||||
- chatbot-network
|
||||
postgres:
|
||||
image: postgres:16.8-alpine3.20
|
||||
environment:
|
||||
POSTGRES_DB: chatbot_prod
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: postgres
|
||||
volumes:
|
||||
- postgres-data:/var/lib/postgresql/data
|
||||
networks:
|
||||
- chatbot-network
|
||||
|
||||
volumes:
|
||||
postgres-data:
|
||||
|
||||
networks:
|
||||
chatbot-network:
|
||||
Loading…
Reference in New Issue