Docker 实战:情感分析系统-容器化部署全流程(sa-logic、sa-webapp、sa-frontend )

简介

本文将详细介绍情感分析系统的容器化部署全过程,涵盖从基础环境准备到各核心组件(sa-logic、sa-webapp、sa-frontend)的 Docker 镜像构建,再到通过 Docker Compose 实现多服务编排的完整流程。内容包含具体的操作命令、Dockerfile 配置细节、docker-compose.yaml 编排文件编写以及最终的系统访问验证,提供一套可直接参考的情感分析系统容器化部署实践方案

复制代码
 # 基础准备
软件包 Sentiment-Analyzer.tar.gz
 # 解压压缩包
 [root@master ~]# tar Sentiment-Analyzer.tar.gz 
 [root@master ~]# cd sentiment-analyzer
 ​
 # 配置yum源
 [root@master ]vi /etc/yum.repos.d/local.repo
 [sa]
 name=sa
 gpgcheck=0
 enabled=1
 baseurl=ftp://controller/sa-repo
 [root@master sentiment-analyzer]# cp /etc/yum.repos.d/sa.repo .
 ​
 # 完成后目录内所需文件
 [root@master sentiment-analyzer]# tree -L 2
 .
 ├── docker-compose.yaml
 ├── Dockerfile-frontend
 ├── Dockerfile-logic
 ├── Dockerfile-webapp
 ├── local.repo
 ├── sa-frontend
 │   └── sa-frontend.tar.gz
 ├── sa-logic
 │   ├── app.py
 │   ├── python-packages.tar.gz
 │   └── requirements.txt
 ├── sa-repo
 │   ├── packages
 │   └── repodata
 └── sa-webapp
     └── go-packages.tar.gz

1.容器化部署sa-logic

复制代码
 [root@master sentiment-analyzer]# cat Dockerfile-logic 
 FROM centos:centos7.5.1804
 RUN rm -rf /etc/yum.repos.d/*
 COPY sa.repo /etc/yum.repos.d/
 WORKDIR /root
 ADD sa-logic/* ./
 ENV VUE_APP_API_HOST=http://192.168.30.10:9001
 RUN yum install -y python3  && \
     pip3 install python-packages/*
 EXPOSE 5000
 CMD ["python3","app.py"]
 ​
 构建镜像:
 docker build -t sa-logic:v1.1 -f Dockerfile-logic .

2.容器化部署sa-webapp

复制代码
 [root@master sentiment-analyzer]# cat Dockerfile-webapp 
 ------------------------------------------
 FROM centos:centos7.5.1804
 RUN rm -rf /etc/yum.repos.d/*
 COPY sa.repo /etc/yum.repos.d/
 WORKDIR /root
 ADD sa-webapp/*.gz .
 RUN yum install -y golang && \
     go build -o webapp .
 EXPOSE 8080
 CMD ["/root/webapp"]
 构建镜像:
 docker build -t sa-webapp:v1.1 -f Dockerfile-webapp .

3.容器化部署sa-frontend

复制代码
 [root@master sentiment-analyzer]# cat Dockerfile-frontend 
 ​
 FROM centos:centos7.5.1804
 RUN rm -rf /etc/yum.repos.d/*
 COPY sa.repo /etc/yum.repos.d/
 WORKDIR /root
 ADD sa-frontend/*.gz .
 ENV VUE_APP_API_HOST=http://192.168.30.10:9002
 RUN yum install -y nginx nodejs
 RUN npm run build && \
     rm -rf /usr/share/nginx/html/* && \
     cp -rf dist/* /usr/share/nginx/html/
 EXPOSE 80
 CMD ["nginx","-g","daemon off;"]
 ---------------------------------------------------------------------
 docker build -t sa-frontend:v1.1 -f Dockerfile-frontend .

4.编排情感分析系统

复制代码
 [root@master sentiment-analyzer]# vi docker-compose.yaml 
 version: '3'
 services:
   sa-logic:
     image: sa-logic:v1.1
     container_name: sa-logic
     ports:
     - 9001:5000
   sa-webapp:
     image: sa-webapp:v1.1
     container_name: sa-webapp
     ports:
     - 9002:8080
     environment:
     - API_HOST=http://192.168.30.10:9001
   sa-frontend:
     image: sa-frontend:v1.1
     container_name: sa-frontend
     ports:
     - 9003:80
     
 [root@master sentiment-analyzer]# docker-compose up -d 
 [root@master sentiment-analyzer]# docker-compose ps 
    Name             Command          State           Ports         
 -------------------------------------------------------------------
 sa-frontend   nginx -g daemon off;   Up      0.0.0.0:9003->80/tcp  
 sa-logic      python3 app.py         Up      0.0.0.0:9001->5000/tcp
 sa-webapp     /root/webapp           Up      0.0.0.0:9002->8080/tcp
 # 使用浏览器访问http://$ip:9003
相关推荐
Lsetea4 小时前
OpenSSL报certificate is not yet valid:error 9与notBefore时间排查
linux·运维·https·ssl证书·openssl
魔法阵维护师4 小时前
Linux 命令行入门踩坑记录:从 VMware 装系统到文件管理
linux·运维·服务器
飞飞传输4 小时前
业务系统文件安全检测怎么做?生物医药企业选型与建设指南
大数据·运维·安全
姜鱼问生4 小时前
docker exec 排查容器问题:从日志到进程
运维·网络·数据库·docker·容器
qq_543447825 小时前
DNS解析怎么排查?故障处理与运维实用手册
运维·服务器·网络·php
DeviceHub5 小时前
AI服务器电源设计进阶:TLVR电感的应用解析与选型验证指南
运维·服务器·人工智能
Apipi*5 小时前
30天速通Linux 第七章进程间通信
linux·运维·服务器
迪康软件zz5 小时前
终端审批体系怎么搭?从模板配置到业务连续性
运维·安全·自动化运维
科技研学社5 小时前
中小服装工装厂自动化改造:产线节拍平衡与工位减负实施方案
运维·自动化
极光通讯5 小时前
服务器内存替代料选型方法论:主料号缺货时如何找到Pin-to-Pin兼容型号
运维·服务器