Source files of the container image volkerraschek/postfixadmin-fetchmail https://hub.docker.com/repository/docker/volkerraschek/postfixadmin-fetchmail
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Markus Pesch 76f05709ea
fix(ci): remove docker socket volume
3 weeks ago
.dev_env Initial Commit 12 months ago
.drone.yml fix(ci): remove docker socket volume 3 weeks ago
.editorconfig Initial Commit 12 months ago
.gitattributes Initial Commit 12 months ago
.gitignore Initial Commit 12 months ago
.markdownlint.yaml Initial Commit 12 months ago
Dockerfile chore(deps): update dependency docker.io/library/alpine to v3.16.1 4 weeks ago
LICENSE Initial Commit 12 months ago
Makefile fix: use podman instead of docker 3 weeks ago
README.md doc(README): image name 11 months ago
docker-compose.yml fix: getHostname error in docker-compose 1 month ago
fetchmail.pl fix: log to stdout 7 months ago
manifest.tmpl fix(ci): build armv7 and aarch64 images 7 months ago
renovate.json fix(ci): add package rules 7 months ago

README.md

PostfixAdmin's fetchmail

Build Status Docker Pulls

This project contains all sources to build the container image docker.io/volkerraschek/postfixadmin-fetchmail. The primary goal of the image is to fetch mails from external servers and forward them to on local running mail server.

The configuration file will be automatically generated based on information from a supported database backend of postfixadmin. The information are stored in the table fetchmail of the database scheme of PostfixAdmin.

Usage

Possible database types are my for MySQL and Pg for postgres. Make sure that the database and the SMTP server are accessible. Otherwise, adjust the enclosed docker-compose or docker command accordingly. Alternatively you can use docker-compose in addition to the docker commands.

PostgreSQL

$ docker run \
  --rm \
  --env DATABASE_TYPE: Pg \
  --env DATABASE_HOST: postgres \
  --env DATABASE_PORT: 5432 \
  --env DATABASE_NAME: postgres \
  --env DATABASE_USER: fetchmail \
  --env DATABASE_PASSWORD: MySecretPassword \
  --network host \
  volkerraschek/fetchmail:latest

MySQL

$ docker run \
  --rm \
  --env DATABASE_TYPE: my \
  --env DATABASE_HOST: root \
  --env DATABASE_PORT: 3306 \
  --env DATABASE_NAME: mysql \
  --env DATABASE_USER: fetchmail \
  --env DATABASE_PASSWORD: MySecretPassword \
  --network host \
  volkerraschek/fetchmail:latest

docker-compose

The repository contains a default docker-compose.yml file, which can be used to start the container. To set the environment variables you need a .env file. The .dev_env from this repository can be used for this. This must be located exclusively in the same directory as the docker-compose.yml file and must be renamed as .env.

version: "3"
services:
  fetchmail:
    image: volkerraschek/fetchmail:latest
    environment:
    - DATABASE_TYPE=${DATABASE_TYPE}
    - DATABASE_HOST=${DATABASE_HOST}
    - DATABASE_HOST=${DATABASE_PORT}
    - DATABASE_NAME=${DATABASE_NAME}
    - DATABASE_USER=${DATABASE_USER}
    - DATABASE_PASSWORD=${DATABASE_PASSWORD}
    network_mode: host

Environment variables

DATABASE_TYPE

Currently will be only postgres, mysql and mariadb supported. About the environment variable DATABASE_TYPE can the backend type defined. The value is required.

database type value
mysql/mariadb my
postgres Pg

DATABASE_USER

The environment variable DATABASE_USER is undefined and required. The value contains the database user which one fetchmail use to login.

DATABASE_PASSWORD

The environment variable DATABASE_PASSWORD is undefined and required. The value contains the password of the database user which one fetchmail use to login.

DATABASE_HOST

The environment variable DATABASE_HOST is undefined and required. The value contains the DNS name or IP address of the host, where the database is hosted.

DATABASE_PORT

The environment variable DATABASE_PORT is undefined and required. The value contains the port of the host, where the database is listen on.

DATABASE_NAME

The environment variable DATABASE_NAME is undefined and required. The value contains the name of the database against which should be logged in.