# syntax=docker/dockerfile:1 FROM jhpyle/docassemble-os USER root RUN --mount=type=bind,source=.,target=/tmp/docassemble \ DEBIAN_FRONTEND=noninteractive TERM=xterm LC_CTYPE=C.UTF-8 LANG=C.UTF-8 \ bash -c \ "cp /tmp/docassemble/docassemble_webapp/docassemble.wsgi /usr/share/docassemble/webapp/ \ && cp /tmp/docassemble/Docker/*.sh /usr/share/docassemble/webapp/ \ && cp /tmp/docassemble/Docker/VERSION /usr/share/docassemble/webapp/ \ && cp /tmp/docassemble/Docker/config/* /usr/share/docassemble/config/ \ && cp /tmp/docassemble/Docker/cgi-bin/index.sh /usr/lib/cgi-bin/ \ && cp /tmp/docassemble/Docker/syslog-ng.conf /usr/share/docassemble/webapp/syslog-ng.conf \ && cp /tmp/docassemble/Docker/syslog-ng-docker.conf /usr/share/docassemble/webapp/syslog-ng-docker.conf \ && cp /tmp/docassemble/Docker/smart-multi-line.fsm /usr/share/syslog-ng/smart-multi-line.fsm \ && cp /tmp/docassemble/Docker/docassemble-syslog-ng.conf /usr/share/docassemble/webapp/docassemble-syslog-ng.conf \ && cp /tmp/docassemble/Docker/apache.logrotate /etc/logrotate.d/apache2 \ && cp /tmp/docassemble/Docker/nginx.logrotate /etc/logrotate.d/nginx \ && cp /tmp/docassemble/Docker/docassemble.logrotate /etc/logrotate.d/docassemble \ && cp /tmp/docassemble/Docker/cron/docassemble-cron-monthly.sh /etc/cron.monthly/docassemble \ && cp /tmp/docassemble/Docker/cron/docassemble-cron-weekly.sh /etc/cron.weekly/docassemble \ && cp /tmp/docassemble/Docker/cron/docassemble-cron-daily.sh /etc/cron.daily/docassemble \ && cp /tmp/docassemble/Docker/cron/docassemble-cron-hourly.sh /etc/cron.hourly/docassemble \ && cp /tmp/docassemble/Docker/cron/syslogng-cron-daily.sh /etc/cron.daily/logrotatepost \ && cp /tmp/docassemble/Docker/cron/donothing /usr/share/docassemble/cron/donothing \ && cp /tmp/docassemble/Docker/docassemble.conf /etc/apache2/conf-available/ \ && cp /tmp/docassemble/Docker/docassemble-behindlb.conf /etc/apache2/conf-available/ \ && cp /tmp/docassemble/Docker/docassemble-supervisor.conf /etc/supervisor/conf.d/docassemble.conf \ && cp /tmp/docassemble/Docker/ssl/* /usr/share/docassemble/certs/ \ && cp -r /tmp/docassemble/Docker/ssl /usr/share/docassemble/config/defaultcerts \ && chmod og-rwx /usr/share/docassemble/certs/* \ && chmod og-rwx /usr/share/docassemble/config/defaultcerts/* \ && cp /tmp/docassemble/Docker/rabbitmq.config /etc/rabbitmq/ \ && cp /tmp/docassemble/Docker/config/exim4-router /etc/exim4/conf.d/router/101_docassemble \ && cp /tmp/docassemble/Docker/config/exim4-filter /etc/exim4/docassemble-filter \ && cp /tmp/docassemble/Docker/config/exim4-main /etc/exim4/conf.d/main/01_docassemble \ && cp /tmp/docassemble/Docker/config/exim4-acl /etc/exim4/conf.d/acl/29_docassemble \ && cp /tmp/docassemble/Docker/config/exim4-update /etc/exim4/update-exim4.conf.conf \ && cp /tmp/docassemble/Docker/config/nascent.conf /usr/share/docassemble/config/nascent.conf \ && cp /tmp/docassemble/Docker/nascent.html /var/www/nascent/index.html \ && update-exim4.conf \ && chown -R www-data:www-data \ /usr/share/docassemble/log \ /usr/share/docassemble/files \ && chmod ogu+r /usr/share/docassemble/config/config.yml.dist \ && source /usr/share/docassemble/local3.14/bin/activate \ && cp -r /tmp/docassemble/docassemble_base /tmp/build_base \ && cp -r /tmp/docassemble/docassemble_demo /tmp/build_demo \ && cp -r /tmp/docassemble/docassemble_webapp /tmp/build_webapp \ && pip install --no-cache-dir \ /tmp/build_base \ /tmp/build_demo \ /tmp/build_webapp \ && rm -rf /tmp/build_base /tmp/build_demo /tmp/build_webapp \ && pip cache purge \ && mv /etc/crontab /usr/share/docassemble/cron/crontab \ && ln -s /usr/share/docassemble/cron/crontab /etc/crontab \ && mv /etc/cron.daily/apache2 /usr/share/docassemble/cron/apache2 \ && ln -s /usr/share/docassemble/cron/apache2 /etc/cron.daily/apache2 \ && mv /etc/cron.daily/exim4-base /usr/share/docassemble/cron/exim4-base \ && ln -s /usr/share/docassemble/cron/exim4-base /etc/cron.daily/exim4-base \ && mv /etc/syslog-ng/syslog-ng.conf /usr/share/docassemble/syslogng/syslog-ng.conf \ && ln -s /usr/share/docassemble/syslogng/syslog-ng.conf /etc/syslog-ng/syslog-ng.conf" EXPOSE 80 443 9001 514 25 465 8080 8081 8082 5432 6379 4369 5671 5672 25672 ENV \ CONTAINERROLE="all" \ LOCALE="en_US.UTF-8 UTF-8" \ TIMEZONE="America/New_York" \ SUPERVISORLOGLEVEL="info" \ EC2="" \ S3ENABLE="" \ S3BUCKET="" \ S3ACCESSKEY="" \ S3SECRETACCESSKEY="" \ S3REGION="" \ DAHOSTNAME="" \ USEHTTPS="" \ USELETSENCRYPT="" \ LETSENCRYPTEMAIL="" \ BEHINDHTTPSLOADBALANCER="" \ DBHOST="" \ LOGSERVER="" \ REDIS="" \ RABBITMQ="" \ DASUPERVISORUSERNAME="" \ DASUPERVISORPASSWORD="" CMD ["/usr/bin/supervisord", "-n", "-c", "/etc/supervisor/supervisord.conf"]