From 5279293fd9a9b9188bb296e2fa173da76df3652a Mon Sep 17 00:00:00 2001 From: Michiel de Jong Date: Thu, 23 Apr 2015 20:51:41 +0200 Subject: [PATCH 1/2] remove dockerfiles folder --- dockerfiles/backup/duplicity/Dockerfile | 20 -- dockerfiles/email/base-email/Dockerfile | 15 -- dockerfiles/email/base-email/editconf.py | 127 ---------- dockerfiles/email/base-email/mysql-check.sh | 23 -- dockerfiles/email/dovecot/99-local-auth.conf | 8 - dockerfiles/email/dovecot/99-local-lmtp.conf | 7 - dockerfiles/email/dovecot/Dockerfile | 56 ----- dockerfiles/email/dovecot/auth-sql.conf.ext | 9 - .../email/dovecot/dovecot-sql.conf.ext | 5 - dockerfiles/email/dovecot/init.sql | 27 -- dockerfiles/email/dovecot/startup.sh | 36 --- dockerfiles/email/dovecot/user.sql | 17 -- dockerfiles/email/postfix/Dockerfile | 85 ------- dockerfiles/email/postfix/install.sh | 25 -- .../postfix_outgoing_mail_header_filters | 11 - dockerfiles/email/postfix/supervisord.conf | 21 -- .../email/postfix/virtual-alias-maps.cf | 6 - .../email/postfix/virtual-mailbox-domains.cf | 6 - .../email/postfix/virtual-mailbox-maps.cf | 6 - dockerfiles/load-balancer/confd/Dockerfile | 25 -- dockerfiles/load-balancer/confd/README.md | 19 -- .../confd/confd/conf.d/crt-list.toml | 7 - .../confd/confd/conf.d/haproxy.toml | 7 - .../confd/confd/templates/crt-list.tmpl | 8 - .../confd/confd/templates/haproxy.cfg.tmpl | 55 ---- dockerfiles/load-balancer/haproxy/Dockerfile | 16 -- dockerfiles/load-balancer/haproxy/README.md | 15 -- dockerfiles/rsyslog/Dockerfile | 14 -- dockerfiles/rsyslog/haproxy | 14 -- dockerfiles/rsyslog/postfix | 14 -- dockerfiles/services/apache/Dockerfile | 39 --- dockerfiles/services/apache/default.conf | 35 --- dockerfiles/services/apache/run.sh | 4 - dockerfiles/services/apache/ssmtp.conf | 4 - dockerfiles/services/known/Dockerfile | 36 --- dockerfiles/services/known/README.md | 13 - dockerfiles/services/known/VOLUME | 1 - dockerfiles/services/known/run-known.sh | 81 ------ dockerfiles/services/mysql/Dockerfile | 1 - dockerfiles/services/nginx-php/Dockerfile | 35 --- dockerfiles/services/nginx-php/basic.conf | 5 - dockerfiles/services/nginx-php/entrypoint.sh | 12 - dockerfiles/services/nginx-php/environment | 6 - dockerfiles/services/nginx-php/mysql-check.sh | 23 -- dockerfiles/services/nginx-php/ssmtp.conf | 4 - dockerfiles/services/nginx/Dockerfile | 1 - dockerfiles/services/owncloud/Dockerfile | 29 --- .../services/owncloud/nginx-owncloud.conf | 57 ----- .../services/owncloud/startup-owncloud.sh | 114 --------- dockerfiles/services/piwik/Dockerfile | 24 -- dockerfiles/services/piwik/nginx-piwik.conf | 51 ---- dockerfiles/services/piwik/startup-piwik.sh | 238 ------------------ dockerfiles/services/wordpress/Dockerfile | 26 -- dockerfiles/services/wordpress/VOLUME | 1 - .../services/wordpress/run-wordpress.sh | 77 ------ dockerfiles/services/wordpress/wp-config.php | 100 -------- 56 files changed, 1721 deletions(-) delete mode 100644 dockerfiles/backup/duplicity/Dockerfile delete mode 100644 dockerfiles/email/base-email/Dockerfile delete mode 100644 dockerfiles/email/base-email/editconf.py delete mode 100644 dockerfiles/email/base-email/mysql-check.sh delete mode 100644 dockerfiles/email/dovecot/99-local-auth.conf delete mode 100644 dockerfiles/email/dovecot/99-local-lmtp.conf delete mode 100644 dockerfiles/email/dovecot/Dockerfile delete mode 100644 dockerfiles/email/dovecot/auth-sql.conf.ext delete mode 100644 dockerfiles/email/dovecot/dovecot-sql.conf.ext delete mode 100644 dockerfiles/email/dovecot/init.sql delete mode 100644 dockerfiles/email/dovecot/startup.sh delete mode 100644 dockerfiles/email/dovecot/user.sql delete mode 100644 dockerfiles/email/postfix/Dockerfile delete mode 100644 dockerfiles/email/postfix/install.sh delete mode 100644 dockerfiles/email/postfix/postfix_outgoing_mail_header_filters delete mode 100644 dockerfiles/email/postfix/supervisord.conf delete mode 100644 dockerfiles/email/postfix/virtual-alias-maps.cf delete mode 100644 dockerfiles/email/postfix/virtual-mailbox-domains.cf delete mode 100644 dockerfiles/email/postfix/virtual-mailbox-maps.cf delete mode 100644 dockerfiles/load-balancer/confd/Dockerfile delete mode 100644 dockerfiles/load-balancer/confd/README.md delete mode 100644 dockerfiles/load-balancer/confd/confd/conf.d/crt-list.toml delete mode 100644 dockerfiles/load-balancer/confd/confd/conf.d/haproxy.toml delete mode 100644 dockerfiles/load-balancer/confd/confd/templates/crt-list.tmpl delete mode 100644 dockerfiles/load-balancer/confd/confd/templates/haproxy.cfg.tmpl delete mode 100644 dockerfiles/load-balancer/haproxy/Dockerfile delete mode 100644 dockerfiles/load-balancer/haproxy/README.md delete mode 100644 dockerfiles/rsyslog/Dockerfile delete mode 100644 dockerfiles/rsyslog/haproxy delete mode 100644 dockerfiles/rsyslog/postfix delete mode 100644 dockerfiles/services/apache/Dockerfile delete mode 100644 dockerfiles/services/apache/default.conf delete mode 100644 dockerfiles/services/apache/run.sh delete mode 100644 dockerfiles/services/apache/ssmtp.conf delete mode 100644 dockerfiles/services/known/Dockerfile delete mode 100644 dockerfiles/services/known/README.md delete mode 100644 dockerfiles/services/known/VOLUME delete mode 100644 dockerfiles/services/known/run-known.sh delete mode 100644 dockerfiles/services/mysql/Dockerfile delete mode 100644 dockerfiles/services/nginx-php/Dockerfile delete mode 100644 dockerfiles/services/nginx-php/basic.conf delete mode 100755 dockerfiles/services/nginx-php/entrypoint.sh delete mode 100644 dockerfiles/services/nginx-php/environment delete mode 100644 dockerfiles/services/nginx-php/mysql-check.sh delete mode 100644 dockerfiles/services/nginx-php/ssmtp.conf delete mode 100644 dockerfiles/services/nginx/Dockerfile delete mode 100644 dockerfiles/services/owncloud/Dockerfile delete mode 100644 dockerfiles/services/owncloud/nginx-owncloud.conf delete mode 100644 dockerfiles/services/owncloud/startup-owncloud.sh delete mode 100644 dockerfiles/services/piwik/Dockerfile delete mode 100644 dockerfiles/services/piwik/nginx-piwik.conf delete mode 100644 dockerfiles/services/piwik/startup-piwik.sh delete mode 100644 dockerfiles/services/wordpress/Dockerfile delete mode 100644 dockerfiles/services/wordpress/VOLUME delete mode 100644 dockerfiles/services/wordpress/run-wordpress.sh delete mode 100644 dockerfiles/services/wordpress/wp-config.php diff --git a/dockerfiles/backup/duplicity/Dockerfile b/dockerfiles/backup/duplicity/Dockerfile deleted file mode 100644 index d55dae4..0000000 --- a/dockerfiles/backup/duplicity/Dockerfile +++ /dev/null @@ -1,20 +0,0 @@ -FROM debian:jessie - -ENV DEBIAN_FRONTEND noninteractive - -RUN \ - export VERSION=0.7.01 && \ - apt-get update && \ - apt-get install -y wget python python-dev python-pip librsync-dev ncftp lftp rsync && \ - rm -rf /var/lib/apt/lists/* && \ - pip install --upgrade lockfile paramiko pycrypto && \ - cd /tmp/ && \ - wget https://launchpad.net/duplicity/0.7-series/$VERSION/+download/duplicity-$VERSION.tar.gz && \ - cd /opt/ && \ - tar xzvf /tmp/duplicity-$VERSION.tar.gz && \ - rm /tmp/duplicity-$VERSION.tar.gz && \ - cd duplicity-$VERSION && \ - ./setup.py install - -ENTRYPOINT [ "/usr/local/bin/duplicity" ] - diff --git a/dockerfiles/email/base-email/Dockerfile b/dockerfiles/email/base-email/Dockerfile deleted file mode 100644 index d3169d6..0000000 --- a/dockerfiles/email/base-email/Dockerfile +++ /dev/null @@ -1,15 +0,0 @@ -FROM debian:jessie - -ENV DEBIAN_FRONTEND noninteractive -RUN apt-get update && \ - apt-get install -q -y \ - python3 \ - mysql-client \ - wget curl && \ - rm -rf /var/lib/apt/lists/* - -COPY editconf.py /opt/editconf.py -COPY mysql-check.sh /opt/mysql-check.sh -RUN chmod u+x /opt/editconf.py && \ - chmod u+x /opt/mysql-check.sh - diff --git a/dockerfiles/email/base-email/editconf.py b/dockerfiles/email/base-email/editconf.py deleted file mode 100644 index 7bc3d19..0000000 --- a/dockerfiles/email/base-email/editconf.py +++ /dev/null @@ -1,127 +0,0 @@ -#!/usr/bin/python3 -# -# This is a helper tool for editing configuration files during the setup -# process. The tool is given new values for settings as command-line -# arguments. It comments-out existing setting values in the configuration -# file and adds new values either after their former location or at the -# end. -# -# The configuration file has settings that look like: -# -# NAME=VALUE -# -# If the -s option is given, then space becomes the delimiter, i.e.: -# -# NAME VALUE -# -# If the -w option is given, then setting lines continue onto following -# lines while the lines start with whitespace, e.g.: -# -# NAME VAL -# UE - -import sys, re - -# sanity check -if len(sys.argv) < 3: - print("usage: python3 editconf.py /etc/file.conf [-s] [-w] [-t] NAME=VAL [NAME=VAL ...]") - sys.exit(1) - -# parse command line arguments -filename = sys.argv[1] -settings = sys.argv[2:] - -delimiter = "=" -delimiter_re = r"\s*=\s*" -comment_char = "#" -folded_lines = False -testing = False -while settings[0][0] == "-" and settings[0] != "--": - opt = settings.pop(0) - if opt == "-s": - # Space is the delimiter - delimiter = " " - delimiter_re = r"\s+" - elif opt == "-w": - # Line folding is possible in this file. - folded_lines = True - elif opt == "-c": - # Specifies a different comment character. - comment_char = settings.pop(0) - elif opt == "-t": - testing = True - else: - print("Invalid option.") - sys.exit(1) - -# create the new config file in memory - -found = set() -buf = "" -input_lines = list(open(filename)) - -while len(input_lines) > 0: - line = input_lines.pop(0) - - # If this configuration file uses folded lines, append any folded lines - # into our input buffer. - if folded_lines and line[0] not in (comment_char, " ", ""): - while len(input_lines) > 0 and input_lines[0][0] in " \t": - line += input_lines.pop(0) - - # See if this line is for any settings passed on the command line. - for i in range(len(settings)): - # Check that this line contain this setting from the command-line arguments. - name, val = settings[i].split("=", 1) - m = re.match( - "(\s*)" - + "(" + re.escape(comment_char) + "\s*)?" - + re.escape(name) + delimiter_re + "(.*?)\s*$", - line, re.S) - if not m: continue - indent, is_comment, existing_val = m.groups() - - # If this is already the setting, do nothing. - if is_comment is None and existing_val == val: - # It may be that we've already inserted this setting higher - # in the file so check for that first. - if i in found: break - buf += line - found.add(i) - break - - # comment-out the existing line (also comment any folded lines) - if is_comment is None: - buf += comment_char + line.rstrip().replace("\n", "\n" + comment_char) + "\n" - else: - # the line is already commented, pass it through - buf += line - - # if this option oddly appears more than once, don't add the setting again - if i in found: - break - - # add the new setting - buf += indent + name + delimiter + val + "\n" - - # note that we've applied this option - found.add(i) - - break - else: - # If did not match any setting names, pass this line through. - buf += line - -# Put any settings we didn't see at the end of the file. -for i in range(len(settings)): - if i not in found: - name, val = settings[i].split("=", 1) - buf += name + delimiter + val + "\n" - -if not testing: - # Write out the new file. - with open(filename, "w") as f: - f.write(buf) -else: - # Just print the new file to stdout. - print(buf) diff --git a/dockerfiles/email/base-email/mysql-check.sh b/dockerfiles/email/base-email/mysql-check.sh deleted file mode 100644 index 46a2745..0000000 --- a/dockerfiles/email/base-email/mysql-check.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash -eux - -source /etc/environment - -echo "=> Trying to connect to MySQL/MariaDB using:" -echo "========================================================================" -echo " Database Host Address: $DB_HOST" -echo " Database Port number: $DB_PORT" -echo " Database Username: $DB_USER" -echo " Database Password: $DB_PASS" -echo "========================================================================" - -for ((i=0;i<10;i++)) -do - DB_CONNECTABLE=$(mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e 'status' >/dev/null 2>&1; echo "$?") - if [[ DB_CONNECTABLE -eq 0 ]]; then - exit 0 - fi - sleep 5 -done - -exit 1 - diff --git a/dockerfiles/email/dovecot/99-local-auth.conf b/dockerfiles/email/dovecot/99-local-auth.conf deleted file mode 100644 index f0e40bf..0000000 --- a/dockerfiles/email/dovecot/99-local-auth.conf +++ /dev/null @@ -1,8 +0,0 @@ -service auth { - unix_listener /var/spool/postfix/dovecot/auth { - mode = 0666 - user = postfix - group = postfix - } -} - diff --git a/dockerfiles/email/dovecot/99-local-lmtp.conf b/dockerfiles/email/dovecot/99-local-lmtp.conf deleted file mode 100644 index 14f2d9a..0000000 --- a/dockerfiles/email/dovecot/99-local-lmtp.conf +++ /dev/null @@ -1,7 +0,0 @@ -service lmtp { - unix_listener /var/spool/postfix/dovecot/lmtp { - mode = 0600 - user = postfix - group = postfix - } -} diff --git a/dockerfiles/email/dovecot/Dockerfile b/dockerfiles/email/dovecot/Dockerfile deleted file mode 100644 index 112cf10..0000000 --- a/dockerfiles/email/dovecot/Dockerfile +++ /dev/null @@ -1,56 +0,0 @@ -FROM indiepaas/base-email - -RUN apt-get update && \ - apt-get install -q -y \ - dovecot-core \ - dovecot-imapd \ - dovecot-lmtpd \ - dovecot-mysql && \ - rm -rf /var/lib/apt/lists/* - -COPY 99-local-lmtp.conf /etc/dovecot/conf.d/99-local-lmtp.conf -COPY auth-sql.conf.ext /etc/dovecot/conf.d/auth-sql.conf.ext -COPY dovecot-sql.conf.ext /etc/dovecot/dovecot-sql.conf.ext -COPY 99-local-auth.conf /etc/dovecot/conf.d/99-local-auth.conf -COPY init.sql /init.sql -COPY startup.sh /startup.sh - -RUN \ - groupadd -r postfix && \ - useradd -r -g postfix postfix && \ - chmod u+x /startup.sh && \ - /opt/editconf.py /etc/dovecot/conf.d/10-master.conf \ - default_process_limit=250 && \ - /opt/editconf.py /etc/sysctl.conf \ - fs.inotify.max_user_instances=1024 && \ - /opt/editconf.py /etc/dovecot/conf.d/10-mail.conf \ - mail_location=maildir:/mail/mailboxes/%d/%n \ - mail_privileged_group=mail \ - first_valid_uid=0 && \ - /opt/editconf.py /etc/dovecot/conf.d/10-auth.conf \ - disable_plaintext_auth=yes \ - 'auth_mechanisms=plain login' && \ - /opt/editconf.py /etc/dovecot/conf.d/10-ssl.conf \ - ssl=required \ - 'ssl_cert=&1 |grep servermail > /dev/null ; echo "$?") -if [[ DB_EXISTS -eq 1 ]]; then - echo "=> Creating database servermail" - RET=$(mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e "CREATE DATABASE servermail") - if [[ RET -ne 0 ]]; then - echo "Cannot create database for emails" - exit RET - fi - echo "=> Loading initial database data to servermail" - RET=$(mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT servermail < /init.sql) - if [[ RET -ne 0 ]]; then - echo "Cannot load initial database data for emails" - exit RET - fi - echo "=> Done!" -else - echo "=> Skipped creation of database servermail it already exists." -fi - -dovecot -F - diff --git a/dockerfiles/email/dovecot/user.sql b/dockerfiles/email/dovecot/user.sql deleted file mode 100644 index d4384fb..0000000 --- a/dockerfiles/email/dovecot/user.sql +++ /dev/null @@ -1,17 +0,0 @@ -INSERT INTO `servermail`.`virtual_domains` - (`id` ,`name`) - VALUES - ('1', 'example.com'), - ('2', 'hostname.example.com'); - -INSERT INTO `servermail`.`virtual_users` - (`id`, `domain_id`, `password` , `email`) - VALUES - ('1', '1', ENCRYPT('firstpassword', CONCAT('$6$', SUBSTRING(SHA(RAND()), -16))), 'email1@example.com'), - ('2', '1', ENCRYPT('secondpassword', CONCAT('$6$', SUBSTRING(SHA(RAND()), -16))), 'email2@example.com'); - -INSERT INTO `servermail`.`virtual_aliases` - (`id`, `domain_id`, `source`, `destination`) - VALUES - ('1', '1', 'alias@example.com', 'email1@example.com'); - diff --git a/dockerfiles/email/postfix/Dockerfile b/dockerfiles/email/postfix/Dockerfile deleted file mode 100644 index 19bd69c..0000000 --- a/dockerfiles/email/postfix/Dockerfile +++ /dev/null @@ -1,85 +0,0 @@ -FROM indiepaas/base-email - -RUN apt-get update && \ - apt-get install -q -y \ - postfix \ - postfix-pcre \ - postfix-mysql \ - supervisor \ - ca-certificates \ - opendkim \ - opendkim-tools \ - opendmarc && \ - rm -rf /var/lib/apt/lists/* - -COPY install.sh /install.sh -COPY postfix_outgoing_mail_header_filters /etc/postfix/outgoing_mail_header_filters -COPY virtual-mailbox-domains.cf /etc/postfix/virtual-mailbox-domains.cf -COPY virtual-mailbox-maps.cf /etc/postfix/virtual-mailbox-maps.cf -COPY virtual-alias-maps.cf /etc/postfix/virtual-alias-maps.cf -COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf - -RUN \ - chmod u+x /install.sh && \ - /opt/editconf.py /etc/postfix/main.cf \ - inet_interfaces=all \ - myhostname=##HOSTNAME##\ - smtpd_banner="\$myhostname ESMTP Hi, I'm a hosted by an IndieHoster (Debian/Postfix; see https://indiehosters.net/)" \ - mydestination=localhost && \ - /opt/editconf.py /etc/postfix/master.cf -s -w \ - "submission=inet n - - - - smtpd -o syslog_name=postfix/submission -o smtpd_milters=inet:127.0.0.1:8891 -o smtpd_tls_ciphers=high -o smtpd_tls_protocols=!SSLv2,!SSLv3 -o cleanup_service_name=authclean" && \ - /opt/editconf.py /etc/postfix/master.cf -s -w \ - "authclean=unix n - - - 0 cleanup -o header_checks=pcre:/etc/postfix/outgoing_mail_header_filters" && \ - /opt/editconf.py /etc/postfix/main.cf \ - smtpd_tls_security_level=may\ - smtpd_tls_auth_only=yes \ - smtpd_tls_cert_file=/ssl/ssl_certificate.pem \ - smtpd_tls_key_file=/ssl/ssl_private_key.pem \ - smtpd_tls_dh1024_param_file=/ssl/dh2048.pem \ - smtpd_tls_received_header=yes && \ - /opt/editconf.py /etc/postfix/main.cf \ - smtpd_relay_restrictions=permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination && \ - /opt/editconf.py /etc/postfix/main.cf \ - smtp_tls_CAfile=/etc/ssl/certs/ca-certificates.crt \ - smtp_tls_loglevel=2 && \ - /opt/editconf.py /etc/postfix/main.cf virtual_transport=lmtp:[127.0.0.1]:10025 && \ - /opt/editconf.py /etc/postfix/main.cf virtual_transport=lmtp:unix:dovecot/lmtp && \ - /opt/editconf.py /etc/postfix/main.cf \ - smtpd_sender_restrictions="reject_non_fqdn_sender,reject_unknown_sender_domain,reject_rhsbl_sender dbl.spamhaus.org" \ - smtpd_recipient_restrictions=permit_sasl_authenticated,permit_mynetworks,"reject_rbl_client zen.spamhaus.org",reject_unlisted_recipient && \ - /opt/editconf.py /etc/postfix/main.cf \ - message_size_limit=134217728 && \ - /opt/editconf.py /etc/postfix/main.cf \ - smtpd_sasl_type=dovecot \ - smtpd_sasl_path=dovecot/auth \ - smtpd_sasl_auth_enable=yes && \ - /opt/editconf.py /etc/postfix/main.cf \ - virtual_mailbox_domains=mysql:/etc/postfix/virtual-mailbox-domains.cf \ - virtual_mailbox_maps=mysql:/etc/postfix/virtual-mailbox-maps.cf \ - virtual_alias_maps=mysql:/etc/postfix/virtual-alias-maps.cf \ - local_recipient_maps=\$virtual_mailbox_maps && \ - /opt/editconf.py /etc/postfix/main.cf \ - mynetworks="127.0.0.0/8 172.17.42.0/24" && \ - /opt/editconf.py /etc/opendmarc.conf -s \ - "Syslog=true" \ - "Socket=inet:8893@[127.0.0.1]" && \ - /opt/editconf.py /etc/postfix/main.cf \ - "smtpd_milters=inet:127.0.0.1:8891 inet:127.0.0.1:8893"\ - non_smtpd_milters=\$smtpd_milters \ - milter_default_action=accept && \ - echo "MinimumKeyBits 1024" >> /etc/opendkim.conf && \ - echo "ExternalIgnoreList refile:/etc/opendkim/TrustedHosts" >> /etc/opendkim.conf && \ - echo "InternalHosts refile:/etc/opendkim/TrustedHosts" >> /etc/opendkim.conf && \ - echo "KeyTable refile:/etc/opendkim/KeyTable" >> /etc/opendkim.conf && \ - echo "SigningTable refile:/etc/opendkim/SigningTable" >> /etc/opendkim.conf && \ - echo "Socket inet:8891@localhost" >> /etc/opendkim.conf && \ - echo "RequireSafeKeys false" >> /etc/opendkim.conf - -#RUN /opt/editconf.py /etc/postfix/main.cf \ -#smtp_tls_security_level=dane \ -#smtp_dns_support_level=dnssec - -VOLUME ["/var/spool/postfix/"] - -CMD /install.sh;/usr/bin/supervisord -c /etc/supervisor/supervisord.conf - diff --git a/dockerfiles/email/postfix/install.sh b/dockerfiles/email/postfix/install.sh deleted file mode 100644 index f7cb48b..0000000 --- a/dockerfiles/email/postfix/install.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -eux - -export DB_PORT=3306 -export DB_HOST=db -export DB_USER=admin -echo $HOSTNAME - -sed -i "s/##DB_USER##/$DB_USER/" /etc/postfix/virtual-mailbox-domains.cf -sed -i "s/##DB_PASS##/$DB_PASS/" /etc/postfix/virtual-mailbox-domains.cf -sed -i "s/##DB_USER##/$DB_USER/" /etc/postfix/virtual-mailbox-maps.cf -sed -i "s/##DB_PASS##/$DB_PASS/" /etc/postfix/virtual-mailbox-maps.cf -sed -i "s/##DB_USER##/$DB_USER/" /etc/postfix/virtual-alias-maps.cf -sed -i "s/##DB_PASS##/$DB_PASS/" /etc/postfix/virtual-alias-maps.cf -sed -i "s/##HOSTNAME##/$HOSTNAME/" /etc/postfix/virtual-alias-maps.cf -sed -i "s/##HOSTNAME##/$HOSTNAME/" /etc/postfix/main.cf - -/opt/mysql-check.sh - -if [ ! -f /etc/opendkim/TrustedHosts ]; then - mkdir -p /etc/opendkim - echo "127.0.0.1" > /etc/opendkim/TrustedHosts -fi - -chown -R postfix:postfix /var/spool/postfix/dovecot - diff --git a/dockerfiles/email/postfix/postfix_outgoing_mail_header_filters b/dockerfiles/email/postfix/postfix_outgoing_mail_header_filters deleted file mode 100644 index f1d00fc..0000000 --- a/dockerfiles/email/postfix/postfix_outgoing_mail_header_filters +++ /dev/null @@ -1,11 +0,0 @@ -# Remove the first line of the Received: header. Note that we cannot fully remove the Received: header -# because OpenDKIM requires that a header be present when signing outbound mail. The first line is -# where the user's home IP address would be. -/^\s*Received:[^\n]*(.*)/ REPLACE Received: from authenticated-user (unknown [127.0.0.1])$1 - -# Remove other typically private information. -/^\s*User-Agent:/ IGNORE -/^\s*X-Enigmail:/ IGNORE -/^\s*X-Mailer:/ IGNORE -/^\s*X-Originating-IP:/ IGNORE - diff --git a/dockerfiles/email/postfix/supervisord.conf b/dockerfiles/email/postfix/supervisord.conf deleted file mode 100644 index 5121333..0000000 --- a/dockerfiles/email/postfix/supervisord.conf +++ /dev/null @@ -1,21 +0,0 @@ -[supervisord] -nodaemon=true - -[program:postfix] -process_name = postfix -command = /etc/init.d/postfix start -startsecs = 0 -autorestart = false - -[program:opendkim] -process_name = opendkim -command = /etc/init.d/opendkim start -startsecs = 0 -autorestart = false - -[program:opendmarc] -process_name = opendmarc -command = /etc/init.d/opendmarc start -startsecs = 0 -autorestart = false - diff --git a/dockerfiles/email/postfix/virtual-alias-maps.cf b/dockerfiles/email/postfix/virtual-alias-maps.cf deleted file mode 100644 index 0508510..0000000 --- a/dockerfiles/email/postfix/virtual-alias-maps.cf +++ /dev/null @@ -1,6 +0,0 @@ -user = ##DB_USER## -password = ##DB_PASS## -hosts = db -dbname = servermail -query = SELECT destination FROM virtual_aliases WHERE source='%s' - diff --git a/dockerfiles/email/postfix/virtual-mailbox-domains.cf b/dockerfiles/email/postfix/virtual-mailbox-domains.cf deleted file mode 100644 index ed53fb6..0000000 --- a/dockerfiles/email/postfix/virtual-mailbox-domains.cf +++ /dev/null @@ -1,6 +0,0 @@ -user = ##DB_USER## -password = ##DB_PASS## -hosts = db -dbname = servermail -query = SELECT 1 FROM virtual_domains WHERE name='%s' - diff --git a/dockerfiles/email/postfix/virtual-mailbox-maps.cf b/dockerfiles/email/postfix/virtual-mailbox-maps.cf deleted file mode 100644 index fb98758..0000000 --- a/dockerfiles/email/postfix/virtual-mailbox-maps.cf +++ /dev/null @@ -1,6 +0,0 @@ -user = ##DB_USER## -password = ##DB_PASS## -hosts = db -dbname = servermail -query = SELECT 1 FROM virtual_users WHERE email='%s' - diff --git a/dockerfiles/load-balancer/confd/Dockerfile b/dockerfiles/load-balancer/confd/Dockerfile deleted file mode 100644 index fbe1725..0000000 --- a/dockerfiles/load-balancer/confd/Dockerfile +++ /dev/null @@ -1,25 +0,0 @@ -FROM debian:jessie - -ENV DEBIAN_FRONTEND noninteractive - -RUN \ - apt-get update &&\ - apt-get install -y \ - wget \ - ca-certificates &&\ - rm -rf /var/lib/apt/lists/* - -ADD confd /etc/confd - -RUN \ - wget https://github.com/kelseyhightower/confd/releases/download/v0.7.1/confd-0.7.1-linux-amd64 -O confd && \ - chmod +x confd - -RUN \ - wget https://get.docker.com/builds/Linux/x86_64/docker-1.2.0 -O docker && \ - chmod +x docker - -VOLUME ["/etc/confd/", "/etc/haproxy"] -ENTRYPOINT ["/confd"] -CMD ["-interval=60", "-node=172.17.42.1:4001", "-watch=true", "-verbose=true"] - diff --git a/dockerfiles/load-balancer/confd/README.md b/dockerfiles/load-balancer/confd/README.md deleted file mode 100644 index d489acf..0000000 --- a/dockerfiles/load-balancer/confd/README.md +++ /dev/null @@ -1,19 +0,0 @@ -# Confd - -The smallest confd docker image in town ;) - -## Run - -This image will log everything to stdout/stderr. - -It was designed to work with HAproxy, but you can use it for anything! There is no configuration, you'll have to mount the config folder. There is a nice example in [indiehosters/confd git repo](https://github.com/indiehosters/dockerfiles/tree/master/server-wide/confd). - -```bash -docker run\ - -v /haproxy-config:/etc/haproxy/\ - -v ./confd/:/etc/confd/\ - -v /var/run/docker.sock:/var/run/docker.sock\ -indiehosters/confd -``` - -It works really well with [indiehosters/haproxy](https://registry.hub.docker.com/u/indiehosters/haproxy/) to have automatic configuration of HAproxy backed by `etcd` or `consul`. diff --git a/dockerfiles/load-balancer/confd/confd/conf.d/crt-list.toml b/dockerfiles/load-balancer/confd/confd/conf.d/crt-list.toml deleted file mode 100644 index ef435f2..0000000 --- a/dockerfiles/load-balancer/confd/confd/conf.d/crt-list.toml +++ /dev/null @@ -1,7 +0,0 @@ -[template] -src = "crt-list.tmpl" -dest = "/etc/haproxy/crt-list" -keys = [ - "/services" -] -reload_cmd = "/docker kill --signal=\"SIGUSR1\" haproxy" diff --git a/dockerfiles/load-balancer/confd/confd/conf.d/haproxy.toml b/dockerfiles/load-balancer/confd/confd/conf.d/haproxy.toml deleted file mode 100644 index d355421..0000000 --- a/dockerfiles/load-balancer/confd/confd/conf.d/haproxy.toml +++ /dev/null @@ -1,7 +0,0 @@ -[template] -src = "haproxy.cfg.tmpl" -dest = "/etc/haproxy/haproxy.cfg" -keys = [ - "/services" -] -reload_cmd = "/docker kill --signal=\"SIGUSR1\" haproxy" diff --git a/dockerfiles/load-balancer/confd/confd/templates/crt-list.tmpl b/dockerfiles/load-balancer/confd/confd/templates/crt-list.tmpl deleted file mode 100644 index 731e011..0000000 --- a/dockerfiles/load-balancer/confd/confd/templates/crt-list.tmpl +++ /dev/null @@ -1,8 +0,0 @@ -{{range $app := lsdir "/services"}} -{{$hostnames := printf "/services/%s/*" $app}} - {{range gets $hostnames}} - {{$hostname := .Key}} -/etc/haproxy/approved-certs/{{base $hostname}}.pem {{base $hostname}} -/etc/haproxy/approved-certs/{{base $hostname}}.pem www.{{base $hostname}} - {{end}} -{{end}} diff --git a/dockerfiles/load-balancer/confd/confd/templates/haproxy.cfg.tmpl b/dockerfiles/load-balancer/confd/confd/templates/haproxy.cfg.tmpl deleted file mode 100644 index c534eaa..0000000 --- a/dockerfiles/load-balancer/confd/confd/templates/haproxy.cfg.tmpl +++ /dev/null @@ -1,55 +0,0 @@ -global - log /dev/log local0 info - log /dev/log local0 notice - maxconn 4096 - user haproxy - group haproxy - tune.ssl.default-dh-param 2048 - ssl-default-bind-ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA - -defaults - log global - mode http - option forwardfor - option httpclose - option httplog - option dontlognull - retries 3 - timeout connect 5000 - timeout client 50000 - timeout server 50000 - - -frontend https-in -mode http - bind *:443 ssl no-sslv3 crt-list /etc/haproxy/crt-list crt /etc/haproxy/approved-certs/default.pem - # HSTS (15768000 seconds = 6 months) - rspadd Strict-Transport-Security:\ max-age=15768000 - reqadd X-Forwarded-Proto:\ https -{{range $app := lsdir "/services"}} -{{$hostnames := printf "/services/%s/*" $app}} - {{range gets $hostnames}} - {{$hostname := .Key}} - {{$data := json .Value}} -# {{base $hostname}}: - acl https_{{base $hostname}} hdr(host) -i {{base $hostname}} - acl https_{{base $hostname}} hdr(host) -i www.{{base $hostname}} - use_backend {{base $hostname}} if https_{{base $hostname}} - {{end}} -{{end}} - -frontend http-in - bind *:80 - redirect scheme https code 301 - -{{range $app := lsdir "/services"}} -{{$hostnames := printf "/services/%s/*" $app}} - {{range gets $hostnames}} - {{$hostname := .Key}} - {{$data := json .Value}} -# {{base $hostname}}: -backend {{base $hostname}} - cookie SERVERID insert nocache indirect - server Server {{$data.ip}}:{{$data.port}} cookie Server - {{end}} -{{end}} diff --git a/dockerfiles/load-balancer/haproxy/Dockerfile b/dockerfiles/load-balancer/haproxy/Dockerfile deleted file mode 100644 index d82471e..0000000 --- a/dockerfiles/load-balancer/haproxy/Dockerfile +++ /dev/null @@ -1,16 +0,0 @@ -FROM debian:jessie - -ENV DEBIAN_FRONTEND noninteractive - -# Install Haproxy. -RUN \ - apt-get update && \ - apt-get install -y haproxy && \ - rm -rf /var/lib/apt/lists/* - -VOLUME ["/etc/haproxy"] -ENTRYPOINT ["haproxy"] -CMD ["-f", "/etc/haproxy/haproxy.cfg"] -EXPOSE 80 -EXPOSE 443 - diff --git a/dockerfiles/load-balancer/haproxy/README.md b/dockerfiles/load-balancer/haproxy/README.md deleted file mode 100644 index 801db3c..0000000 --- a/dockerfiles/load-balancer/haproxy/README.md +++ /dev/null @@ -1,15 +0,0 @@ -# HAproxy - -The smallest HAproxy docker image in town ;) - -## Run - -```bash -docker run\ - -v /haproxy-config:/etc/haproxy\ - -p 80:80\ - -p 443:443\ - indiepaas/haproxy -``` - -Have a look to [indiepaas/confd](https://registry.hub.docker.com/u/indiepaas/confd/) to have automatic configuration of HAproxy backed by `etcd` or `consul`. diff --git a/dockerfiles/rsyslog/Dockerfile b/dockerfiles/rsyslog/Dockerfile deleted file mode 100644 index 96ff42c..0000000 --- a/dockerfiles/rsyslog/Dockerfile +++ /dev/null @@ -1,14 +0,0 @@ -FROM debian:jessie - -ENV DEBIAN_FRONTEND noninteractive -RUN apt-get update && \ - apt-get install -q -y rsyslog && \ - rm -rf /var/lib/apt/lists/* - -ADD haproxy /etc/logrotate.d/haproxy -ADD postfix /etc/logrotate.d/postfix - -VOLUME [ "/dev", "/var/log" ] - -ENTRYPOINT [ "rsyslogd", "-n" ] - diff --git a/dockerfiles/rsyslog/haproxy b/dockerfiles/rsyslog/haproxy deleted file mode 100644 index 9bba22f..0000000 --- a/dockerfiles/rsyslog/haproxy +++ /dev/null @@ -1,14 +0,0 @@ -/var/log/haproxy*.log -{ - rotate 4 - weekly - missingok - notifempty - compress - delaycompress - sharedscripts - postrotate - reload rsyslog >/dev/null 2>&1 || true - endscript -} - diff --git a/dockerfiles/rsyslog/postfix b/dockerfiles/rsyslog/postfix deleted file mode 100644 index 79fdf3f..0000000 --- a/dockerfiles/rsyslog/postfix +++ /dev/null @@ -1,14 +0,0 @@ -/var/log/mail.* -{ - rotate 4 - weekly - missingok - notifempty - compress - delaycompress - sharedscripts - postrotate - reload rsyslog >/dev/null 2>&1 || true - endscript -} - diff --git a/dockerfiles/services/apache/Dockerfile b/dockerfiles/services/apache/Dockerfile deleted file mode 100644 index 357306d..0000000 --- a/dockerfiles/services/apache/Dockerfile +++ /dev/null @@ -1,39 +0,0 @@ -FROM debian:jessie - -ENV DEBIAN_FRONTEND noninteractive - -RUN apt-get update \ - && apt-get -yq install \ - apache2 \ - curl \ - mysql-client \ - libapache2-mod-php5 \ - php-apc \ - php-pear \ - php5-curl \ - php5-gd \ - php5-json \ - php5-mcrypt \ - php5-imagick \ - php5-mysql \ - php5-xmlrpc \ - ssmtp \ - unzip \ - && rm -rf /var/lib/apt/lists/* - -# Add image configuration and scripts -ADD default.conf /etc/apache2/sites-enabled/000-default.conf -ADD run.sh /run.sh -RUN sed -i "s/variables_order.*/variables_order = \"EGPCS\"/g" /etc/php5/apache2/php.ini && \ - sed -i "s/.*sendmail_path.*/sendmail_path = \/usr\/sbin\/ssmtp -t/g" /etc/php5/apache2/php.ini \ - && mkdir -p /app \ - && rm -rf /var/www/html \ - && ln -s /app /var/www/html \ - && a2enmod rewrite \ - && chmod 755 /run.sh - -COPY ssmtp.conf /etc/ssmtp/ssmtp.conf - -CMD ["/run.sh"] -EXPOSE 80 - diff --git a/dockerfiles/services/apache/default.conf b/dockerfiles/services/apache/default.conf deleted file mode 100644 index 89f7305..0000000 --- a/dockerfiles/services/apache/default.conf +++ /dev/null @@ -1,35 +0,0 @@ - - # The ServerName directive sets the request scheme, hostname and port that - # the server uses to identify itself. This is used when creating - # redirection URLs. In the context of virtual hosts, the ServerName - # specifies what hostname must appear in the request's Host: header to - # match this virtual host. For the default virtual host (this file) this - # value is not decisive as it is used as a last resort host regardless. - # However, you must set it for any further virtual host explicitly. - #ServerName www.example.com - - ServerAdmin webmaster@localhost - DocumentRoot /var/www/html - - # Available loglevels: trace8, ..., trace1, debug, info, notice, warn, - # error, crit, alert, emerg. - # It is also possible to configure the loglevel for particular - # modules, e.g. - #LogLevel info ssl:warn - - ErrorLog ${APACHE_LOG_DIR}/error.log - CustomLog ${APACHE_LOG_DIR}/access.log combined - - # For most configuration files from conf-available/, which are - # enabled or disabled at a global level, it is possible to - # include a line for only one particular virtual host. For example the - # following line enables the CGI configuration for this host only - # after it has been globally disabled with "a2disconf". - #Include conf-available/serve-cgi-bin.conf - - Options -Indexes +FollowSymLinks +MultiViews - AllowOverride All - Order allow,deny - allow from all - - diff --git a/dockerfiles/services/apache/run.sh b/dockerfiles/services/apache/run.sh deleted file mode 100644 index 81284de..0000000 --- a/dockerfiles/services/apache/run.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/bash -source /etc/apache2/envvars -exec apache2 -D FOREGROUND - diff --git a/dockerfiles/services/apache/ssmtp.conf b/dockerfiles/services/apache/ssmtp.conf deleted file mode 100644 index aa6b53b..0000000 --- a/dockerfiles/services/apache/ssmtp.conf +++ /dev/null @@ -1,4 +0,0 @@ -mailhub=172.17.42.1 -root=postmaster -FromLineOverride=YES - diff --git a/dockerfiles/services/known/Dockerfile b/dockerfiles/services/known/Dockerfile deleted file mode 100644 index 5435ece..0000000 --- a/dockerfiles/services/known/Dockerfile +++ /dev/null @@ -1,36 +0,0 @@ -FROM indiepaas/apache - -# Download latest version of Known into /app -RUN mkdir -p /app && \ - cd /app && \ - curl -L http://assets.withknown.com/releases/known-latest.zip -o known.zip && \ - unzip known.zip && \ - rm -rf known.zip && \ - cd IdnoPlugins && \ - curl -L https://github.com/idno/Twitter/archive/master.zip -o twitter.zip && \ - unzip twitter.zip && \ - mv Twitter-master/ Twitter && \ - rm twitter.zip && \ - curl -L https://github.com/idno/Facebook/archive/master.zip -o facebook.zip && \ - unzip facebook.zip && \ - mv Facebook-master/ Facebook && \ - rm facebook.zip && \ - curl -L https://github.com/idno/Markdown/archive/master.zip -o markdown.zip && \ - unzip markdown.zip && \ - mv Markdown-master/ Markdown && \ - rm markdown.zip - -# Add script to create 'known' DB -ADD run-known.sh /run-known.sh -RUN chmod 755 /run-known.sh - -# Expose environment variables -ENV DB_HOST **LinkMe** -ENV DB_PORT **LinkMe** -ENV DB_NAME known -ENV DB_USER admin -ENV DB_PASS **ChangeMe** - -EXPOSE 80 -VOLUME ["/app/Uploads", "/app/.htaccess"] -CMD ["/run-known.sh"] diff --git a/dockerfiles/services/known/README.md b/dockerfiles/services/known/README.md deleted file mode 100644 index 9d8bc3f..0000000 --- a/dockerfiles/services/known/README.md +++ /dev/null @@ -1,13 +0,0 @@ -# Usage - -```` -PASS=`pwgen 20 1` -sudo docker pull debian:jessie -sudo docker build -t indiehosters/apache ../apache -sudo docker build -t indiehosters/known . -sudo docker run -d -e MYSQL_PASS=$PASS --name mysql indiehosters/mysql -sudo docker run -d -p 80:80 --link mysql:db -e DB_PASS=$PASS indiehosters/known -echo Using $PASS as the database password. Waiting for everything to be up... -sleep 20 -curl -I http://localhost/ -```` diff --git a/dockerfiles/services/known/VOLUME b/dockerfiles/services/known/VOLUME deleted file mode 100644 index 874a5e4..0000000 --- a/dockerfiles/services/known/VOLUME +++ /dev/null @@ -1 +0,0 @@ -/app/Uploads diff --git a/dockerfiles/services/known/run-known.sh b/dockerfiles/services/known/run-known.sh deleted file mode 100644 index 2d60492..0000000 --- a/dockerfiles/services/known/run-known.sh +++ /dev/null @@ -1,81 +0,0 @@ -#!/bin/bash - -# Initialization after docker mount -if [ ! -s /app/.htaccess ]; then - cat /app/htaccess.dist > /app/.htaccess -fi - -chown -R root:www-data /app -chmod -R 650 /app -chmod -R 770 /app/Uploads -chmod -R 660 /app/.htaccess - -DB_HOST=${DB_PORT_3306_TCP_ADDR:-${DB_HOST}} -DB_HOST=${DB_1_PORT_3306_TCP_ADDR:-${DB_HOST}} -DB_PORT=${DB_PORT_3306_TCP_PORT:-${DB_PORT}} -DB_PORT=${DB_1_PORT_3306_TCP_PORT:-${DB_PORT}} - -if [ "$DB_PASS" = "**ChangeMe**" ] && [ -n "$DB_1_ENV_MYSQL_PASS" ]; then - DB_PASS="$DB_1_ENV_MYSQL_PASS" -fi - -echo "=> Trying to connect to MySQL/MariaDB using:" -echo "========================================================================" -echo " Database Host Address: $DB_HOST" -echo " Database Port number: $DB_PORT" -echo " Database Name: $DB_NAME" -echo " Database Username: $DB_USER" -echo " Database Password: $DB_PASS" -echo "========================================================================" - - -for ((i=0;i<10;i++)) -do - DB_CONNECTABLE=$(mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e 'status' >/dev/null 2>&1; echo "$?") - if [[ DB_CONNECTABLE -eq 0 ]]; then - break - fi - sleep 5 -done - -if [[ $DB_CONNECTABLE -eq 0 ]]; then - DB_EXISTS=$(mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e "SHOW DATABASES LIKE '"$DB_NAME"';" 2>&1 |grep "$DB_NAME" > /dev/null ; echo "$?") - - if [[ DB_EXISTS -eq 1 ]]; then - echo "=> Creating database $DB_NAME" - RET=$(mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e "CREATE DATABASE $DB_NAME") - if [[ RET -ne 0 ]]; then - echo "Cannot create database for known" - exit RET - fi - if [ -f /app/schemas/mysql/mysql.sql ]; then - echo "=> Loading initial database data to $DB_NAME" - RET=$(mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT $DB_NAME < /app/schemas/mysql/mysql.sql) - if [[ RET -ne 0 ]]; then - echo "Cannot load initial database data for known" - exit RET - fi - fi - echo "=> Done!" - else - echo "=> Skipped creation of database $DB_NAME – it already exists." - fi -else - echo "Cannot connect to Mysql" - exit $DB_CONNECTABLE -fi - -# Environment creation -echo "filesystem = 'local'" > /app/config.ini -echo "uploadpath = '/app/Uploads'" >> /app/config.ini -echo "database = 'MySQL'" >> /app/config.ini -echo "dbname = '${DB_NAME}'" >> /app/config.ini -echo "dbhost = '${DB_HOST}'" >> /app/config.ini -echo "dbuser = '${DB_USER}'" >> /app/config.ini -echo "dbpass = '${DB_PASS}'" >> /app/config.ini -echo "url = 'https://${URL}/'" >> /app/config.ini -echo "smtp_host = 172.17.42.1" >> /app/config.ini -echo "smtp_port = 25" >> /app/config.ini - -exec /run.sh - diff --git a/dockerfiles/services/mysql/Dockerfile b/dockerfiles/services/mysql/Dockerfile deleted file mode 100644 index ac4dba3..0000000 --- a/dockerfiles/services/mysql/Dockerfile +++ /dev/null @@ -1 +0,0 @@ -FROM tutum/mysql diff --git a/dockerfiles/services/nginx-php/Dockerfile b/dockerfiles/services/nginx-php/Dockerfile deleted file mode 100644 index 6e135cf..0000000 --- a/dockerfiles/services/nginx-php/Dockerfile +++ /dev/null @@ -1,35 +0,0 @@ -FROM nginx - -ENV DEBIAN_FRONTEND noninteractive - -RUN apt-get update && apt-get install -y \ - mysql-client \ - php5-fpm \ - php5-mysql \ - ssmtp \ - curl && \ - rm -rf /var/lib/apt/lists/* && \ - rm -rf /etc/nginx/conf.d/* && \ - rm -rf /usr/share/nginx/html/* && \ - mkdir -p /etc/nginx/external && \ - sed -i 's/access_log.*/access_log \/dev\/stdout;/g' /etc/nginx/nginx.conf && \ - sed -i 's/error_log.*/error_log \/dev\/stdout info;/g' /etc/nginx/nginx.conf && \ - sed -i 's/^pid/daemon off;\npid/g' /etc/nginx/nginx.conf && \ - sed -i "s/.*sendmail_path.*/sendmail_path = \/usr\/sbin\/ssmtp -t/g" /etc/php5/fpm/php.ini && \ - sed -i 's/;default_charset.*/default_charset = "UTF-8"/g' /etc/php5/fpm/php.ini && \ - sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/g' /etc/php5/fpm/php.ini - -ADD basic.conf /etc/nginx/conf.d/basic.conf -ADD entrypoint.sh /opt/entrypoint.sh -RUN chmod u+x /opt/entrypoint.sh - -ADD mysql-check.sh /opt/mysql-check.sh -RUN chmod u+x /opt/mysql-check.sh - -COPY ssmtp.conf /etc/ssmtp/ssmtp.conf - -ADD environment /etc/environment - -ENTRYPOINT ["/opt/entrypoint.sh"] -CMD ["nginx"] - diff --git a/dockerfiles/services/nginx-php/basic.conf b/dockerfiles/services/nginx-php/basic.conf deleted file mode 100644 index e7c093c..0000000 --- a/dockerfiles/services/nginx-php/basic.conf +++ /dev/null @@ -1,5 +0,0 @@ -# hide nginx version -server_tokens off; - -# add nosniff header (https://www.owasp.org/index.php/List_of_useful_HTTP_headers) -add_header X-Content-Type-Options nosniff; diff --git a/dockerfiles/services/nginx-php/entrypoint.sh b/dockerfiles/services/nginx-php/entrypoint.sh deleted file mode 100755 index ad97c03..0000000 --- a/dockerfiles/services/nginx-php/entrypoint.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash -eux - -/etc/init.d/php5-fpm start -chmod a+rwx /var/run/php5-fpm.sock - -echo "127.0.0.1 ${URL}" >> /etc/hosts - -# exec CMD -echo ">> exec docker CMD" -echo "$@" -"$@" - diff --git a/dockerfiles/services/nginx-php/environment b/dockerfiles/services/nginx-php/environment deleted file mode 100644 index 15719f9..0000000 --- a/dockerfiles/services/nginx-php/environment +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash -eux - -DB_HOST=db -DB_PORT=${DB_PORT_3306_TCP_PORT:-${DB_PORT}} -DB_PORT=${DB_1_PORT_3306_TCP_PORT:-${DB_PORT}} - diff --git a/dockerfiles/services/nginx-php/mysql-check.sh b/dockerfiles/services/nginx-php/mysql-check.sh deleted file mode 100644 index 46a2745..0000000 --- a/dockerfiles/services/nginx-php/mysql-check.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash -eux - -source /etc/environment - -echo "=> Trying to connect to MySQL/MariaDB using:" -echo "========================================================================" -echo " Database Host Address: $DB_HOST" -echo " Database Port number: $DB_PORT" -echo " Database Username: $DB_USER" -echo " Database Password: $DB_PASS" -echo "========================================================================" - -for ((i=0;i<10;i++)) -do - DB_CONNECTABLE=$(mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e 'status' >/dev/null 2>&1; echo "$?") - if [[ DB_CONNECTABLE -eq 0 ]]; then - exit 0 - fi - sleep 5 -done - -exit 1 - diff --git a/dockerfiles/services/nginx-php/ssmtp.conf b/dockerfiles/services/nginx-php/ssmtp.conf deleted file mode 100644 index aa6b53b..0000000 --- a/dockerfiles/services/nginx-php/ssmtp.conf +++ /dev/null @@ -1,4 +0,0 @@ -mailhub=172.17.42.1 -root=postmaster -FromLineOverride=YES - diff --git a/dockerfiles/services/nginx/Dockerfile b/dockerfiles/services/nginx/Dockerfile deleted file mode 100644 index 3fe45c5..0000000 --- a/dockerfiles/services/nginx/Dockerfile +++ /dev/null @@ -1 +0,0 @@ -FROM tutum/nginx diff --git a/dockerfiles/services/owncloud/Dockerfile b/dockerfiles/services/owncloud/Dockerfile deleted file mode 100644 index b8c7cf9..0000000 --- a/dockerfiles/services/owncloud/Dockerfile +++ /dev/null @@ -1,29 +0,0 @@ -FROM indiepaas/nginx-php - -# install owncloud -RUN echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/community/Debian_7.0/ /' >> /etc/apt/sources.list.d/owncloud.list && \ - curl -L http://download.opensuse.org/repositories/isv:ownCloud:community/Debian_7.0/Release.key | apt-key add - && \ - apt-get update && apt-get install -y \ - owncloud \ - php5-imap && \ - apt-get install -y --no-install-recommends \ - libreoffice && \ - rm -rf /var/lib/apt/lists/* && \ - php5enmod imap && \ - mv /var/www/owncloud/apps /owncloud-apps && \ - sed -i 's/^post_max_size =.*/post_max_size = 0/g' /etc/php5/fpm/php.ini && \ - sed -i 's/^upload_max_filesize =.*/upload_max_filesize = 25G/g' /etc/php5/fpm/php.ini && \ - sed -i 's/^max_file_uploads =.*/max_file_uploads = 100/g' /etc/php5/fpm/php.ini && \ - sed -i 's/# exec CMD/# exec CMD\n\/opt\/startup-owncloud.sh/g' /opt/entrypoint.sh - -# install nginx owncloud config -ADD nginx-owncloud.conf /etc/nginx/conf.d/nginx-owncloud.conf - -# add startup.sh -ADD startup-owncloud.sh /opt/startup-owncloud.sh -RUN chmod a+x /opt/startup-owncloud.sh - -# Expose environment variables -ENV DB_NAME owncloud -ENV DB_USER admin - diff --git a/dockerfiles/services/owncloud/nginx-owncloud.conf b/dockerfiles/services/owncloud/nginx-owncloud.conf deleted file mode 100644 index eab7b5c..0000000 --- a/dockerfiles/services/owncloud/nginx-owncloud.conf +++ /dev/null @@ -1,57 +0,0 @@ -server { - listen 80; - - root /var/www/owncloud; - index index.php index.html index.htm; - - client_max_body_size 0; # 0=unlimited - set max upload size - fastcgi_buffers 64 4K; - - rewrite ^/caldav(.*)$ /remote.php/caldav$1 redirect; - rewrite ^/carddav(.*)$ /remote.php/carddav$1 redirect; - rewrite ^/webdav(.*)$ /remote.php/webdav$1 redirect; - - index index.php; - error_page 403 /core/templates/403.php; - error_page 404 /core/templates/404.php; - - location = /robots.txt { - allow all; - log_not_found off; - access_log off; - } - - location ~ ^/(data|config|\.ht|db_structure\.xml|README) { - deny all; - } - - location / { - # The following 2 rules are only needed with webfinger - rewrite ^/.well-known/host-meta /public.php?service=host-meta last; - rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last; - - rewrite ^/.well-known/carddav /remote.php/carddav/ redirect; - rewrite ^/.well-known/caldav /remote.php/caldav/ redirect; - - rewrite ^(/core/doc/[^\/]+/)$ $1/index.html; - - try_files $uri $uri/ index.php; - } - - location ~ ^(.+?\.php)(/.*)?$ { - try_files $1 =404; - - include fastcgi_params; - fastcgi_param SCRIPT_FILENAME $document_root$1; - fastcgi_param PATH_INFO $2; - fastcgi_param HTTPS on; - fastcgi_pass unix:/var/run/php5-fpm.sock; - } - - # Optional: set long EXPIRES header on static assets - location ~* ^.+\.(jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ { - expires 30d; - # Optional: Don't log access to assets - access_log off; - } -} diff --git a/dockerfiles/services/owncloud/startup-owncloud.sh b/dockerfiles/services/owncloud/startup-owncloud.sh deleted file mode 100644 index 4f52210..0000000 --- a/dockerfiles/services/owncloud/startup-owncloud.sh +++ /dev/null @@ -1,114 +0,0 @@ -#!/bin/bash -eux -### -# Check Pre Install -### - -if [ -f /var/www/owncloud/config/config.php ] -then - echo ">> owncloud already configured - skipping initialization" - exit 0 -fi - -if [ ! -z ${OWNCLOUD_DO_NOT_INITIALIZE+x} ] -then - echo ">> OWNCLOUD_DO_NOT_INITIALIZE set - skipping initialization" - exit 0 -fi - -source /etc/environment - -### -# Variables -### - -if [ -z ${OWNCLOUD_IMAP_HOST+x} ] -then - OWNCLOUD_IMAP_HOST=mail -fi - -if [ -z ${DB_PORT+x} ] -then - DB_PORT=3306 -fi - -if [ -z ${DB_NAME+x} ] -then - DB_NAME=owncloud -fi - -if [ -z ${EMAIL+x} ] -then - EMAIL="admin" - echo ">> owncloud admin user: $EMAIL" -fi - -if [ -z ${ADMIN_PASSWORD+x} ] -then - ADMIN_PASSWORD=`perl -e 'my @chars = ("A".."Z", "a".."z"); my $string; $string .= $chars[rand @chars] for 1..10; print $string;'` - echo ">> generated owncloud admin password: $ADMIN_PASSWORD" -fi - -### -# Pre Install -### - -if [ ! -z ${OWNCLOUD_HSTS_HEADERS_ENABLE+x} ] -then - echo ">> HSTS Headers enabled" - sed -i 's/#add_header Strict-Transport-Security/add_header Strict-Transport-Security/g' /etc/nginx/conf.d/nginx-owncloud.conf - - if [ ! -z ${OWNCLOUD_HSTS_HEADERS_ENABLE_NO_SUBDOMAINS+x} ] - then - echo ">> HSTS Headers configured without includeSubdomains" - sed -i 's/; includeSubdomains//g' /etc/nginx/conf.d/nginx-owncloud.conf - fi -else - echo ">> HSTS Headers disabled" -fi - -### -# Headless initialization -### -echo ">> copy apps into apps folder." -cp -R /owncloud-apps/* /var/www/owncloud/apps/ - -echo ">>Setting Permissions:" -ocpath='/var/www/owncloud' -htuser='www-data' - -chown -R root:${htuser} ${ocpath}/ -chown -R ${htuser}:${htuser} ${ocpath}/apps/ -chown -R ${htuser}:${htuser} ${ocpath}/config/ -chown -R ${htuser}:${htuser} ${ocpath}/data/ - -echo ">> initialization" -echo ">> starting nginx to configure owncloud" -sleep 1 -nginx > /tmp/nginx.log 2> /tmp/nginx.log & -sleep 1 - -## Create OwnCloud Installation -echo ">> init owncloud installation" -DATA_DIR=/var/www/owncloud/data - -/opt/mysql-check.sh - -if [ -z ${DB_USER+x} ] || [ -z ${DB_PASS+x} ] -then - echo "We need user and password for database" - exit 1 -else - echo ">> using mysql DB" - DB_TYPE="mysql" - POST=`echo "install=true&adminlogin=$EMAIL&adminpass=$ADMIN_PASSWORD&adminpass-clone=$ADMIN_PASSWORD&directory=$DATA_DIR&dbtype=$DB_TYPE&dbuser=$DB_USER&dbpass=$DB_PASS&dbpass-clone=$DB_PASS&dbname=$DB_NAME&dbhost=$DB_HOST:$DB_PORT"` -fi - -echo ">> using curl to post data to owncloud" -echo "POST = $POST" -curl -d "$POST" http://${URL}/index.php - -echo ">> killing nginx - done with configuration" -sleep 1 -killall nginx -echo ">> finished initialization" - diff --git a/dockerfiles/services/piwik/Dockerfile b/dockerfiles/services/piwik/Dockerfile deleted file mode 100644 index 02b8830..0000000 --- a/dockerfiles/services/piwik/Dockerfile +++ /dev/null @@ -1,24 +0,0 @@ -FROM indiepaas/nginx-php - -RUN apt-get update && apt-get install -y \ - php5-gd \ - php5-geoip \ - php-apc && \ - rm -rf /var/lib/apt/lists/* && \ - curl "http://builds.piwik.org/piwik-latest.tar.gz" | tar xz && \ - mv /piwik/config /piwik-config && \ - sed -i 's/# exec CMD/# exec CMD\n\/opt\/startup-piwik.sh/g' /opt/entrypoint.sh - -# install nginx piwik config -ADD nginx-piwik.conf /etc/nginx/conf.d/nginx-piwik.conf - -# add startup.sh -ADD startup-piwik.sh /opt/startup-piwik.sh -RUN chmod a+x /opt/startup-piwik.sh - -# Expose environment variables -ENV DB_NAME piwik -ENV DB_USER admin - -VOLUME "/piwik/config/" - diff --git a/dockerfiles/services/piwik/nginx-piwik.conf b/dockerfiles/services/piwik/nginx-piwik.conf deleted file mode 100644 index 37aece9..0000000 --- a/dockerfiles/services/piwik/nginx-piwik.conf +++ /dev/null @@ -1,51 +0,0 @@ -server { - listen 80; - - root /usr/share/nginx/html; - index index.php index.html index.htm; - - location / { - try_files $uri $uri/ =404; - } - - error_page 404 /404.html; - error_page 500 502 503 504 /50x.html; - location = /50x.html { - root /usr/share/nginx/html; - } - - location ~ \.php$ { - try_files $uri =404; - fastcgi_split_path_info ^(.+\.php)(/.+)$; - fastcgi_pass unix:/var/run/php5-fpm.sock; - fastcgi_index index.php; - fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; - include fastcgi_params; - } -} - -server { - listen 80; - - root /usr/share/nginx/html; - index index.php index.html index.htm; - - location / { - try_files $uri $uri/ =404; - } - - error_page 404 /404.html; - error_page 500 502 503 504 /50x.html; - location = /50x.html { - root /usr/share/nginx/html; - } - - location ~ \.php$ { - try_files $uri =404; - fastcgi_split_path_info ^(.+\.php)(/.+)$; - fastcgi_pass unix:/var/run/php5-fpm.sock; - fastcgi_index index.php; - fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; - include fastcgi_params; - } -} diff --git a/dockerfiles/services/piwik/startup-piwik.sh b/dockerfiles/services/piwik/startup-piwik.sh deleted file mode 100644 index 4b5ba91..0000000 --- a/dockerfiles/services/piwik/startup-piwik.sh +++ /dev/null @@ -1,238 +0,0 @@ -#!/bin/bash -eux - -source /etc/environment - -echo ">> adding softlink from /piwik to /" -rm -rf /usr/share/nginx/html -ln -s /piwik /usr/share/nginx/html -mkdir /usr/share/nginx/html/tmp - -chown -R www-data:www-data /usr/share/nginx/html/ -chmod -R 755 /usr/share/nginx/html/tmp - -if [ -z ${DB_PASS+x} ] || [ -z ${DB_USER+x} ] -then - echo ">> piwik started, initial setup needs to be done in browser!" - echo ">> be fast! - anyone with access to your server can configure it!" - exit 0 -fi - -echo -echo ">> #####################" -echo ">> init piwik" -echo ">> #####################" -echo - -nginx 2> /tmp/nginx.log > /tmp/nginx.log & - -/opt/mysql-check.sh - -if [ `echo "SHOW TABLES FROM $DB_NAME;" | mysql -h $DB_HOST -P $DB_PORT -u $DB_USER -p$DB_PASS | grep "piwik_" | wc -l` -lt 1 ] -then - echo ">> no DB installed, MYSQL User or Password specified - seems like the first start" - - #cat /config.ini.php | sed "s/PIWIK_MYSQL_PORT/$DB_PORT/g" | sed "s/PIWIK_MYSQL_USER/$DB_USER/g" | sed "s/PIWIK_MYSQL_PASSWORD/$DB_PASS/g" | sed "s/PIWIK_MYSQL_DBNAME/$DB_NAME/g" > /piwik/config/config.ini.php - - cp -R /piwik-config/* /piwik/config/ - chown -R www-data:www-data /usr/share/nginx/html/ - - echo ">> init Piwik" - if [ -z ${EMAIL+x} ] - then - PIWIK_ADMIN="admin" - echo ">> piwik admin user: $EMAIL" - fi - - if [ -z ${PIWIK_ADMIN_PASSWORD+x} ] - then - PIWIK_ADMIN_PASSWORD=`perl -e 'my @chars = ("A".."Z", "a".."z"); my $string; $string .= $chars[rand @chars] for 1..10; print $string;'` - echo ">> generated piwik admin password: $PIWIK_ADMIN_PASSWORD" - fi - - if [ -z ${PIWIK_SUBSCRIBE_NEWSLETTER+x} ] - then - PIWIK_SUBSCRIBE_NEWSLETTER=0 - fi - - if [ -z ${PIWIK_SUBSCRIBE_PRO_NEWSLETTER+x} ] - then - PIWIK_SUBSCRIBE_PRO_NEWSLETTER=0 - fi - - if [ -z ${EMAIL+x} ] - then - EMAIL="no@no.tld" - PIWIK_SUBSCRIBE_NEWSLETTER=0 - PIWIK_SUBSCRIBE_PRO_NEWSLETTER=0 - fi - - if [ -z ${SITE_NAME+x} ] - then - SITE_NAME="My local Website" - fi - - if [ -z ${SITE_URL+x} ] - then - PRIMARY_DOMAIN=`echo $URL | cut -d. -f2,3` - SITE_URL="http://${PRIMARY_DOMAIN}" - fi - - if [ -z ${SITE_TIMEZONE+x} ] - then - SITE_TIMEZONE="Europe/Paris" - fi - - if [ -z ${SITE_ECOMMERCE+x} ] - then - SITE_ECOMMERCE=0 - fi - - if [ -z ${ANONYMISE_IP+x} ] - then - ANONYMISE_IP=1 - fi - - if [ -z ${DO_NOT_TRACK+x} ] - then - DO_NOT_TRACK=1 - fi - - echo ">> piwik wizard: #1 open installer" - - curl "http://${URL}/" \ - -H 'Accept-Encoding: gzip, deflate, sdch' -H 'Accept-Language: en-US,en;q=0.8,de;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Cache-Control: max-age=0' -H 'Cookie: pma_lang=en; pma_collation_connection=utf8_general_ci; pma_mcrypt_iv=n%2Bxpbn2a%2Btg%3D; pmaUser-1=L60fYDVIaz0%3D' -H 'Connection: keep-alive' --compressed \ - 2> /dev/null | grep " % Done" - - sleep 5 - - echo ">> piwik wizard: #2 open system check" - - curl "http://${URL}/index.php?action=systemCheck&trackerStatus=0" \ - -H 'Accept-Encoding: gzip, deflate, sdch' -H 'Accept-Language: en-US,en;q=0.8,de;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Referer: http://${URL}/' -H 'Cookie: pma_lang=en; pma_collation_connection=utf8_general_ci; pma_mcrypt_iv=n%2Bxpbn2a%2Btg%3D; pmaUser-1=L60fYDVIaz0%3D' -H 'Connection: keep-alive' --compressed \ - 2> /dev/null | grep " % Done" - - sleep 5 - - echo ">> piwik wizard: #3 open database settings" - - curl "http://${URL}/index.php?action=databaseSetup&trackerStatus=0" \ - -H 'Accept-Encoding: gzip, deflate, sdch' -H 'Accept-Language: en-US,en;q=0.8,de;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Referer: http://${URL}/index.php?action=systemCheck&trackerStatus=0' -H 'Cookie: pma_lang=en; pma_collation_connection=utf8_general_ci; pma_mcrypt_iv=n%2Bxpbn2a%2Btg%3D; pmaUser-1=L60fYDVIaz0%3D' -H 'Connection: keep-alive' --compressed \ - 2> /dev/null | grep " % Done" - - sleep 5 - - echo ">> piwik wizard: #4 store database settings" - - curl "http://${URL}/index.php?action=databaseSetup&trackerStatus=0" \ - -H 'Cookie: pma_lang=en; pma_collation_connection=utf8_general_ci; pma_mcrypt_iv=n%2Bxpbn2a%2Btg%3D; pmaUser-1=L60fYDVIaz0%3D' -H 'Origin: http://${URL}/' -H 'Accept-Encoding: gzip, deflate' -H 'Accept-Language: en-US,en;q=0.8,de;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' -H 'Content-Type: application/x-www-form-urlencoded' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Cache-Control: max-age=0' -H 'Referer: http://${URL}/index.php?action=databaseSetup&trackerStatus=0' -H 'Connection: keep-alive' --compressed \ - --data-urlencode host="$DB_HOST:$DB_PORT" \ - --data-urlencode username="$DB_USER" \ - --data-urlencode password="$DB_PASS" \ - --data-urlencode dbname="$DB_NAME" \ - --data-urlencode tables_prefix="piwik_" \ - --data 'adapter=PDO%5CMYSQL&submit=Next+%C2%BB' \ - 2> /dev/null - - curl "http://${URL}/index.php?action=tablesCreation&trackerStatus=0&module=Installation" \ - -H 'Accept-Encoding: gzip, deflate, sdch' -H 'Accept-Language: en-US,en;q=0.8,de;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Referer: http://${URL}/index.php?action=databaseSetup&trackerStatus=0' -H 'Cookie: pma_lang=en; pma_collation_connection=utf8_general_ci; pma_mcrypt_iv=n%2Bxpbn2a%2Btg%3D; pmaUser-1=L60fYDVIaz0%3D' -H 'Connection: keep-alive' -H 'Cache-Control: max-age=0' --compressed \ - 2> /dev/null | grep " % Done" - - sleep 5 - - echo ">> piwik wizard: #5 open piwik settings" - - curl "http://${URL}/index.php?action=setupSuperUser&trackerStatus=0&module=Installation" \ - -H 'Accept-Encoding: gzip, deflate, sdch' -H 'Accept-Language: en-US,en;q=0.8,de;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Referer: http://${URL}/index.php?action=tablesCreation&trackerStatus=0&module=Installation' -H 'Cookie: pma_lang=en; pma_collation_connection=utf8_general_ci; pma_mcrypt_iv=n%2Bxpbn2a%2Btg%3D; pmaUser-1=L60fYDVIaz0%3D' -H 'Connection: keep-alive' --compressed \ - 2> /dev/null | grep " % Done" - - sleep 5 - - echo ">> piwik wizard: #6 store piwik settings" - - curl "http://${URL}/index.php?action=setupSuperUser&trackerStatus=0&module=Installation" \ - -H 'Cookie: pma_lang=en; pma_collation_connection=utf8_general_ci; pma_mcrypt_iv=n%2Bxpbn2a%2Btg%3D; pmaUser-1=L60fYDVIaz0%3D' -H 'Origin: http://${URL}' -H 'Accept-Encoding: gzip, deflate' -H 'Accept-Language: en-US,en;q=0.8,de;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' -H 'Content-Type: application/x-www-form-urlencoded' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Cache-Control: max-age=0' -H 'Referer: http://${URL}/index.php?action=setupSuperUser&trackerStatus=0&module=Installation' -H 'Connection: keep-alive' --compressed \ - --data-urlencode login="$EMAIL" \ - --data-urlencode password="$PIWIK_ADMIN_PASSWORD" \ - --data-urlencode password_bis="$PIWIK_ADMIN_PASSWORD" \ - --data-urlencode email="$EMAIL" \ - --data-urlencode subscribe_newsletter_piwikorg="$PIWIK_SUBSCRIBE_NEWSLETTER" \ - --data-urlencode subscribe_newsletter_piwikpro="$PIWIK_SUBSCRIBE_PRO_NEWSLETTER" \ - --data 'submit=Next+%C2%BB' \ - 2> /dev/null - - curl "http://${URL}/index.php?action=firstWebsiteSetup&trackerStatus=0&module=Installation" \ - -H 'Accept-Encoding: gzip, deflate, sdch' -H 'Accept-Language: en-US,en;q=0.8,de;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Referer: http://${URL}/index.php?action=setupSuperUser&trackerStatus=0&module=Installation' -H 'Cookie: pma_lang=en; pma_collation_connection=utf8_general_ci; pma_mcrypt_iv=n%2Bxpbn2a%2Btg%3D; pmaUser-1=L60fYDVIaz0%3D' -H 'Connection: keep-alive' -H 'Cache-Control: max-age=0' --compressed \ - 2> /dev/null | grep " % Done" - - sleep 5 - - echo ">> piwik wizard: #7 store piwik site settings" - - curl "http://${URL}/index.php?action=firstWebsiteSetup&trackerStatus=0&module=Installation" \ - -H 'Cookie: pma_lang=en; pma_collation_connection=utf8_general_ci; pma_mcrypt_iv=n%2Bxpbn2a%2Btg%3D; pmaUser-1=L60fYDVIaz0%3D' -H 'Origin: http://${URL}' -H 'Accept-Encoding: gzip, deflate' -H 'Accept-Language: en-US,en;q=0.8,de;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' -H 'Content-Type: application/x-www-form-urlencoded' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Cache-Control: max-age=0' -H 'Referer: http://${URL}/index.php?action=firstWebsiteSetup&trackerStatus=0&module=Installation' -H 'Connection: keep-alive' --compressed \ - --data-urlencode siteName="$SITE_NAME" \ - --data-urlencode url="$SITE_URL" \ - --data-urlencode timezone="$SITE_TIMEZONE" \ - --data-urlencode ecommerce="$SITE_ECOMMERCE" \ - --data 'submit=Next+%C2%BB' \ - 2> /dev/null - - curl "http://${URL}/index.php?action=trackingCode&trackerStatus=0&module=Installation&site_idSite=1&site_name=default" \ - -H 'Accept-Encoding: gzip, deflate, sdch' -H 'Accept-Language: en-US,en;q=0.8,de;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Referer: http://${URL}/index.php?action=firstWebsiteSetup&trackerStatus=0&module=Installation' -H 'Cookie: pma_lang=en; pma_collation_connection=utf8_general_ci; pma_mcrypt_iv=n%2Bxpbn2a%2Btg%3D; pmaUser-1=L60fYDVIaz0%3D' -H 'Connection: keep-alive' -H 'Cache-Control: max-age=0' --compressed \ - 2> /dev/null | grep " % Done" - - sleep 5 - - echo ">> piwik wizard: #8 skip js page" - - curl "http://${URL}/index.php?action=finished&trackerStatus=0&module=Installation&site_idSite=1&site_name=default" \ - -H 'Accept-Encoding: gzip, deflate, sdch' -H 'Accept-Language: en-US,en;q=0.8,de;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Referer: http://${URL}/index.php?action=trackingCode&trackerStatus=0&module=Installation&site_idSite=1&site_name=justabot' -H 'Cookie: pma_lang=en; pma_collation_connection=utf8_general_ci; pma_mcrypt_iv=n%2Bxpbn2a%2Btg%3D; pmaUser-1=L60fYDVIaz0%3D' -H 'Connection: keep-alive' --compressed \ - 2> /dev/null | grep " % Done" - - sleep 5 - - echo ">> piwik wizard: #9 final settings" - - curl "http://${URL}/index.php?action=finished&trackerStatus=0&module=Installation&site_idSite=1&site_name=default" \ - -H 'Cookie: pma_lang=en; pma_collation_connection=utf8_general_ci; pma_mcrypt_iv=n%2Bxpbn2a%2Btg%3D; pmaUser-1=L60fYDVIaz0%3D' -H 'Origin: http://${URL}/' -H 'Accept-Encoding: gzip, deflate' -H 'Accept-Language: en-US,en;q=0.8,de;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' -H 'Content-Type: application/x-www-form-urlencoded' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Cache-Control: max-age=0' -H 'Referer: http://${URL}/index.php?action=finished&trackerStatus=0&module=Installation&site_idSite=1&site_name=justabot' -H 'Connection: keep-alive' --compressed \ - --data-urlencode do_not_track="$DO_NOT_TRACK" \ - --data-urlencode anonymise_ip="$ANONYMISE_IP" \ - --data 'submit=Continue+to+Piwik+%C2%BB' \ - 2> /dev/null - - curl "http://${URL}/index.php" \ - -H 'Accept-Encoding: gzip, deflate, sdch' -H 'Accept-Language: en-US,en;q=0.8,de;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Referer: http://${URL}/index.php?action=finished&trackerStatus=0&module=Installation&site_idSite=1&site_name=justabot' -H 'Cookie: pma_lang=en; pma_collation_connection=utf8_general_ci; pma_mcrypt_iv=n%2Bxpbn2a%2Btg%3D; pmaUser-1=L60fYDVIaz0%3D' -H 'Connection: keep-alive' -H 'Cache-Control: max-age=0' --compressed \ - 2> /dev/null - - sleep 5 - -fi - -echo ">> update CorePlugins" -curl "http://${URL}/index.php?updateCorePlugins=1" \ - 2> /dev/null - -sleep 2 - -killall nginx - -cat < don't forget to change the URLs ;) - - - - - -EOF - diff --git a/dockerfiles/services/wordpress/Dockerfile b/dockerfiles/services/wordpress/Dockerfile deleted file mode 100644 index a8acd0a..0000000 --- a/dockerfiles/services/wordpress/Dockerfile +++ /dev/null @@ -1,26 +0,0 @@ -FROM indiepaas/apache - -# Download latest version of Wordpress into /app -RUN curl -L https://wordpress.org/latest.tar.gz | tar xz && \ - mv wordpress/* app && \ - mv /app/wp-content /wp-content && \ - curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar && \ - chmod +x wp-cli.phar && \ - mv wp-cli.phar /usr/local/bin/wp -ADD wp-config.php /app/wp-config.php - -# Add script to create 'wordpress' DB -ADD run-wordpress.sh /run-wordpress.sh -RUN chmod 755 /run-wordpress.sh - -# Expose environment variables -ENV DB_HOST **LinkMe** -ENV DB_PORT **LinkMe** -ENV DB_NAME wordpress -ENV DB_USER admin -ENV DB_PASS **ChangeMe** - -EXPOSE 80 -VOLUME ["/app/wp-content", "/app/.htaccess"] -CMD ["/run-wordpress.sh"] - diff --git a/dockerfiles/services/wordpress/VOLUME b/dockerfiles/services/wordpress/VOLUME deleted file mode 100644 index 3e5ad76..0000000 --- a/dockerfiles/services/wordpress/VOLUME +++ /dev/null @@ -1 +0,0 @@ -/app/wp-content diff --git a/dockerfiles/services/wordpress/run-wordpress.sh b/dockerfiles/services/wordpress/run-wordpress.sh deleted file mode 100644 index 95e5785..0000000 --- a/dockerfiles/services/wordpress/run-wordpress.sh +++ /dev/null @@ -1,77 +0,0 @@ -#!/bin/bash - -if [ ! "$(ls -A /app/wp-content)" ]; then - cp -av /wp-content/* /app/wp-content/ -fi - -DB_HOST=${DB_PORT_3306_TCP_ADDR:-${DB_HOST}} -DB_HOST=${DB_1_PORT_3306_TCP_ADDR:-${DB_HOST}} -DB_PORT=${DB_PORT_3306_TCP_PORT:-${DB_PORT}} -DB_PORT=${DB_1_PORT_3306_TCP_PORT:-${DB_PORT}} - -if [ "$DB_PASS" = "**ChangeMe**" ] && [ -n "$DB_1_ENV_MYSQL_PASS" ]; then - DB_PASS="$DB_1_ENV_MYSQL_PASS" -fi - -echo "=> Trying to connect to MySQL/MariaDB using:" -echo "========================================================================" -echo " Database Host Address: $DB_HOST" -echo " Database Port number: $DB_PORT" -echo " Database Name: $DB_NAME" -echo " Database Username: $DB_USER" -echo " Database Password: $DB_PASS" -echo "========================================================================" - -for ((i=0;i<10;i++)) -do - DB_CONNECTABLE=$(mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e 'status' >/dev/null 2>&1; echo "$?") - if [[ DB_CONNECTABLE -eq 0 ]]; then - break - fi - sleep 5 -done - -if [[ $DB_CONNECTABLE -eq 0 ]]; then - DB_EXISTS=$(mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e "SHOW DATABASES LIKE '"$DB_NAME"';" 2>&1 |grep "$DB_NAME" > /dev/null ; echo "$?") - - if [[ DB_EXISTS -eq 1 ]]; then - echo "=> Creating database $DB_NAME" - RET=$(mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e "CREATE DATABASE $DB_NAME") - if [[ RET -ne 0 ]]; then - echo "Cannot create database for wordpress" - exit RET - fi - if [ -f /initial_db.sql ]; then - echo "=> Loading initial database data to $DB_NAME" - RET=$(mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT $DB_NAME < /initial_db.sql) - if [[ RET -ne 0 ]]; then - echo "Cannot load initial database data for wordpress" - exit RET - fi - fi - echo "=> Done!" - echo "=> Installation of Wordpress" - PASS=`openssl rand -base64 15` - cd /app - wp --allow-root core install --url=https://${URL} --title=${URL} --admin_user=${EMAIL} --admin_password=${PASS} --admin_email=${EMAIL} - wp --allow-root plugin install wordpress-https - wp --allow-root plugin activate wordpress-https - echo "=> Done!" - echo "=============================================" - echo "to connect ${EMAIL}:${PASS}" - echo "=============================================" - else - echo "=> Skipped creation of database $DB_NAME – it already exists." - fi -else - echo "Cannot connect to Mysql" - exit $DB_CONNECTABLE -fi - -chown -R root:www-data /app -chmod -R 650 /app -chmod -R 770 /app/wp-content/ -chmod -R 660 /app/.htaccess - -exec /run.sh - diff --git a/dockerfiles/services/wordpress/wp-config.php b/dockerfiles/services/wordpress/wp-config.php deleted file mode 100644 index 7382d5f..0000000 --- a/dockerfiles/services/wordpress/wp-config.php +++ /dev/null @@ -1,100 +0,0 @@ -g:EOH>e-ZXs!7x(: W4:}1A2$E?Sn9P>TW-[=:u[nc-eQzj5C1krtu:>2VT(WlI/Jl5T~Pov2-`r+Zb5s3i6&aIN$*/+k/~sLN'); -define('NONCE_KEY', '~; xvP`h^{Pl9zaD#/!f@M21BAk0#sKg>*P+=1LV+FY+;HNE)%Y`4(Xq|&})fCj^'); -define('AUTH_SALT', 'A2|G[jvSLB+z dy S/ S>(lLyzxDvJ8(ps1(F%~x]eRD`UHv(h*IDjye+SYV-a;O'); -define('SECURE_AUTH_SALT', '9cv/Hy~a;qr]4)i*udy-/$non@_:CU0SIdm-L[WH^k_}s:Jq[)HV,Wu8na<_;ef3'); -define('LOGGED_IN_SALT', '{d*4OCrk9x`|cb-4EBK7=ewJ3D]y%z,7mSEd:8?=eP![zD.O` Date: Thu, 23 Apr 2015 20:54:57 +0200 Subject: [PATCH 2/2] submodule dockerfiles from indiehosters/applications --- .gitmodules | 3 +++ dockerfiles | 1 + 2 files changed, 4 insertions(+) create mode 100644 .gitmodules create mode 160000 dockerfiles diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..67c4484 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "dockerfiles"] + path = dockerfiles + url = https://github.com/indiehosters/applications diff --git a/dockerfiles b/dockerfiles new file mode 160000 index 0000000..ac83df7 --- /dev/null +++ b/dockerfiles @@ -0,0 +1 @@ +Subproject commit ac83df7378515d6eab175a7d8e6e554798d83460 -- GitLab