Spotter-VM/lxc-apps/decidim/lxcfile

86 lines
2.3 KiB
Plaintext
Raw Normal View History

2019-11-15 18:00:26 +01:00
IMAGE decidim_0.0.1-191113
LAYER alpine3.9_3.9.4-190620
LAYER alpine3.9-ruby2.6_2.6.3-190620
LAYER alpine3.9-nodejs10_10.14.2-190620
MERGE /usr/bin/lxcmerge
2019-11-15 18:00:26 +01:00
2019-11-17 17:36:25 +01:00
# https://github.com/Platoniq/decidim-install/blob/master/decidim-bionic.md
# https://github.com/Platoniq/decidim-install/blob/master/basic-config.md
2019-11-15 18:00:26 +01:00
ENV RAILS_ENV production
RUN EOF
# Install runtime dependencies
apk --no-cache add curl libpq pcre procps tzdata
2019-11-15 18:00:26 +01:00
# Install build dependencies
apk --no-cache add --virtual .deps build-base curl-dev icu-dev libxml2-dev libxslt-dev linux-headers pcre-dev postgresql-dev zlib-dev
2019-11-15 18:00:26 +01:00
# Install passenger
2019-11-17 17:36:25 +01:00
gem install passenger --no-document
2019-11-15 18:00:26 +01:00
# Create OS user
addgroup -S decidim
adduser -S -h /srv/decidim-app -s /sbin/nologin -G decidim -g decidim decidim
# Compile nginx
# taken from passenger-install-nginx-module
cd /tmp
wget https://nginx.org/download/nginx-1.17.3.tar.gz
tar xf nginx-1.17.3.tar.gz
cd nginx-1.17.3
./configure \
--prefix=/var/lib/nginx \
--sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf \
--pid-path=/run/nginx.pid \
--lock-path=/run/nginx.lock \
--user=decidim \
--group=decidim \
--with-threads \
--with-file-aio \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-http_addition_module \
--with-cc-opt=-Wno-error \
--add-module=/usr/local/lib/ruby/gems/2.6.0/gems/passenger-6.0.4/src/nginx_module
make -j $(getconf _NPROCESSORS_ONLN)
make install
rm -f /etc/nginx/*.default
2019-11-15 18:00:26 +01:00
# Install Decidim
bundle config build.nokogiri --use-system-libraries
gem install decidim
cd /srv
decidim decidim-app
EOF
COPY lxc
RUN EOF
# Install gems required by decidim
cd /srv/decidim-app
bundle install
# Setup delayed job for mail sending
bin/rails generate delayed_job:active_record
# Precompile static assets
bin/rails assets:precompile
# Change ownership
chown -R decidim:decidim /srv/decidim-app
2019-11-15 18:00:26 +01:00
# Cleanup
apk --no-cache del .deps
rm -rf /tmp/*
rm -rf /root/.bundle /root/.gem
2019-11-15 18:00:26 +01:00
EOF
CMD s6-svscan /etc/services.d