From 03f415ed64db1eae7c321f7656e1c62c07354273 Mon Sep 17 00:00:00 2001 From: Gleb Rysev <gr00314@surrey.ac.uk> Date: Fri, 30 Apr 2021 15:05:59 +0100 Subject: [PATCH] Looks like it is working --- .dockerignore | 2 -- .env.docker | 1 - Dockerfile | 6 ++++-- Gemfile | 2 +- bin/webpack | 36 ++++++++++++++++++------------------ bin/webpack-dev-server | 36 ++++++++++++++++++------------------ docker-compose.yml | 14 +++++++++++--- docker-entrypoint.sh | 4 ++++ 8 files changed, 56 insertions(+), 45 deletions(-) create mode 100644 docker-entrypoint.sh diff --git a/.dockerignore b/.dockerignore index b4e3fbd..e2e9e5c 100644 --- a/.dockerignore +++ b/.dockerignore @@ -9,10 +9,8 @@ tmp log config/deploy -public/packs public/packs-test node_modules yarn-error.log coverage/ -.env “Gemfile.lock†diff --git a/.env.docker b/.env.docker index 986ee6e..be270fc 100644 --- a/.env.docker +++ b/.env.docker @@ -1,3 +1,2 @@ -NODE_ENV=development RAILS_ENV=development WEBPACKER_DEV_SERVER_HOST=0.0.0.0 diff --git a/Dockerfile b/Dockerfile index 7bc6b20..3c67ab5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ruby:2.5.7 +FROM timbru31/ruby-node:2.5 # throw errors if Gemfile has been modified since Gemfile.lock # RUN bundle config --global frozen 1 @@ -15,6 +15,7 @@ COPY Gemfile /usr/src/app/ COPY Gemfile.lock /usr/src/app/ RUN bundle install +RUN bundle exec rails assets:precompile COPY . /usr/src/app @@ -23,4 +24,5 @@ COPY . /usr/src/app # ENTRYPOINT ["entrypoint.sh"] EXPOSE 3000 -CMD ["rails", "server", "-b", "0.0.0.0"] +# CMD ["rails", "server", "-b", "0.0.0.0"] +CMD ./docker-entrypoint.sh diff --git a/Gemfile b/Gemfile index 21e0e3f..7c00364 100644 --- a/Gemfile +++ b/Gemfile @@ -1,7 +1,7 @@ source 'https://rubygems.org' git_source(:github) { |repo| "https://github.com/#{repo}.git" } -ruby '2.5.7' +ruby '2.5.9' # Bundle edge Rails instead: gem 'rails', github: 'rails/rails' gem 'rails', '~> 5.2.4', '>= 5.2.4.5' diff --git a/bin/webpack b/bin/webpack index 24c6674..1031168 100644 --- a/bin/webpack +++ b/bin/webpack @@ -1,18 +1,18 @@ -#!/usr/bin/env ruby - -ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development" -ENV["NODE_ENV"] ||= "development" - -require "pathname" -ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile", - Pathname.new(__FILE__).realpath) - -require "bundler/setup" - -require "webpacker" -require "webpacker/webpack_runner" - -APP_ROOT = File.expand_path("..", __dir__) -Dir.chdir(APP_ROOT) do - Webpacker::WebpackRunner.run(ARGV) -end +#!/usr/bin/env ruby + +ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development" +ENV["NODE_ENV"] ||= "development" + +require "pathname" +ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile", + Pathname.new(__FILE__).realpath) + +require "bundler/setup" + +require "webpacker" +require "webpacker/webpack_runner" + +APP_ROOT = File.expand_path("..", __dir__) +Dir.chdir(APP_ROOT) do + Webpacker::WebpackRunner.run(ARGV) +end diff --git a/bin/webpack-dev-server b/bin/webpack-dev-server index 5c1b83e..dd96627 100644 --- a/bin/webpack-dev-server +++ b/bin/webpack-dev-server @@ -1,18 +1,18 @@ -#!/usr/bin/env ruby - -ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development" -ENV["NODE_ENV"] ||= "development" - -require "pathname" -ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile", - Pathname.new(__FILE__).realpath) - -require "bundler/setup" - -require "webpacker" -require "webpacker/dev_server_runner" - -APP_ROOT = File.expand_path("..", __dir__) -Dir.chdir(APP_ROOT) do - Webpacker::DevServerRunner.run(ARGV) -end +#!/usr/bin/env ruby + +ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development" +ENV["NODE_ENV"] ||= "development" + +require "pathname" +ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile", + Pathname.new(__FILE__).realpath) + +require "bundler/setup" + +require "webpacker" +require "webpacker/dev_server_runner" + +APP_ROOT = File.expand_path("..", __dir__) +Dir.chdir(APP_ROOT) do + Webpacker::DevServerRunner.run(ARGV) +end diff --git a/docker-compose.yml b/docker-compose.yml index 339202a..d0e9538 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,9 +1,11 @@ version: '3' services: - webpacker: + webpack: build: . - env_file: - - '.env.docker' + environment: + NODE_ENV: development + RAILS_ENV: development + WEBPACKER_DEV_SERVER_HOST: 0.0.0.0 command: ./bin/webpack-dev-server volumes: - .:/app @@ -12,7 +14,13 @@ services: web: build: . command: bash -c "rm -f tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'" + environment: + RAILS_ENV: development + RACK_ENV: development + WEBPACKER_DEV_SERVER_HOST: webpack volumes: - .:/app ports: - "3000:3000" + depends_on: + - webpack diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh new file mode 100644 index 0000000..a947e94 --- /dev/null +++ b/docker-entrypoint.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +rm -f tmp/pids/server.pid +bin/rails server -b 0.0.0.0 -- GitLab