Skip to content

Commit

Permalink
fix: building image with extensions and batch manager
Browse files Browse the repository at this point in the history
  • Loading branch information
karolsojko committed Jul 8, 2020
1 parent f5af226 commit 378afdc
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 45 deletions.
11 changes: 11 additions & 0 deletions .env.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
RAILS_ENV=development
PORT=3000
WEB_CONCURRENCY=0
RAILS_LOG_TO_STDOUT=true
RAILS_SERVE_STATIC_FILES=true
SECRET_KEY_BASE=test
APP_HOST=http://localhost:3000

EXTENSIONS_MANAGER_LOCATION=extensions/extensions-manager/dist/index.html
BATCH_MANAGER_LOCATION=extensions/batch-manager/dist/index.min.html
SF_DEFAULT_SERVER=http://localhost:3001
40 changes: 14 additions & 26 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,43 +1,31 @@
###
# Build with 'docker build -t standard_notes_web.img .'
# Run with 'docker run -d -p 127.0.0.1:3000:3000 --name standard_notes_web --restart always standard_notes_web.img'
# If you need shell access, run 'docker exec -it standard_notes_web /bin/sh'
# Access from http://localhost:3000/
# Set up Nginx to terminate SSL with LetsEncrypt and proxy_pass to http://localhost:3000/
###

FROM ruby:2.7.1-alpine

RUN apk add --update --no-cache \
alpine-sdk \
nodejs \
python2 \
git \
nodejs-npm \
tzdata

WORKDIR /app/

COPY package.json package-lock.json Gemfile Gemfile.lock /app/

COPY vendor /app/vendor

RUN npm ci

RUN gem install bundler && bundle install

COPY . /app/

###
# FOR PRODUCTION USE:
#
# If you need the app to continue listening on HTTP instead of HTTPS
# (like terminating SSL on upstream server, i.e. Nginx proxy_pass to HTTP),
# you will need to set 'config.force_ssl = false' in 'config/environments/production.rb'.
#
# Uncomment SECRET_KEY_BASE, RAILS_ENV, and [optionally] RAILS_SERVE_STATIC_FILES for production:
# ENV SECRET_KEY_BASE=[VALUE OF `bundle exec rake secret`]
#
# ENV RAILS_ENV=production
#
# ENV RAILS_SERVE_STATIC_FILES=true
# Leave RAILS_SERVE_STATIC_FILES commented if Nginx/Apache will serve static files instead of rails.
###

RUN npm run build
RUN bundle exec rails assets:precompile

RUN npm run bundle

EXPOSE 3000

ENTRYPOINT [ "./docker/entrypoint" ]
ENTRYPOINT [ "./docker/entrypoint.sh" ]

CMD [ "start" ]
19 changes: 0 additions & 19 deletions docker/entrypoint

This file was deleted.

17 changes: 17 additions & 0 deletions docker/entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#!/bin/sh
set -e

case "$1" in
'start' )
echo "Prestart Step 1/1 - Removing server lock"
rm -f /app/tmp/pids/server.pid
echo "Starting Server..."
bundle exec rails s -b 0.0.0.0
;;

* )
echo "Unknown command"
;;
esac

exec "$@"

0 comments on commit 378afdc

Please sign in to comment.