» Go:使用Socket.IO创建Web Chat App在线聊天应用 » 3. 部署 » 3.2 Docker Compose

Docker Compose

Docker Compose 是一个用于定义和运行多容器的 Docker 工具。它允许你使用 YAML 文件配置应用程序的服务、网络和卷,然后使用单个命令启动所有运行所需的容器,包括应用程序的依赖中间件和服务。

添加 compose/docker-compose.yml:

services:
  lr-webchat-go:
    build:
      context: ../
      dockerfile: Dockerfile
    ports:
      - 4000:4000
    environment:
      - PORT=4000
  lr-webchat-react:
    build:
      context: ../../lr_webchat
      dockerfile: Dockerfile
    ports:
      - 3000:3000
    depends_on:
      lr-webchat-go:
        condition: service_started

运行所有服务:

cd compose
docker compose up

你将看到如下内容:

[+] Running 2/2
 ✔ Container compose-lr-webchat-go-1     Created                                                                                                                                                                                   0.0s 
 ✔ Container compose-lr-webchat-react-1  Recreated                                                                                                                                                                                 0.1s 
Attaching to lr-webchat-go-1, lr-webchat-react-1
lr-webchat-go-1     | Chat server serving at localhost:4000...
lr-webchat-react-1  |  INFO  Accepting connections at http://localhost:3000
...

现在,如果你访问页面 http://localhost:3000/ ,你将看到聊天应用的完整UI。

你的 Web 聊天应用 Chat App 完成啦! 🌺