bachelorthesis/Implementierung/Handbuch.md

1.8 KiB

Handbuch zur Ausführung der Implementierung

Vorraussetzungen/Abhängigkeiten

  • ein unix-artiges Betriebssystem
  • Docker Version 1.10.x (getestet mit 1.10.1)

Der Docker Daemon muss gestartet sein. Siehe Installations Guide.

Bauen der container

docker build -t hasufell/haraka alpine-haraka
docker build -t hasufell/haraka-gateway alpine-haraka-gateway
docker build -t hasufell/swaks alpine-swaks

Ausführung des Programms

Starten des Netzwerkes

Die Container werden in einem Docker Netzwerk zusammengefasst und können innerhalb dessen kommunizieren.

docker network create haraka

Der Name des Netzwerkes muss hier haraka lauten.

Starten der hops

Diese sollten jeweils in einem Terminal gestartet werden, um den Debug Output der Container beobachten zu können.

docker run -ti \
	--name=hop1 \
	--net=haraka \
	hasufell/haraka

docker run -ti \
	--name=hop2 \
	--net=haraka \
	hasufell/haraka

docker run -ti \
	--name=hop3 \
	--net=haraka \
	hasufell/haraka

docker run -ti \
	--name=rcpt \
	--net=haraka \
	hasufell/haraka

Starten des SMTP gateways

Dieser Server erstellt die initiale MystMail, wenn eine gewöhnliche E-Mail ankommt und sendet sie an hop1.

docker run -ti \
	--name=smtp-gateway \
	--net=haraka \
	hasufell/haraka-gateway

Absenden einer E-Mail

docker run -ti \
	--net=haraka \
	hasufell/swaks \
	swaks -t wurst@rcpt.haraka -f hasufell@smtp-gateway.com -s smtp-gateway.haraka -p 25

Beobachtung der Ergebnisse

Dies zeigt die MystMail an jedem Hop.

for i in hop1 hop2 hop3 rcpt ; do
	docker exec -ti ${i} cat /tmp/mail.eml
done

Cleanup

Falls die Container neu gestartet werden sollen.

for i in hop1 hop2 hop3 rcpt smtp-gateway ; do
	docker stop ${i}
	docker rm ${i}
done