This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "FusionForge".
The branch, master has been updated
via ef7ebd713e39f45a6688a56c7a85a023c8833865 (commit)
from 4af4ca821fed9cecd668bd0f29df61000d98e271 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://scm.fusionforge.org/anonscm/gitweb/?p=fusionforge/fusionforge.git;a=commitdiff;h=ef7ebd713e39f45a6688a56c7a85a023c8833865
commit ef7ebd713e39f45a6688a56c7a85a023c8833865
Author: Franck Villaume <[email protected]>
Date: Thu Jun 1 16:39:54 2017 +0000
initial version of fusionforge running in docker container
diff --git a/docker/Dockerfile b/docker/Dockerfile
new file mode 100644
index 0000000..1239908
--- /dev/null
+++ b/docker/Dockerfile
@@ -0,0 +1,38 @@
+FROM centos:centos7
+MAINTAINER FusionForge TrivialDev <[email protected]>
+
+RUN yum -y update; yum clean all
+RUN yum -y install git openssh-server; yum clean all
+RUN mkdir -p /opt/sources/ && cd /opt/sources && git clone
https://scm.fusionforge.org/anonscm/git/fusionforge/fusionforge.git
+RUN cd /opt/sources/fusionforge && source ./autoinstall/common-backports && \
+ yum install -y make tar && \
+ backports_rpm && \
+ yum --enablerepo=epel install -y httpd-itk && \
+ yum install -y gettext php-cli php-pgsql php-process php-mbstring
php-pear-HTTP \
+ httpd mod_dav_svn mod_ssl postgresql-server postgresql-contrib nscd \
+ cvs subversion viewvc python-pycurl git gitweb xinetd \
+ moin mod_wsgi python-psycopg2 \
+ unoconv poppler-utils libreoffice-headless && \
+ cd src/ && \
+ make && \
+ make install-base install-shell install-scm \
+ install-plugin-scmcvs install-plugin-scmsvn install-plugin-scmgit \
+ install-plugin-blocks install-plugin-moinmoin \
+ install-plugin-taskboard install-plugin-message \
+ install-plugin-repositoryapi
+
+RUN yum --enablerepo=epel install -y supervisor
+
+RUN mkdir /var/run/sshd
+RUN /usr/sbin/sshd-keygen
+
+USER postgres
+RUN /usr/bin/initdb -D /var/lib/pgsql/data
+
+USER root
+ADD ./supervisord.conf /etc/supervisord.conf
+ADD ./startpoint.sh /startpoint.sh
+RUN chmod +x /startpoint.sh
+
+EXPOSE 22 80 443
+ENTRYPOINT ["/startpoint.sh"]
diff --git a/docker/startpoint.sh b/docker/startpoint.sh
new file mode 100644
index 0000000..4177dbd
--- /dev/null
+++ b/docker/startpoint.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+#
+# FusionForge startpoint script. Entrypoint for docker container
+#
+# Copyright 2017, Franck Villaume - TrivialDev
+#
+# This file is part of FusionForge. FusionForge is free software;
+# you can redistribute it and/or modify it under the terms of the
+# GNU General Public License as published by the Free Software
+# Foundation; either version 2 of the Licence, or (at your option)
+# any later version.
+#
+# FusionForge is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with FusionForge; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+set -e
+
+__postinstall() {
+/usr/local/share/fusionforge/post-install.d/common/common.sh configure
+/usr/local/share/fusionforge/post-install.d/web/web.sh rawconfigure
+}
+
+__run_supervisor() {
+supervisord -n
+}
+
+# Call all functions
+__postinstall
+__run_supervisor
diff --git a/docker/supervisord.conf b/docker/supervisord.conf
new file mode 100644
index 0000000..631427c
--- /dev/null
+++ b/docker/supervisord.conf
@@ -0,0 +1,76 @@
+; supervisor config file.
+;
+; For more information on the config file, please see:
+; http://supervisord.org/configuration.html
+;
+
+[unix_http_server]
+file=/tmp/supervisor.sock ; (the path to the socket file)
+;chmod=0700 ; socket file mode (default 0700)
+;chown=nobody:nogroup ; socket file uid:gid owner
+;username=user ; (default is no username (open server))
+;password=123 ; (default is no password (open server))
+
+;[inet_http_server] ; inet (TCP) server disabled by default
+;port=127.0.0.1:9001 ; (ip_address:port specifier, *:port for all iface)
+;username=user ; (default is no username (open server))
+;password=123 ; (default is no password (open server))
+
+[supervisord]
+logfile=/tmp/supervisord.log ; (main log file;default $CWD/supervisord.log)
+logfile_maxbytes=50MB ; (max main logfile bytes b4 rotation;default
50MB)
+logfile_backups=10 ; (num of main logfile rotation backups;default
10)
+loglevel=info ; (log level;default info; others:
debug,warn,trace)
+pidfile=/tmp/supervisord.pid ; (supervisord pidfile;default supervisord.pid)
+; nodaemon=false ; (start in foreground if true;default false)
+nodaemon=true ; (start in foreground if true;default false)
+minfds=1024 ; (min. avail startup file descriptors;default
1024)
+minprocs=200 ; (min. avail process descriptors;default 200)
+;umask=022 ; (process file creation umask;default 022)
+;user=chrism ; (default is current user, required if root)
+;identifier=supervisor ; (supervisord identifier, default is
'supervisor')
+;directory=/tmp ; (default is not to cd during start)
+;nocleanup=true ; (don't clean up tempfiles at start;default
false)
+;childlogdir=/tmp ; ('AUTO' child log dir, default $TEMP)
+;environment=KEY=value ; (key value pairs to add to environment)
+;strip_ansi=false ; (strip ansi escape codes in logs; def. false)
+
+; the below section must remain in the config file for RPC
+; (supervisorctl/web interface) to work, additional interfaces may be
+; added by defining them in separate rpcinterface: sections
+[rpcinterface:supervisor]
+supervisor.rpcinterface_factory =
supervisor.rpcinterface:make_main_rpcinterface
+
+[supervisorctl]
+serverurl=unix:///tmp/supervisor.sock ; use a unix:// URL for a unix socket
+;serverurl=http://127.0.0.1:9001 ; use an http:// url to specify an inet socket
+;username=chris ; should be same as http_username if set
+;password=123 ; should be same as http_password if set
+;prompt=mysupervisor ; cmd line prompt (default "supervisor")
+;history_file=~/.sc_history ; use readline history if available
+
+[program:postgresql]
+command=/usr/bin/postgres -D /var/lib/pgsql/data -p 5432
+user=postgres
+stdout_logfile=/var/log/supervisor/%(program_name)s.log
+stderr_logfile=/var/log/supervisor/%(program_name)s.log
+autorestart=true
+priority=100
+
+[program:initdb]
+command=/usr/local/share/fusionforge/post-install.d/db/db.sh configure
+user=root
+stdout_logfile=/var/log/supervisor/%(program_name)s.log
+stderr_logfile=/var/log/supervisor/%(program_name)s.log
+priority=500
+
+[program:sshd]
+command=/usr/sbin/sshd -D
+stdout_logfile=/var/log/supervisor/%(program_name)s.log
+stderr_logfile=/var/log/supervisor/%(program_name)s.log
+autorestart=true
+
+[program:httpd]
+command=/usr/sbin/httpd -DFOREGROUND
+autorestart=true
+priority=900
-----------------------------------------------------------------------
Summary of changes:
docker/Dockerfile | 38 +++++++++++
.../shell/upgrade-conf.sh => docker/startpoint.sh | 22 ++++---
docker/supervisord.conf | 76 ++++++++++++++++++++++
3 files changed, 128 insertions(+), 8 deletions(-)
create mode 100644 docker/Dockerfile
copy src/post-install.d/shell/upgrade-conf.sh => docker/startpoint.sh (67%)
mode change 100755 => 100644
create mode 100644 docker/supervisord.conf
hooks/post-receive
--
FusionForge
_______________________________________________
Fusionforge-commits mailing list
[email protected]
http://lists.fusionforge.org/cgi-bin/mailman/listinfo/fusionforge-commits