This reverts commit e095c94eec
.
pull/8617/head
parent
2562bd6475
commit
71992f009a
@ -1 +1,72 @@ |
|||||||
FROM nginx |
FROM ruby:2.6-stretch AS pgloader |
||||||
|
RUN apt-get update -qq && apt-get install -y libsqlite3-dev make curl gawk freetds-dev libzip-dev |
||||||
|
COPY docker/mysql-to-postgres/bin/build /tmp/build-pgloader |
||||||
|
RUN /tmp/build-pgloader && rm /tmp/build-pgloader |
||||||
|
|
||||||
|
FROM ruby:2.6-stretch |
||||||
|
MAINTAINER operations@openproject.com |
||||||
|
|
||||||
|
# Allow platform-specific additions. Valid values are: on-prem,saas,bahn |
||||||
|
ARG PLATFORM=on-prem |
||||||
|
# Use OAuth token in case private gems need to be fetched |
||||||
|
ARG GITHUB_OAUTH_TOKEN |
||||||
|
ARG DEBIAN_FRONTEND=noninteractive |
||||||
|
|
||||||
|
ENV NODE_VERSION="12.18.3" |
||||||
|
ENV BUNDLER_VERSION="2.0.2" |
||||||
|
ENV BUNDLE_PATH__SYSTEM=false |
||||||
|
ENV APP_USER=app |
||||||
|
ENV APP_PATH=/app |
||||||
|
ENV APP_DATA_PATH=/var/openproject/assets |
||||||
|
ENV APP_DATA_PATH_LEGACY=/var/db/openproject |
||||||
|
ENV PGBIN="/usr/lib/postgresql/9.6/bin" |
||||||
|
ENV PGDATA=/var/openproject/pgdata |
||||||
|
ENV PGDATA_LEGACY=/var/lib/postgresql/9.6/main |
||||||
|
|
||||||
|
ENV DATABASE_URL=postgres://openproject:openproject@127.0.0.1/openproject |
||||||
|
ENV HEROKU=true |
||||||
|
ENV RAILS_ENV=production |
||||||
|
ENV RAILS_CACHE_STORE=memcache |
||||||
|
ENV RAILS_GROUPS="production docker opf_plugins" |
||||||
|
ENV OPENPROJECT_INSTALLATION__TYPE=docker |
||||||
|
# Valid values are: standard,bim |
||||||
|
ENV OPENPROJECT_EDITION=standard |
||||||
|
ENV NEW_RELIC_AGENT_ENABLED=false |
||||||
|
ENV ATTACHMENTS_STORAGE_PATH=$APP_DATA_PATH/files |
||||||
|
# Set a default key base, ensure to provide a secure value in production environments! |
||||||
|
ENV SECRET_KEY_BASE=OVERWRITE_ME |
||||||
|
|
||||||
|
COPY --from=pgloader /usr/local/bin/pgloader-ccl /usr/local/bin/ |
||||||
|
|
||||||
|
WORKDIR $APP_PATH |
||||||
|
|
||||||
|
COPY docker/setup ./docker/setup |
||||||
|
RUN ./docker/setup/preinstall.sh |
||||||
|
|
||||||
|
COPY Gemfile ./Gemfile |
||||||
|
COPY Gemfile.* ./ |
||||||
|
COPY modules ./modules |
||||||
|
COPY vendor ./vendor |
||||||
|
# some gemspec files of plugins require files in there, notably OpenProject::Version |
||||||
|
COPY lib ./lib |
||||||
|
|
||||||
|
RUN bundle install --quiet --deployment --path vendor/bundle --no-cache \ |
||||||
|
--with="$RAILS_GROUPS" --without="test development" --jobs=8 --retry=3 && \ |
||||||
|
rm -rf vendor/bundle/ruby/*/cache && rm -rf vendor/bundle/ruby/*/gems/*/spec && rm -rf vendor/bundle/ruby/*/gems/*/test |
||||||
|
|
||||||
|
# Finally, copy over the whole thing |
||||||
|
COPY . . |
||||||
|
|
||||||
|
RUN ./docker/setup/postinstall.sh |
||||||
|
|
||||||
|
# Expose ports for apache and postgres |
||||||
|
EXPOSE 80 5432 |
||||||
|
|
||||||
|
# Expose the postgres data directory and OpenProject data directory as volumes |
||||||
|
VOLUME ["$PGDATA", "$APP_DATA_PATH"] |
||||||
|
|
||||||
|
# Set a custom entrypoint to allow for privilege dropping and one-off commands |
||||||
|
ENTRYPOINT ["./docker/entrypoint.sh"] |
||||||
|
|
||||||
|
# Set default command to launch the all-in-one configuration supervised by supervisord |
||||||
|
CMD ["./docker/supervisord"] |
||||||
|
Loading…
Reference in new issue