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
相关推荐
dessler1 小时前
Hadoop HDFS-部署和基本操作
linux·运维·hdfs
奥格列的魔法拖鞋~1 小时前
Docker-LNMP架构 创建多项目- 单个ngixn代理多个PHP容器服务
nginx·docker·eureka·架构·php·lnmp
运维行者_2 小时前
使用Applications Manager进行 Apache Solr 监控
运维·网络·数据库·网络安全·云计算·apache·solr
rainsc2 小时前
Swap卡I/O导致D状态幽灵化处理思路
运维
一心0923 小时前
tomcat 定时重启
运维·tomcat·定时任务
₯㎕星空&繁华3 小时前
Linux-地址空间
linux·运维·服务器·经验分享·笔记
会说法语的猪4 小时前
使用nginx反向代理kkfile
运维·nginx
Mr_Xuhhh5 小时前
传输层协议TCP(3)
运维·服务器·网络·网络协议·tcp/ip·http·https
夜影风5 小时前
Nginx反向代理与缓存实现
运维·nginx·缓存
lsnm5 小时前
【LINUX网络】HTTP协议基本结构、搭建自己的HTTP简单服务器
linux·运维·服务器·c语言·网络·c++·http