【Docker项目实战】使用Docker部署Seatsurfing预订座位系统

一、Seatsurfing介绍

1.1 Seatsurfing简介

  • Seatsurfing简介

Seatsurfing是一个在线预订座位系统,旨在帮助用户轻松预订座位并管理他们的座位安排。通过Seatsurfing,用户可以预订各种场所的座位,包括餐厅、影院、演出场所等。用户可以根据场所、日期和时间来浏览可用的座位,并根据自己的需求选择合适的座位。

1.2 Seatsurfing使用场景

  • 电影院预订座位:用户可以通过Seatsurfing预订座位系统选择电影和场次,并在座位图上选择自己喜欢的座位。系统会实时显示剩余座位数量和已被预订的座位,帮助用户快速选择并预订座位。

  • 餐厅预订座位:用户可以通过Seatsurfing预订座位系统选择餐厅和就餐时间,并在餐厅平面图上选择自己喜欢的座位。系统会实时显示剩余座位数量和已被预订的座位,帮助用户快速选择并预订座位。

  • 演唱会/音乐会预订座位:用户可以通过Seatsurfing预订座位系统选择演唱会或音乐会,并在座位图上选择自己喜欢的座位。系统会实时显示剩余座位数量和已被预订的座位,帮助用户快速选择并预订座位。

  • 会议/研讨会预订座位:用户可以通过Seatsurfing预订座位系统选择会议或研讨会,并在座位图上选择自己喜欢的座位。系统会实时显示剩余座位数量和已被预订的座位,帮助用户快速选择并预订座位。

  • 高铁/飞机预订座位:用户可以通过Seatsurfing预订座位系统选择高铁或飞机班次,并在座位图上选择自己喜欢的座位。系统会实时显示剩余座位数量和已被预订的座位,帮助用户快速选择并预订座位。

二、本地环境介绍

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为centos7.6。

hostname IP地址 操作系统版本 Docker版本
jeven 192.168.3.166 centos 7.6 2 20.10.17

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎; 2.在Docker环境下部署Seatsurfing预订座位系统。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

[root@jeven ~]# systemctl status docker ● docker.service - Docker Application Container Engine    Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)    Active: active (running) since Fri 2024-01-26 05:15:49 CST; 13h ago      Docs: https://docs.docker.com  Main PID: 8603 (dockerd)     Tasks: 15    Memory: 1.8G    CGroup: /system.slice/docker.service            └─8603 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock 

3.2 检查Docker版本

检查Docker版本,当前Docker版本为20.10.17。

[root@jeven ~]#  docker -v Docker version 20.10.17, build 100c701 

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

[root@jeven ~]# docker compose version Docker Compose version v2.6.0 

四、部署Seatsurfing应用

4.1 创建部署目录

创建CodeX Docs部署目录/data/seatsurfing

mkdir -p /data/seatsurfing  && cd /data/seatsurfing 

4.2 编辑docker-compose.yaml文件

本次实践部署使用docker compose方式,编辑docker-compose.yaml文件。

version: '3.7'  services:   server:     image: seatsurfing/backend     restart: always     networks:       sql:       http:     ports:       - 8080:8080     environment:       POSTGRES_URL: 'postgres://seatsurfing:DB_PASSWORD@db/seatsurfing?sslmode=disable'       JWT_SIGNING_KEY: 'some_random_string'       BOOKING_UI_BACKEND: 'booking-ui:3001'       ADMIN_UI_BACKEND: 'admin-ui:3000'   booking-ui:     image: seatsurfing/booking-ui     restart: always     networks:       http:   admin-ui:     image: seatsurfing/admin-ui     restart: always     networks:       http:   db:     image: postgres:12     restart: always     networks:       sql:     volumes:       - db:/var/lib/postgresql/data     environment:       POSTGRES_PASSWORD: DB_PASSWORD       POSTGRES_USER: seatsurfing       POSTGRES_DB: seatsurfing  volumes:   db:  networks:   sql:   http:     

