Add Docker and Travis config files to enable CI tests
Also fixes some Rails 6.0 deprecation warnings
This commit is contained in:
59
config/docker/compose.yml
Normal file
59
config/docker/compose.yml
Normal file
@@ -0,0 +1,59 @@
|
||||
version: '3'
|
||||
services:
|
||||
db:
|
||||
image: r888888888/postgres
|
||||
ports:
|
||||
- "5432:5432"
|
||||
environment:
|
||||
- POSTGRES_PASSWORD=73e1ac2e91eb52a9981d09fca561aac3
|
||||
memcached:
|
||||
image: memcached:alpine
|
||||
ports:
|
||||
- "11211:11211"
|
||||
command: memcached
|
||||
archives:
|
||||
image: r888888888/archives
|
||||
command: sleep 1d
|
||||
environment:
|
||||
- POSTGRES_HOST=db
|
||||
- POSTGRES_USER=postgres
|
||||
- POSTGRES_PASSWORD=73e1ac2e91eb52a9981d09fca561aac3
|
||||
- RAILS_ENV
|
||||
- AMAZON_KEY
|
||||
- AMAZON_SQS_REGION
|
||||
- AMAZON_SECRET
|
||||
- SQS_ARCHIVES_URL
|
||||
- RUN
|
||||
depends_on:
|
||||
- db
|
||||
web:
|
||||
environment:
|
||||
- SECRET_TOKEN=73e1ac2e91eb52a9981d09fca561aac3
|
||||
- SESSION_SECRET_KEY=73e1ac2e91eb52a9981d09fca561aac3
|
||||
- RAILS_ENV
|
||||
- DATABASE_URL
|
||||
- RO_DATABASE_URL
|
||||
- ARCHIVE_DATABASE_URL
|
||||
- DANBOORU_MEMCACHED_SERVERS
|
||||
- DANBOORU_AWS_SQS_ARCHIVE_URL
|
||||
- DANBOORU_PIXIV_LOGIN
|
||||
- DANBOORU_PIXIV_PASSWORD
|
||||
- DANBOORU_TWITTER_API_KEY
|
||||
- DANBOORU_TWITTER_API_SECRET
|
||||
- DANBOORU_AWS_ACCESS_KEY_ID
|
||||
- DANBOORU_AWS_SECRET_ACCESS_KEY
|
||||
- DANBOORU_AWS_SQS_REGION
|
||||
- DANBOORU_NIJIE_LOGIN
|
||||
- DANBOORU_NIJIE_PASSWORD
|
||||
- DANBOORU_NICO_SEIGA_LOGIN
|
||||
- DANBOORU_NICO_SEIGA_PASSWORD
|
||||
build:
|
||||
context: ../..
|
||||
dockerfile: config/docker/danbooru-ci
|
||||
command: sleep 1d
|
||||
ports:
|
||||
- "3000:3000"
|
||||
depends_on:
|
||||
- db
|
||||
- memcached
|
||||
- archives
|
||||
31
config/docker/danbooru-base
Normal file
31
config/docker/danbooru-base
Normal file
@@ -0,0 +1,31 @@
|
||||
# This sets up a docker container suitable for use with Travis CI
|
||||
|
||||
FROM ruby:2.5.1-slim-stretch
|
||||
|
||||
RUN apt-get update
|
||||
ENV DOCKERIZE_VERSION v0.6.1
|
||||
RUN apt-get -y install wget
|
||||
RUN wget -q https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \
|
||||
&& tar -C /usr/local/bin -xzvf dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \
|
||||
&& rm dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz
|
||||
RUN apt-get -y install -qq apt-utils build-essential automake libssl-dev libxml2-dev libxslt-dev ncurses-dev sudo libreadline-dev flex bison ragel memcached libmemcached-dev git curl libcurl4-openssl-dev imagemagick libmagickcore-dev libmagickwand-dev sendmail-bin sendmail postgresql-client libpq-dev nginx ssh coreutils libavcodec-dev mkvtoolnix emacs24-nox telnet libvips42 libvips-tools libvips-dev > /dev/null
|
||||
RUN useradd -ms /bin/bash danbooru -u 1000
|
||||
RUN mkdir /app
|
||||
RUN mkdir -p /var/www/danbooru/shared/data
|
||||
RUN mkdir -p /var/www/danbooru/shared/data/preview
|
||||
RUN mkdir -p /var/www/danbooru/shared/data/sample
|
||||
COPY . /app
|
||||
RUN chown -R danbooru:danbooru /app
|
||||
RUN chown -R danbooru:danbooru /var/www/danbooru
|
||||
RUN mkdir /var/run/danbooru
|
||||
RUN chown danbooru:danbooru /var/run/danbooru
|
||||
EXPOSE 3000
|
||||
USER danbooru
|
||||
RUN echo 'gem: --no-document' > ~/.gemrc
|
||||
RUN gem install bundler --quiet
|
||||
WORKDIR /app
|
||||
RUN bundle install > /dev/null
|
||||
COPY script/install/database.yml.templ /app/config/database.yml
|
||||
COPY script/install/danbooru_local_config.rb.templ /app/config/danbooru_local_config.rb
|
||||
EXPOSE 3000
|
||||
CMD sleep 1d
|
||||
9
config/docker/danbooru-ci
Normal file
9
config/docker/danbooru-ci
Normal file
@@ -0,0 +1,9 @@
|
||||
# This sets up a docker container suitable for use with Travis CI
|
||||
|
||||
FROM r888888888/danbooru-base
|
||||
|
||||
USER root
|
||||
COPY . /app
|
||||
RUN chown -R danbooru:danbooru .
|
||||
USER danbooru
|
||||
RUN bundle install > /dev/null
|
||||
Reference in New Issue
Block a user