Blog

Wie man einen Slackbot auf der Google Cloud Platform in weniger als 5 Minuten erstellt und einsetzt

Mark van Holsteijn

Aktualisiert Oktober 15, 2025
5 Minuten

In diesem Blog zeige ich Ihnen, wie Sie mit der Kopiervorlage in weniger als 5 Minuten einen Slackbot auf der Google Cloud Platform erstellen und einsetzen können. Einen Bot für Slack zu schreiben, ist nicht allzu schwierig. Mit ein paar Zeilen Code können Sie ein Programm erstellen, das auf Slack-Befehle und Erwähnungen reagiert. Aber das ist der einfache Teil: Sie müssen die Anwendung auch in Slack konfigurieren, sie bereitstellen, damit sie 7×24 verfügbar ist, Unit-Tests schreiben und CI/CD-Bereitstellungspipelines erstellen und vieles mehr. Diese Kopiervorlage hat alles!

  • erstellt er den Quellcode für Ihren Slackbot.
  • stellt es die Terraform-Vorlagen für die Infrastruktur, die Anwendung und die CI/CD-Pipeline bereit.
  • bietet es eine CI/CD-Pipeline mit Google CloudBuild zur Erstellung und Bereitstellung der Anwendung und der Infrastrukturänderungen.

Das bedeutet, dass Sie beginnen können, mit Ihrem Slackbot zu interagieren und die Implementierung iterativ zu verbessern, bis Sie den perfekten Bot haben.

einen Slackbot auf der Google Cloud Platform bereitstellen

Um Ihren Slackbot zu erstellen und einzusetzen, müssen Sie:

  1. das Quellverzeichnis erzeugen
  2. die Anwendung in Slack erstellen
  3. installieren Sie die Anwendung im Arbeitsbereich
  4. das Anwendungs-Token erhalten
  5. das Unterschriftsgeheimnis erhalten
  6. das OAuth-Token des Bot-Benutzers erhalten
  7. den Slackbot einsetzen
  8. die Token und Geheimnisse bereitstellen
  9. die CI/CD-Pipeline ausführen

In den folgenden Abschnitten werden die einzelnen Schritte ausführlich erläutert.

das Quellverzeichnis erzeugen

Nehmen wir an, Sie möchten einen Slackbot erstellen, der mit Dall-e Bilder erzeugt. Um das Quellverzeichnis zu erzeugen, geben Sie ein:

$ pip install copier
$ copier https://github.com/binxio/slackbot-on-google-cloud-platform-template.git /tmp/dali
> the human readable name of your slackbot
   Salvador Dali
> a short description of the Slackbot
   generates images on request
> the name of the package
   salvador_dali_slackbot
> the slackbot command prefix
   /dali
> Your full name?
   Mark van Holsteijn
> Your email address?
   mark.vanholsteijn@xebia.com
> the google project to deploy to
   speeltuin-mvanholsteijn
> primary region to deploy the slackbot to
   europe-west4
> the replica region for slackbot artifacts
   europe-west1
> the artifact repository location to deploy the image to
   europe
> name of the terraform state bucket
   speeltuin-mvanholsteijn-terraform-state

Jetzt liegt der Quellcode in /tmp/dali bereit. Der Inhalt dieses Verzeichnisses sieht wie folgt aus:

.
├── src                                     # bootstrap implementation
│   └── salvador_dali_slackbot
│       ├── __init__.py
│       ├── __main__.py
│       ├── bot.py
│       ├── google_secrets.py
│       └── manifest.yaml
├── tests                                   # skaffold tests for bot functions
│   ├── test_command_help.py
│   └── test_mention_help.py
├── terraform                               # deployment definitions
│   ├── pipeline.tf
│   ├── slackbot.tf
│   ├── user-data.yaml
│   ├── variables.tf
│   └── versions.tf
│   ├── providers.tf
├── cloudbuild                              # CI/CD pipeline definitions
│   ├── build.yaml
│   └── deploy.yaml
├── secrets 
├── Dockerfile
├── Makefile
├── Makefile.mk
├── Pipfile
├── pyproject.toml
├── setup.cfg
├── tox.ini

Wie Sie sehen, ist alles vorhanden, was Sie zum Erstellen, Verwalten und Bereitstellen eines Slackbots benötigen! Als nächstes müssen Sie die Anwendung in Slack erstellen.