4.3 拉取Seatsurfing所需镜像

执行以下命令,提前拉取Seatsurfing所需镜像。

docker compose pull 
【Docker项目实战】使用Docker部署Seatsurfing预订座位系统

4.4 创建Seatsurfing容器

使用docker-compose.yaml文件创建Seatsurfing容器

[root@jeven seatsurfing]# docker compose up -d [+] Running 7/7  ⠿ Network seatsurfing_http            Created                                                                                                  0.1s  ⠿ Network seatsurfing_sql             Created                                                                                                  0.1s  ⠿ Volume "seatsurfing_db"             Created                                                                                                  0.0s  ⠿ Container seatsurfing-booking-ui-1  Started                                                                                                  1.2s  ⠿ Container seatsurfing-admin-ui-1    Started                                                                                                  1.3s  ⠿ Container seatsurfing-db-1          Started                                                                                                  1.1s  ⠿ Container seatsurfing-server-1      Started                                                                                                  1.3s 

4.5 检查Seatsurfing容器状态

检查Seatsurfing容器状态,确保Seatsurfing容器正常启动。

[root@jeven seatsurfing]# docker compose ps NAME                       COMMAND                  SERVICE             STATUS              PORTS seatsurfing-admin-ui-1     "/nodejs/bin/node se…"   admin-ui            running             3000/tcp seatsurfing-booking-ui-1   "/nodejs/bin/node se…"   booking-ui          running             3001/tcp seatsurfing-db-1           "docker-entrypoint.s…"   db                  running             5432/tcp seatsurfing-server-1       "./main"                 server              running             0.0.0.0:8080->8080/tcp, :::8080->8080/tcp 

4.6 检查Seatsurfing容器日志

检查Seatsurfing容器运行日志,确保Seatsurfing服务正常运行。

[root@jeven seatsurfing]# docker compose logs |grep 8080 seatsurfing-server-1      | 2024/01/30 12:09:27 HTTP Server listening on 0.0.0.0:8080 

五、访问Seatsurfing首页

访问地址:http://192.168.3.166:8080,将IP替换为自己服务器IP地址,进入到Seatsurfing首页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。用户名admin@seatsurfing.local密码12345678

【Docker项目实战】使用Docker部署Seatsurfing预订座位系统

六、Seatsurfing的基本使用

6.1 确认预定房间

在预定空间的样板展示中,点击选中房间,确认预定。

【Docker项目实战】使用Docker部署Seatsurfing预订座位系统 【Docker项目实战】使用Docker部署Seatsurfing预订座位系统 【Docker项目实战】使用Docker部署Seatsurfing预订座位系统

6.2 查看预定情况

点击“My bookings”,查看我的预定情况。

【Docker项目实战】使用Docker部署Seatsurfing预订座位系统

6.3 偏好设置

点击偏好设置,可以对通知、工作时间、工作日、预定颜色、首选区域、更改密码等进行设置。

【Docker项目实战】使用Docker部署Seatsurfing预订座位系统

6.4 管理功能

进入Seatsurfing管理功能,可以对Seatsurfing进行相关管理设置工作。例如上传设计图、设置组织名称等。

【Docker项目实战】使用Docker部署Seatsurfing预订座位系统

七、总结

Seatsurfing是一个在线座位预订系统,方便用户预订机票、火车票和剧院票等各种座位。该系统提供简单快捷的预订流程,用户可以浏览、选择和预订座位。它还提供实时座位图,以便用户清晰地了解当前座位情况和可预订的座位类型。借助Seatsurfing,我可以根据自己的喜好选择最合适的座位。这个系统不仅简化了预订流程,还提供了实时座位信息,使我能轻松参加各种活动。我强烈推荐Seatsurfing给那些需要预订座位的人。


原文始发于微信公众号(运维江湖客):【Docker项目实战】使用Docker部署Seatsurfing预订座位系统

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/272711.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!