-
Notifications
You must be signed in to change notification settings - Fork 1
/
Dockerfilephp7
111 lines (87 loc) · 3.25 KB
/
Dockerfilephp7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# -----------------------------------------------------------------------------
# zendtodocker
#
# Builds a basic container that runs ZendTo
# -----------------------------------------------------------------------------
# Base system is CentOS 7
FROM centos:centos7
MAINTAINER "ubellavance"
# Lets get the latest patches for CentOS
RUN yum clean all \
&& yum update -y
# Install Nagios prereq's and some common stuff (we will get the epel release for the nagios install).
RUN yum install -y \
centos-release-scl \
clamav \
clamav-server \
epel-release \
htop \
# httpd \
less \
mlocate \
# php \
# php-cli \
# php-mbstring\
# php-pdo\
# php-imap\
which \
vim \
yum-utils
# Install yum repos
RUN rpm -ivhf http://zend.to/files/zendto-repo.rpm
# Install ZendTo rpm
RUN yum -y install zendto \
rh-php71-php \
rh-php71-php-pdo \
rh-php71-php-mbstring
RUN yum clean all
# Configuration stage
# Define variables
ENV container=docker \
defaultEmailDomain="lubik.ca" \
language="fr_FR" \
serverRoot="zendto.lubik.ca" \
SMTPserver="relais.videotron.ca" \
SMTPport="25" \
SMTPsecure="true" \
SMTPusername="ugousername" \
SMTPpassword="ugopassword" \
clamdscan="DISABLED" \
ServiceTitle="ZendTo" \
OrganizationShortName="Lubik" \
OrganizationShortType="Organization" \
EmailSenderAddress="ZendTo <zendto@lubik.ca" \
EmailSubjectTag="[ZendTo] " \
TIMEZONE="EST"
# Zendto
# Based on the variables defined in this Dockerfile
RUN cp /opt/zendto/config/zendto.conf /root/
RUN cp /opt/zendto/config/preferences.php /root/
RUN sed -i s/"^OrganizationShortName = .*"/"OrganizationShortName = \"$OrganizationShortName\""/g /opt/zendto/config/zendto.conf
RUN sed -i s/"^OrganizationShortType = .*"/"OrganizationShortType = \"$OrganizationShortType\""/g /opt/zendto/config/zendto.conf
RUN /bin/sed -i s/"^ 'defaultEmailDomain' *=> '.*',"/" 'defaultEmailDomain' => '$defaultEmailDomain',"/g /opt/zendto/config/preferences.php
RUN sed -i s/"^ 'SMTPserver' *,=> '.*',"/" 'SMTPserver' => '$SMTPserver',"/g /opt/zendto/config/preferences.php
RUN sed -i s/"^ 'SMTPport' *=> [0-9]*,"/" 'SMTPport' => $SMTPport,"/g /opt/zendto/config/preferences.php
RUN sed -i s/"^ 'SMTPsecure' *=> .*,"/" 'SMTPsecure' => '$SMTPsecure',"/g /opt/zendto/config/preferences.php
RUN sed -i s/"^ 'SMTPusername' *=> .*,"/" 'SMTPusername' => '$SMTPusername',"/g /opt/zendto/config/preferences.php
RUN sed -i s/"^ 'SMTPpassword' *=> .*,"/" 'SMTPpassword' => '$SMTPpassword',"/g /opt/zendto/config/preferences.php
RUN sed -i s/"^ 'language' *=> .*,"/" 'language' => '$language',"/g /opt/zendto/config/preferences.php
# Disable captcha because it's a demo:
RUN sed -i s/"'captcha' => .*"/"'captcha' => 'disabled',"/g /opt/zendto/config/preferences.php
# httpd
RUN sed -i 's-/var/www/html-/opt/zendto/www-g' /etc/httpd/conf/httpd.conf
RUN sed -i 's-/var/www-/opt/zendto/www-g' /etc/httpd/conf/httpd.conf
# Enable httpd24 from SCL
RUN . /opt/rh/httpd24/enable
# Todo: Configure or disable virus scanning
# Open ports for http/https/ntp
# 80 is for http
EXPOSE 80
## Volumes
# Config files
VOLUME /opt/zendto/config
# Templates
VOLUME /opt/zendto/templates
# Data (includes uploads and SQLite DB, plus other stuff)
VOLUME /var/zendto
ENTRYPOINT ["/opt/rh/httpd24/root/usr/sbin/httpd"]