docker部署web项目(docker部署tomcat优势)

本文目录
- docker部署tomcat优势
- supervisord部署多项目
- dockerweb项目更新快捷方式
- Docker 使用 tomcat镜像部署web网站无法访问
- 用eclipse开发web项目如何打包docker的tar部署给linux服务器
- docker在web开发中得使用流程是怎样的
- gitLab CI/CD docker自动部署vue前端项目
docker部署tomcat优势
部署 Web项目更方便。
Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。
supervisord部署多项目
注意:如果是用虚拟环境部署的话,建议在虚拟环境里面安装supervisor,如果是在系统环境,建议用系统环境的pip 或者 apt/yum来安装
安装celery
$ pip install celery
然后进入supervisord文件夹,创建celeryd_worker.conf文件并进行如下配置:
////
# 这个是进程的名字,随意起
command=celery -A bookstore worker -l info # 要运行的命令
directory=/home/fhx/git_test1/bookstore # 运行命令的目录
numprocs=1 #进程数
stdout_logfile=/var/log/supervisor/info.log # 设置info log的路径
stderr_logfile=/var/log/supervisor/err.log # 设置err log的路径
autostart=true #自动启动
autorestart=true #自动重启
startsecs=10 #启动延迟10s
stopwaitsecs = 600 #进程停止等待时间
priority=15 #优先级
安装flower
$ pip install flower
然后进入supervisord文件夹,创建supervisord_celery_flower.ini文件并进行如下配置:
////
command=flower -A celery_tasks.app --port=5555 --basic_auth=pyvip:qwe123 #账号密码
directory=/home/pyvip/DjCe_proj
environment=PATH="/home/pyvip/.virtualenvs/Cel_proj/bin"
stdout_logfile=/home/pyvip/DjCe_proj/logs/celery_flower_info.log
stderr_logfile=/home/pyvip/DjCe_proj/logs/celery_flower_err.log
autostart=true
autorestart=true
startsecs=10
stopwaitsecs=60
priority=996
1.使用supervisor管理web项目
安装web项目依赖包
$ pip install -r pages.txt
然后进入supervisord文件夹,创建supervisord_web_xxx.ini文件并进行如下配置:
////
command=python main.py runserver
directory=/home/pyvip/xxx
environment=PATH="/home/pyvip/.virtualenvs/Cel_proj/bin"
stdout_logfile=/var/log/web_xxx/info.log
stderr_logfile=/var/log/web_xxx/err.log
autostart=true
autorestart=true
startsecs=10
stopwaitsecs=60
priority=996
等等,grpc,当然不用这个,docker也是一种选则
dockerweb项目更新快捷方式
更新jar包,然后重启容器。
使用docker部署Javaweb项目时,需要制作jar包,上传jar包,制作新镜像,停止容器,.启动新的容器,这样的更新方式步骤是比较繁琐而且很浪费时间,一般只需要更新jar包然后进行重启容器就可以了。
docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化。
Docker 使用 tomcat镜像部署web网站无法访问
1.可能是DNS错误造成的,解决方法是在腾讯电脑管家的工具箱中选择“DNS优选”工具,可看到DNS的平均值,平均值越低说明DNS响应越快,选择最小的“启用”即可。
2.离路由器距离太远或穿墙太多,信号强度低,发生极小的波动,会导致瞬时断线重连。
3.路由器设定了IP地址限制或者MAC地址绑定等安全措施,请检查路由器是否设定了IP地址限制或MAC地址绑定。
4.把路由器回复出厂设置,然后重新配置的无线路由器。
5.如果检查以上设置均无问题,那么需要将无线网卡驱动重新安装。
6.如果仍然无效,建议备份重要资料将操作系统重新安装。
用eclipse开发web项目如何打包docker的tar部署给linux服务器
这个需要了解一下dockerfile的制作,制作自己的镜像,并不是直接使用工具之类的进行打包,需要编写构建。在dockerfile构建好之后,再编写docker-compose的yaml文件,前提还是得有自己的镜像仓库。
将自己做好的docker镜像push到私有镜像仓库(确保镜像是正确且可用的),在新的环境里,只需要搭建一下docker环境,直接使用docker-compose up docker-compose的yaml文件,即可直接搭建好你的项目。
再向上延伸一点的话,就可以了解了解K8S。
docker在web开发中得使用流程是怎样的
设想一个如下场景:
我们需要一个webapp,其功能是用户注册并将注册信息插入到数据库,环境为Ubuntu+Tomcat+Mysql,怎么做?
不使用Docker的话,我们通常会这样做,以Ubuntu为操作系统,然后安装Tomcat和MySQL,最后把app部署上就可以了。那么使用Docker会怎么做呢,在这个场景下,可以有两种方式:
1.仍然以Ubuntu为操作系统,然后构建一个安装有MySQL和Tomcat的Docker镜像,并把app部署到其中,最后启动Docker镜像就可以了。看起来好像和不使用Docker基本相同,甚至还要麻烦一些,是这样吗?别着急,继续往下看。
***隐藏网址***
gitLab CI/CD docker自动部署vue前端项目
查询了好多资料,都没有找到可以直接应用的,综合了好多,配置runner之后,前端项目里面需要在项目根目录配置三个文件:
1..gitlab-ci.yml 文件
stages:
- build
- deploy
# 设置缓存
cache:
paths:
- node_modules/
- dist/
# 安装依赖 before_script 会在每个 stages 执行之前运行
before_script:
- npm install
# 编译 这里对应上方 stages ,
build:
stage: build
script:# script 为要执行的命令,可以多条按顺序执行
- npm run build:prod
docker-deploy:
stage: deploy
# 执行Job内容
script:
# 通过Dockerfile生成pactera_pflife_ui镜像
- sudo docker build -t pactera_pflife_ui .
# 删除已经在运行的容器
- if ; then sudo docker rm -f pactera_pflife_ui;fi
# 通过镜像启动容器
- sudo docker run -d -p 8085:80 --name pactera_pflife_ui pactera_pflife_ui
tags:
# 执行Job的服务器
- pflife-web
only:
# 只有在master分支才会执行
- dev_xht
2.Dockerfile 文件
# 设置基础镜像
FROM nginx:latest
# 将dist文件中的内容复制到 /usr/share/nginx/html/ 这个目录下面
COPY dist/ /usr/share/nginx/html
# 用本地的 default.conf 配置来替换nginx镜像里的默认配置
COPY default.conf/etc/nginx/conf.d/default.conf
EXPOSE 80
CMD
3.default.conf文件
server {
listen 80;
server_name 39.100.9.6; # localhost修改为docker服务宿主机的ip
location / {
root /usr/share/nginx/html;
index index.html index.htm;
try_files $uri $uri/ /index.html =404;
}
location /api/{
***隐藏网址***
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
***隐藏网址***
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
总之,三个文件部署之后运行正常

更多文章:
sd卡要求格式化怎么办(sd卡提示需要格式化,怎么恢复数据)
2026年11月3日 20:00
电脑重启死循环进不去(电脑出现无限自动重启的死循环如何解决)
2026年11月3日 17:00
tif用什么打开(tif文件用什么打开Win10打开tif文件的详细步骤)
2026年11月3日 16:20
海外短视频跨境电商平台是真的吗(TikTok短视频带货到底值不值得做海外抖音赚钱靠谱吗)
2026年11月3日 15:40