Erstellen Sie die Anwendung in Slack

Um den Slackbot in Slack zu erstellen, können Sie das Anwendungsmanifest manifest.yaml verwenden, das Sie im generierten Quellverzeichnis finden. Kopieren Sie den Inhalt und gehen Sie zu api.slack.com/apps und klicken Sie auf "create app from manifest". slack neue App aus Manifest erstellen

Ihr nächster Schritt ist die Installation der Anwendung im Slack-Arbeitsbereich.

Installieren Sie die Anwendung im Arbeitsbereich

Nachdem Sie die Anwendung erstellt haben, können Sie sie in Ihrem Arbeitsbereich installieren. Das ist ganz einfach: Klicken Sie einfach auf die Schaltfläche und folgen Sie dem Ablauf.

Slack Anwendung installieren

Sobald die Anwendung installiert ist, müssen Sie das Anwendungstoken, das Signiergeheimnis und das Bot-Token erhalten.

Beschaffen Sie sich das Anwendungs-Token

Nachdem Sie die Anwendung installiert haben, scrollen Sie auf dem Bildschirm nach unten und generieren Sie ein Anwendungstoken mit dem Bereich connections:write. Slack App-Token generieren Kopieren Sie das generierte App-Token in die Datei secrets/app-token. App-Token generiert Dieses Token wird später in einem Google secret manager secret abgelegt. Zuerst müssen Sie das Signiergeheimnis und das Bot-Token erhalten.

Beschaffen Sie sich das Signiergeheimnis der Anwendung

Um das Signiergeheimnis der Anwendung zu erhalten, navigieren Sie zu den Basisinformationen der Anwendung und kopieren das Signiergeheimnis in die Datei secrets/signing-secret. Unterschriftsgeheimnis Dieses Geheimnis wird später in ein Geheimnis des Google-Geheimdienstmanagers eingefügt. Das Bot-Token ist das letzte Geheimnis, das wir erhalten müssen, bevor wir den Bot einsetzen können.

Erhalten Sie das OAuth-Token des Bot-Benutzers

Um das OAuth-Token des Bot-Benutzers zu erhalten, navigieren Sie zu OAuth und Berechtigungen und kopieren das Token in die Datei secrets/bot-token.Unterschriftsgeheimnis

Jetzt ist alles getan, um den Slackbot mit Terraform einzusetzen

den Slackbot einsetzen

Bevor wir den Slackbot auf Google Cloud Platform bereitstellen können, müssen Sie die verwendeten Dienste aktivieren und den Terraform-Speicher-Bucket erstellen. Typ:

$ make enable-services 
$ make state-bucket

Jetzt sind Sie bereit, Terraform seine Arbeit tun zu lassen. Typ:

$ cd terraform
$ terraform init
$ terraform apply

Damit haben Sie alles, was Sie brauchen, aber der Bot wird noch nicht laufen. Die Token und Geheimnisse müssen als Google-Geheimnisse verfügbar gemacht werden.

die Token und Geheimnisse bereitstellen

Um die Token und Geheimnisse des Slackbots in die entsprechenden Google-Geheimnisse einzusetzen, geben Sie ein:

$ make configure-secrets

die CI/CD-Pipeline ausführen

Stellen Sie nun Ihre Änderungen im Git-Repository bereit. Dadurch wird ein Build des Container-Images und eine Bereitstellung des neu erstellten Images mit Google CloudBuild ausgelöst.

$ git push

Überprüfen Sie die Google CloudBuild-Protokolle Sobald der Build und die Bereitstellung abgeschlossen sind, ist Ihr Bot einsatzbereit! Sie können nun mit Ihrem Bot chatten und mit der Entwicklung der Funktionen beginnen.

Fazit

Diese Kopiervorlage bietet alles, was Sie brauchen, um schnell einen Slackbot auf der Google Cloud Platform zu erstellen, bereitzustellen und zu warten. Wenn Sie Fragen, Probleme oder Feedback haben, können Sie mich gerne kontaktieren. Sie können auch direkt Themen auf Github hinzufügen


Foto von Stephen Phillips - Hostreviews.co.uk auf Unsplash

Verfasst von

Mark van Holsteijn

Mark van Holsteijn is a senior software systems architect at Xebia Cloud-native solutions. He is passionate about removing waste in the software delivery process and keeping things clear and simple.

Contact

Let’s discuss how we can support your journey.