Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mailinabox
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
mailinabox
Commits
2bbb7a5e
Commit
2bbb7a5e
authored
Jun 04, 2014
by
Joshua Tauberer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
remove Docker stuff since it doesnt work
parent
a35fa124
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
0 additions
and
144 deletions
+0
-144
Dockerfile
Dockerfile
+0
-62
container_start.sh
containers/docker/container_start.sh
+0
-24
setup_services.sh
containers/docker/setup_services.sh
+0
-58
No files found.
Dockerfile
deleted
100644 → 0
View file @
a35fa124
# Mail-in-a-Box Dockerfile
# see https://www.docker.io
###########################
# To build the image:
# sudo docker.io build -t box .
# Run your container.
# -i -t: creates an interactive console so you can poke around (CTRL+D will terminate the container)
# -p ...: Maps container ports to host ports so that the host begins acting as a Mail-in-a-Box.
# sudo docker.io run -i -t -p 22 -p 25:25 -p 53:53/udp -p 443:443 -p 587:587 -p 993:993 box
###########################################
# We need a better starting image than docker's ubuntu image because that
# base image doesn't provide enough to run most Ubuntu services. See
# http://phusion.github.io/baseimage-docker/ for an explanation. They
# provide a better image, but their latest is for an earlier Ubuntu
# version. When they get to Ubuntu 14.04 we'll want to use:
#
# FROM phusion/baseimage:<version-based-on-14.04>
#
# Until then, use an upgraded image provided by @pjz, based on his
# PR: https://github.com/phusion/baseimage-docker/pull/64
FROM
pjzz/phusion-baseimage:0.9.10
# based originally on ubuntu:14.04
# Dockerfile metadata.
MAINTAINER
Joshua Tauberer (http://razor.occams.info)
EXPOSE
22 25 53 443 587 993
# We can't know these values ahead of time, so set them to something
# obviously local. The start.sh script will need to be run again once
# these values are known. We use the IP address here as a flag that
# the configuration is incomplete.
ENV
PUBLIC_HOSTNAME box.local
ENV
PUBLIC_IP 192.168.200.1
# Docker-specific Mail-in-a-Box configuration.
ENV
DISABLE_FIREWALL 1
ENV
NO_RESTART_SERVICES 1
# Our install will fail if SSH is installed and allows password-based authentication.
# The base image already installs openssh-server. Just edit its configuration.
RUN
sed
-i
-e
"s/^#*
\s
*PasswordAuthentication
\(
yes
\|
no
\)
/PasswordAuthentication no/g"
/etc/ssh/sshd_config
# Add this repo into the image so we have the configuration scripts.
ADD
setup /usr/local/mailinabox/setup
ADD
conf /usr/local/mailinabox/conf
ADD
tools /usr/local/mailinabox/tools
# Start the configuration.
RUN
cd
/usr/local/mailinabox
&&
setup/start.sh
# Configure services for docker.
ADD
containers/docker /usr/local/mailinabox/containers/docker
RUN
/usr/local/mailinabox/containers/docker/setup_services.sh
RUN
ln
-s
/usr/local/mailinabox/containers/docker/container_start.sh /etc/my_init.d/99-mailinabox.sh
# Start bash so we can poke around.
CMD
["/sbin/my_init", "--", "bash"]
containers/docker/container_start.sh
deleted
100755 → 0
View file @
a35fa124
#!/bin/bash
# The PUBLIC_HOSTNAME and PUBLIC_IP is not known at the time the docker
# image is built. On the first run of the container, re-run the start
# script with actual values. That will also ask the user for their first
# email user account.
if
grep
"^PUBLIC_IP=192.168.200.1"
/etc/mailinabox.conf
>
/dev/null
;
then
echo
"Configuring container on first run..."
# Get the public IP address of the host machine.
export
PUBLIC_IP
=
`
curl
-s
icanhazip.com
`
echo
Your IP address is
$PUBLIC_IP
.
# Get the reverse DNS of that IP address.
export
PUBLIC_HOSTNAME
=
`
host
$PUBLIC_IP
|
sed
-e
"s/.* //"
|
sed
-e
"s/
\.
$/
/"
`
echo
Your
hostname
is
$PUBLIC_HOSTNAME
.
# Start configuration again. Hide the terminal. The system services
# have not been started yet, so we can't ask the user to create an
# account yet.
cd
/usr/local/mailinabox
setup/start.sh < /dev/null
fi
containers/docker/setup_services.sh
deleted
100755 → 0
View file @
a35fa124
#!/bin/bash
echo
"Setting up Mail-in-a-Box services..."
SERVICES
=
"nsd postfix dovecot opendkim nginx php-fastcgi"
for
service
in
$SERVICES
;
do
mkdir
-p
/etc/service/
$service
done
cat
<<
EORUN
>/etc/service/nsd/run
#!/bin/sh
exec /usr/sbin/nsd -d
EORUN
cat
<<
EORUN
>/etc/service/postfix/run
#!/bin/sh
# from http://smarden.org/runit/runscripts.html#postfix
exec 1>&2
daemon_directory=/usr/lib/postfix
\
command_directory=/usr/sbin
\
config_directory=/etc/postfix
\
queue_directory=/var/spool/postfix
\
mail_owner=postfix
\
setgid_group=postdrop
\
/etc/postfix/postfix-script check || exit 1
exec /usr/lib/postfix/master
EORUN
cat
<<
EORUN
>/etc/service/dovecot/run
#!/bin/sh
exec dovecot -F
EORUN
cat
<<
EORUN
>/etc/service/opendkim/run
#!/bin/sh
exec opendkim -f -x /etc/opendkim.conf -u opendkim -P /var/run/opendkim/opendkim.pid
EORUN
echo
"daemon off;"
>>
/etc/nginx/nginx.conf
cat
<<
EORUN
>/etc/service/nginx/run
#!/bin/sh
exec nginx
EORUN
cat
<<
EORUN
>/etc/service/php-fastcgi/run
#!/bin/bash
export PHP_FCGI_CHILDREN=4 PHP_FCGI_MAX_REQUESTS=1000
exec /usr/bin/php-cgi -q -b /tmp/php-fastcgi.www-data.sock -c /etc/php5/cgi/php.ini
EORUN
for
service
in
$SERVICES
;
do
chmod
a+x /etc/service/
$service
/run
done
echo
"Your Mail-in-a-Box services are configured."
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment