A screening tool to evaluate and compare chemicals in terms of sustainability.
1.7K
Das deutsche Umweltbundesamt stellt der Öffentlichkeit neben dem bereits länger verfügbaren „Leitfaden für nachhaltige Chemikalien“ die Webanwendung ChemSelect zur Seite.
Unternehmen können mit diesem Screening-Tool auf eine wenig aufwändige Art und Weise sowohl Stoffe als auch Gemische bezüglich ihrer Nachhaltigkeit bewerten und vergleichen. Neben Aspekten der Gefährlichkeit von Chemikalien werden Umweltwirkungen, wie die CO2-Emissionen betrachtet. Hierfür sind keine vertieften Kenntnisse der Chemikalienbewertung notwendig; allerdings wird ein Grundwissen über z.B. die Einstufung vorausgesetzt. ChemSelect ist eine gute Hilfestellung, um problematische Chemikalien zu erkennen und aus einer Reihe von Alternativen diejenigen auszuwählen, welche am nachhaltigsten sind.
ChemSelect wird einer breiten und internationalen Öffentlichkeit über das Internet frei zugänglich gemacht. Es werden die Sprachen deutsch, englisch, französisch, spanisch, portugiesisch, polnisch, estnisch, litauisch, lettisch und arabisch unterstützt.
ChemSelect gibt es nicht nur als Online-Applikation, sondern es kann auch als Docker-Image oder als Debian-Programmpaket heruntergeladen werden. Diese Möglichkeit kann für Unternehmen, die ihre Daten nicht im Internet gespeichert und verarbeitet wissen möchten, attraktiv sein. Wenn das Unternehmen eine geeignete IT-Umgebung hat, kann es ChemSelect auf seinem eigenen Server installieren.
Mit der Entwicklung der Software hat das UBA die Firma Ökopol GmbH beauftragt, die in Kooperation mit dem Ökoinstitut Freiburg und Frank Hintsch IT Consulting auftritt.
Das Image kann standalone benutzt werden. Es hat alle notwendigen Services an Bord, darunter die Datenbank MariaDB und Postfix, um Mails zu verschicken.
Das Tag latest zeigt auf die letzte stabile Version.
Das Image kann man einfach ausprobieren mit:
$ docker run -d -p 9443:443 ubadeu/chemselect:latest chemselect
Wenn man nun im Browser die Adresse https://mein_server:9443 eingibt, dann sollte man den Startbildschirm sehen können:
Mit dieser Minimalkonfiguration kann man das Tool interaktiv ausprobieren, aber es werden keine Daten dauerhaft gespeichert, denn die Datenbank ist noch nicht als Volume konfiguriert.
Ein Muster für eine vollständige Konfiguration zeigt diese Beispieldatei docker-compose.yml :
version: '3.8'
networks:
frontend1:
backend1:
services:
csProd:
image: ubadeu/chemselect:latest
ports:
- 9020:443
hostname: chemselect.sample.org
container_name: chemselect_prod
entrypoint: chemselect
volumes:
- /etc/apache2/ssl:/etc/apache2/ssl
- ./hooks/mariadb.cnf:/etc/mysql/mariadb.conf.d/90-chemselect.cnf:ro
- ./hooks/postfix.sh:/etc/chemselect/hooks/postfix.sh:ro
- ./docs/Privacy.html:/etc/chemselect/local/Privacy.html:ro
- ./docs/Imprint.html:/etc/chemselect/local/Imprint.html:ro
- idChemselect:/var/lib/chemselect
- dbChemselect:/var/lib/mysql
environment:
- TZ=Europe/Berlin
- REALHOST=https://chemselect.sample.org
- [email protected]
- CERTPEM=/etc/apache2/ssl/sample.org.pem
- CERTKEY=/etc/apache2/ssl/sample.org.key
networks:
- frontend1
- backend1
adminer:
image: adminer
ports:
- 9040:8080
networks:
- backend1
volumes:
idChemselect:
dbChemselect:
Eine Musterdatei ist im Container enthalten und kann mit
docker cp $CONTAINER:/etc/chemselect/docker/docker-compose.yml.template ./docker-compose.yml
geladen werden.
Die Datenbank ist Teil des chemselect Containers und so konfiguriert, dass sie Verbindungen nur von localhost annimmt. Mit diesem Hook kann man die Standard-Konfiguration ändern. Beispiel:
[mysqld]
bind-address = 0.0.0.0
So kann man adminer benutzen, um die Datenbank zu inspizieren.
Der Server entspricht dem container_name. Der Benutzer ist "chemselect". Das Passwort ist nur innerhalb des Containers bekannt. Es kann mit dem Script svcGetpw.sh angezeigt werden. Dieses Script ist im Container enthalten und kann mit
docker cp $CONTAINER:/etc/chemselect/docker/svcGetpw.sh .
geladen werden.
Alle Mail, die innerhalb des Containers anfällt, landet beim Postfix-Service des Containers. Dieser Service kann mit dem postfix.sh Hook konfiguriert werden. Eine Beispiel-Konfiguration ist im Container enthalten und kann mit
docker cp $CONTAINER:/etc/chemselect/docker/postfix.template ./postfix.sh
geladen werden.
So sieht das Template aus:
#!/usr/bin/env bash
#
# if postfix is not configured
[email protected]
pw='*******'
host=your.smtpserver.de
port=587
[email protected]
tfrom="Chemselect System"
if ! grep -q '^root:' /etc/aliases; then
echo "postmaster: root\nadministrator: root\nroot: $to" >/etc/aliases
echo "$host ${to}:${pw}" >/etc/postfix/sasl_passwd
chmod 400 /etc/postfix/sasl_passwd
echo "/.+/ $tfrom <${efrom}>" >/etc/postfix/sender_canonical_maps
echo "/From:.*/ REPLACE From: $tfrom <${efrom}>" >/etc/postfix/header_check
cat >/etc/postfix/main.cf.tmp <<!
smtp_sasl_security_options=noanonymous
smtp_sasl_auth_enable=yes
smtp_sasl_password_maps=hash:/etc/postfix/sasl_passwd
smtp_tls_security_level=encrypt
smtp_use_tls=yes
relayhost=${host}:${port}
smtp_tls_note_starttls_offer=yes
sender_canonical_classes=envelope_sender,header_sender
sender_canonical_maps=regexp:/etc/postfix/sender_canonical_maps
mynetworks=127.0.0.0/8
myorigin=\$myhostname
smtp_header_checks=regexp:/etc/postfix/header_check
smtpd_relay_restrictions=permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination
!
mv /etc/postfix/main.cf.tmp /etc/postfix/main.cf
postmap /etc/postfix/sasl_passwd
/usr/bin/newaliases
service postfix restart
fi
Sie können eine eigene Datenschutzerklärung anstelle der vorinstallierten Erklärung einsetzen. Ein Muster für diese Datei finden Sie im Container-Verzeichnis /usr/share/chemselect.
Sie können eine eigenes Impressum anstelle der vorinstallierten Erklärung einsetzen. Ein Muster für diese Datei finden Sie im Container-Verzeichnis /usr/share/chemselect.
Die ChemSelect Webapplikation wird über https betrieben und benötigt deshalb ein SSL-Zertifikat. Dieses Zertifikat ist nicht Bestandteil des Containers, sondern wird mit den Variablen CERTPEM und CERTKEY in den Container injiziert.
ChemSelect verschickt Emails mit Callback-Links. Die richtige Zieladresse versucht ChemSelect vom Hostnamen abzuleiten. Wenn dies nicht gelingt, z.B. weil der Host nur über einen speziellen Port erreichbar ist, kann die Variable REALHOST angegeben werden. Das Format ist SCHEME://HOST:PORT.
Innerhalb von ChemSelect gibt es einen oder mehrere Administratoren. Der erste der Administratoren, der auch andere Anwender zu Administratoren machen kann, wird mit dieser Vraiablen benannt.
Content type
Image
Digest
sha256:72c93243a…
Size
340 MB
Last updated
5 months ago
docker pull ubadeu/chemselect