Wenn Sie unter normalen Umständen die kompilierte Version des Kundendienstsystems verwenden, müssen Sie die Golang-Umgebung nicht konfigurieren und können sie direkt verwenden, indem Sie das gesamte Programmbereitstellungspaket auf dem Server ablegen. Daher ist die Verwendung von Docker nicht sehr praktisch und es wird nicht empfohlen, es in Docker bereitzustellen. Wenn das Unternehmen jedoch dringend eine Bereitstellung auf Docker verlangt, können Sie die folgenden Schritte ausführen.
Erstellen Sie ein Docker-Image
Im Programmverzeichnis des aktuellen Kompilierungspakets muss die Datei install.lock manuell erstellt werden, denn wenn keine solche Datei vorhanden ist, wird der Startbefehl direkt beendet.
Im Programmverzeichnis des aktuellen Kompilierungspakets muss die Autorisierungscodedatei enthalten sein. Wenn keine solche Datei vorhanden ist, kann die Dialogschnittstelle nach der Anmeldung im Hintergrund nicht aufgerufen werden.
Nachdem die beiden oben genannten Dateien erstellt wurden, können Sie auf die folgende Docker-Datei verweisen, um sie als Spiegel zu packen
FROM ubuntu:latest
RUN mkdir /app
# 将程序复制到容器中
COPY . /app
RUN chmod -R 777 /app
WORKDIR /app
# 开放 8085 端口
EXPOSE 8085
# 执行脚本
CMD ["./kefu", "server", "-p", "8085"]
Verpacken Sie das Bild, der Bildname ist kefu
docker build -t kefu .
Spiegel ausführen
docker run -v /www/docker/config:/app/config -p 8085:8085 kefu
Die Datenbankkonfigurationsdatei mysql.json und die IP-Bibliotheksdatei müssen im Verzeichnis /www/docker/config des Hostverzeichnisses erstellt werden
Die IP der Datenbank muss die IP des Host-Computers sein, nicht 127.0.0.1
Docker prüft den Containernamen. Überprüfen Sie das Gateway, um beispielsweise 172.18.0.1 zu sehen