Browse Source

Add initial Postfix Admin docs

J0WI 7 years ago
parent
commit
be39946abe

+ 1 - 0
postfixadmin/README-short.txt

@@ -0,0 +1 @@
+Postfix Admin - web based administration interface for Postfix mail servers.

+ 72 - 0
postfixadmin/content.md

@@ -0,0 +1,72 @@
+# What is Postfix Admin?
+
+Postfix Admin is a web based interface to configure and manage a Postfix based email server for many users. Features include support for virtual domains and aliases, quotas, and vacation/out-of-the-office messages. It requires PHP, Postfix and one of MySQL, PostgreSQL or SQLite.
+
+%%LOGO%%
+
+# How to use this image
+
+## No config.local.php / no existing setup
+
+If you do not have a config.local.php, then we fall back to look for environment variables to generate one.
+
+```console
+$ docker run -e POSTFIXADMIN_DB_TYPE=mysqli \
+           -e POSTFIXADMIN_DB_HOST=whatever \
+           -e POSTFIXADMIN_DB_USER=user \
+           -e POSTFIXADMIN_DB_PASSWORD=topsecret \
+           -e POSTFIXADMIN_DB_NAME=postfixadmin \
+           --name some-%%REPO%% \
+        %%IMAGE%%
+```
+
+`POSTFIXADMIN_DB_TYPE` can be one of :
+
+-	mysqli
+-	pgsql
+-	sqlite
+
+Note: An SQLite database is used as a fallback if you do not have a config.local.php and do not specify the above variables.
+
+You can also specify a `POSTFIXADMIN_SETUP_PASSWORD` environment variable.
+
+If you'd like to be able to access the instance from the host without the container's IP, standard port mappings can be used:
+
+```console
+$ docker run -e POSTFIXADMIN_DB_TYPE=mysqli \
+           -e POSTFIXADMIN_DB_HOST=whatever \
+           -e POSTFIXADMIN_DB_USER=user \
+           -e POSTFIXADMIN_DB_PASSWORD=topsecret \
+           -e POSTFIXADMIN_DB_NAME=postfixadmin \
+           --name some-%%REPO%% \
+           -p 8080:80
+        %%IMAGE%%
+```
+
+Then, access it via `http://localhost:8080` or `http://host-ip:8080` in a browser.
+
+## Existing config.local.php
+
+```console
+$ docker run --name some-%%REPO%% -p 8080:80 %%image%%
+```
+
+## Image Variants
+
+The following variants are currently provided:
+
+### apache
+
+This starts an Apache webserver with PHP, so you can use `postfixadmin` out of the box.
+
+### fpm-alpine
+
+This image has a very small footprint. It is based on Alpine Linux and starts only a PHP FPM process. Use this variant if you already have a seperate webserver. If you need more tools, that are not available on Alpine Linux, use the `fpm` image instead.
+
+### fpm
+
+This image starts only a PHP FPM container. Use this variant if you already have a seperate webserver.
+
+%%STACK%%
+
+Run docker stack deploy -c stack.yml %%REPO%% (or docker-compose -f stack.yml up), wait for it to initialize completely, and visit http://swarm-ip:8080, http://localhost:8080, or http://host-ip:8080 (as appropriate).

+ 1 - 0
postfixadmin/github-repo

@@ -0,0 +1 @@
+https://github.com/postfixadmin/docker

+ 1 - 0
postfixadmin/license.md

@@ -0,0 +1 @@
+View [license information](https://github.com/postfixadmin/postfixadmin/blob/master/LICENSE.TXT) for the software contained in this image.

BIN
postfixadmin/logo.png


+ 1 - 0
postfixadmin/maintainer.md

@@ -0,0 +1 @@
+[Postfix Admin](%%GITHUB-REPO%%)

+ 25 - 0
postfixadmin/stack.yml

@@ -0,0 +1,25 @@
+version: '3'
+
+services:
+  db:
+    image: mysql:5.7
+    restart: always
+    environment:
+      MYSQL_ROOT_PASSWORD: notSecureChangeMe
+      MYSQL_DATABASE: postfixadmin
+      MYSQL_USER: postfixadmin
+      MYSQL_PASSWORD: example
+
+  postfixadmin:
+    depends_on:
+      - db
+    image: postfixadmin
+    ports:
+      - 8000:80
+    restart: always
+    environment:
+      POSTFIXADMIN_DB_TYPE: mysqli
+      POSTFIXADMIN_DB_HOST: db
+      POSTFIXADMIN_DB_USER: postfixadmin
+      POSTFIXADMIN_DB_NAME: postfixadmin
+      POSTFIXADMIN_DB_PASSWORD: example