Skip to content

Commit

Permalink
Merge pull request #1662 from ClimateWatch-Vizzuality/fix/docker-compose
Browse files Browse the repository at this point in the history
fix: Make docker compose work
  • Loading branch information
Bluesmile82 committed Jun 5, 2023
2 parents 0698c74 + 42a8e80 commit 4aa8c40
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 71 deletions.
73 changes: 9 additions & 64 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,6 @@ FROM ruby:2.6.10
MAINTAINER info@vizzuality.com

ENV NAME climate-watch

# Set application environment

# args from command execution
ARG RAILS_ENV
ENV RAILS_ENV $RAILS_ENV

ARG CW_FILES_PREFIX
ENV CW_FILES_PREFIX $CW_FILES_PREFIX

ENV RACK_ENV $RAILS_ENV
ENV NODE_ENV $RAILS_ENV

ENV ESP_API https://data.emissionspathways.org/api/v1
ENV CW_API /api/v1
ENV GFW_API https://production-api.globalforestwatch.org
Expand All @@ -23,32 +10,9 @@ ENV S3_BUCKET_NAME wri-sites
ENV GOOGLE_ANALYTICS_ID UA-1981881-51
ENV GOOGLE_TAG_MANAGER_ID GTM-WJ7FGCZ

ARG FEATURE_POP_UP
ENV FEATURE_POP_UP $FEATURE_POP_UP

ARG FEATURE_COUNTRY_CHANGES
ENV FEATURE_COUNTRY_CHANGES $FEATURE_COUNTRY_CHANGES

ARG FEATURE_SHOW_COUNTRY_LAWS_AND_POLICIES
ENV FEATURE_SHOW_COUNTRY_LAWS_AND_POLICIES $FEATURE_SHOW_COUNTRY_LAWS_AND_POLICIES

ARG FEATURE_SHOW_LTS_SUMMARY
ENV FEATURE_SHOW_LTS_SUMMARY $FEATURE_SHOW_LTS_SUMMARY

ARG FEATURE_WEB_TOUR
ENV FEATURE_WEB_TOUR $FEATURE_WEB_TOUR

ARG FEATURE_DYNAMIC_ZIP
ENV FEATURE_DYNAMIC_ZIP $FEATURE_DYNAMIC_ZIP

ARG POP_UP
ENV POP_UP $POP_UP

ARG FEATURE_KEY_VISUALIZATIONS
ENV FEATURE_KEY_VISUALIZATIONS $FEATURE_KEY_VISUALIZATIONS

ARG USER_REPORT_KEY
ENV USER_REPORT_KEY $USER_REPORT_KEY
# args from command execution
ARG secretKey
ENV SECRET_KEY_BASE $secretKey

# Install dependencies
RUN curl -sL https://deb.nodesource.com/setup_12.x | bash -
Expand All @@ -60,36 +24,16 @@ RUN npm install -g yarn
# Create app directory
RUN mkdir -p /usr/src/$NAME
WORKDIR /usr/src/$NAME
COPY . ./

# Install app dependencies
COPY Gemfile Gemfile.lock ./

RUN cd /usr/src/$NAME && bundle install --without development test --jobs 4 --deployment
# Install gems
RUN gem install bundler:2.3.11
RUN cd /usr/src/$NAME && bundle install --jobs 4

# Yarn install
COPY package.json package.json
COPY yarn.lock yarn.lock
RUN yarn install

# Env variables
ARG secretKey
ENV SECRET_KEY_BASE $secretKey

ARG APPSIGNAL_PUSH_API_KEY
ENV APPSIGNAL_PUSH_API_KEY $APPSIGNAL_PUSH_API_KEY

ARG USER_SURVEY_SPREADSHEET_URL
ENV USER_SURVEY_SPREADSHEET_URL $USER_SURVEY_SPREADSHEET_URL

ARG USER_NEWSLETTER_URL
ENV USER_NEWSLETTER_URL $USER_NEWSLETTER_URL

ARG MAXMIND_LICENSE_KEY
ENV MAXMIND_LICENSE_KEY $MAXMIND_LICENSE_KEY

# Bundle app source
COPY . ./

# Expose port 3000 to the Docker host, so we can access it
EXPOSE 3000

# Download maxmind IP db
Expand All @@ -100,3 +44,4 @@ RUN bundle exec rake assets:precompile

# Start app
ENTRYPOINT ["./entrypoint.sh"]
CMD ["start"]
34 changes: 28 additions & 6 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,31 +1,53 @@
version: '3'
services:
app:
image: "climate_watch"
build:
context: .
args:
secretKey: 1234567890
ports:
- "3000:3000"
- "8080:8080"
- "3000:3000" # rails server
- "3035:3035" # webpacker dev server
env_file:
- .env
environment:
- PORT=3000
- POSTGRES_URL=postgres://postgres:example@postgres:5432/climate_watch
restart: always
container_name: climate-watch
- REDIS_SERVER=redis://redis:6379/0
command: start
depends_on:
- postgres
- redis
volumes:
- .:/usr/src/climate-watch
- /usr/src/climate-watch/node_modules

sidekiq:
image: "climate_watch"
build:
context: .
args:
secretKey: 1234567890
environment:
- POSTGRES_URL=postgres://postgres:example@postgres:5432/climate_watch
- REDIS_SERVER=redis://redis:6379/0
env_file:
- .env
command: sidekiq
depends_on:
- postgres
- redis

postgres:
image: postgres:13.3
restart: always
ports:
- "5432"
environment:
- POSTGRES_PASSWORD=example
- POSTGRES_USER=postgres
- POSTGRES_DB=climate_watch

redis:
image: redis
ports:
- "6379"
8 changes: 7 additions & 1 deletion entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,13 @@ case "$1" in
echo "Running Start"
bundle exec rails tmp:clear db:migrate
bundle exec rails db:admin_boilerplate:create
exec bundle exec rails server -b 0.0.0.0
if [[ "${RAILS_ENV}" = "production" ]]; then
rails server --port 3000 --binding 0.0.0.0 -e ${RAILS_ENV}
else
rm -rf tmp/pids/server.pid
bin/webpack-dev-server --port 3035 --host 0.0.0.0 &
rails server --port 3000 --binding 0.0.0.0
fi
;;
sidekiq)
echo "Running sidekiq"
Expand Down

0 comments on commit 4aa8c40

Please sign in to comment.