Docker应用部署tomcat和nginx

一、部署tomcat

1.拉取镜像

root@docker_dev mysql\]# docker pull tomcat

2.部署tomcat

root@docker_dev \~\]# rm -rf \\\~tomcat/ \[root@docker_dev \~\]# mkdir tomcat \[root@docker_dev \~\]# cd tomcat/ \[root@docker_dev tomcat\]# docker run -id --name=c_tomcat \\ \> -p 8080:8080 \\ \> -v $PWD:/user/local/tomcat/webapps \\ \> tomcat

3.验证

#tomcat 的默认 Web 应用根目录(webapps)是存放 Web 应用的地方

在webapps下面创建一个test目录(应用名字),在test下面创建一个html文件

root@docker_dev tomcat\]# docker exec -it c_tomcat /bin/bash #进入容器 root@b4432a89096e:/usr/local/tomcat/webapps/test# pwd /usr/local/tomcat/webapps/test root@b4432a89096e:/usr/local/tomcat/webapps/test# cat index.html \ hello tomcat docker \

二、部署nginx

1.拉取镜像

root@docker_dev mysql\]# docker pull nginx

2.部署nginx

root@docker_dev \~\]# mkdir nginx \[root@docker_dev \~\]# cd nginx/ \[root@docker_dev nginx\]# mkdir conf \[root@docker_dev nginx\]# vim nginx.conf #附件有nginx.conf内容参考 \[root@docker_dev nginx\]# mv nginx.conf conf/ \[root@docker_dev nginx\]# docker run -id --name=c_nginx \\ \> -p 80:80 \\ \> -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf \\ \> -v $PWD/logs:/var/log/nginx \\ \> -v $PWD/html:/usr/share/nginx/html \\ \> nginx

3.验证

#nginx 的默认 Web 应用根目录(html)是存放 Web 应用的地方

在html下面创建一个html文件

同tomcat一样测试即可

附录

root@docker_dev conf\]# cat nginx.conf # 运行用户(默认通常为 nobody,可根据实际情况修改) user nginx; # Nginx 进程数,通常设置为 CPU 核心数 worker_processes auto; # 错误日志路径及级别(debug/info/notice/warn/error/crit) error_log /var/log/nginx/error.log warn; # 进程 PID 文件 pid /var/run/nginx.pid; # 工作模式及连接数上限 events { # 每个 worker 进程的最大连接数 worker_connections 1024; # 支持多路复用 I/O 模型(Linux 推荐 epoll,FreeBSD 推荐 kqueue) use epoll; } # HTTP 核心配置 http { # 引入 MIME 类型定义(Nginx 内置) include /etc/nginx/mime.types; default_type application/octet-stream; # 日志格式定义(main 为自定义名称,可在虚拟主机中引用) log_format main '$remote_addr - $remote_user \[$time_local\] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; # 访问日志路径(引用上面定义的 main 格式) access_log /var/log/nginx/access.log main; # 开启高效文件传输模式 sendfile on; # 防止网络阻塞(配合 sendfile 使用) tcp_nopush on; # 减少网络报文数量 tcp_nodelay on; # 连接超时时间(秒) keepalive_timeout 65; # 开启 gzip 压缩(减少传输数据量) gzip on; # 压缩级别(1-9,级别越高压缩率越高,CPU 消耗越大) gzip_comp_level 2; # 压缩的文件类型 gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; # 引入虚拟主机配置(通常将每个站点配置放在 conf.d 目录下) include /etc/nginx/conf.d/\*.conf; # 默认虚拟主机(当未匹配到其他主机时使用) server { # 监听端口(HTTP 默认为 80) listen 80; # 服务器名称(可填写域名,多个域名用空格分隔) server_name localhost; # 字符集设置 charset utf-8; # 根目录(网站文件存放路径) root /usr/share/nginx/html; # 默认索引文件(优先级从左到右) index index.html index.htm index.php; # 访问根路径的处理 location / { # 尝试查找请求的文件,不存在则返回 404 try_files $uri $uri/ =404; } # 处理 404 错误(可自定义错误页面) error_page 404 /404.html; location = /404.html { root /usr/share/nginx/html; } # 处理 50x 系列错误(500/502/503/504) error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } } }

相关推荐
姚不倒1 小时前
负载均衡的概念、策略以及两个核心组件 Nginx 和 Kube-proxy 的对比。
运维·nginx·云原生·kubernetes
地瓜伯伯1 小时前
Nginx终极配置指南:负载均衡、限流、反向代理、IP白名单、SSL、云原生、DNS解析、缓存加速全都有
spring boot·nginx·spring·spring cloud·微服务·云原生·负载均衡
jingshaoqi_ccc7 小时前
ubuntu 24下面安装docker
ubuntu·docker·eureka
关关长语7 小时前
Vue本地部署包快速构建为Docker镜像
前端·vue.js·docker
锡兰_CC7 小时前
无缝触达,卓越体验:开启openEuler世界的任意门
服务器·网络·数据库·c++·图像处理·qt·nginx
wuxuanok7 小时前
ThinkPHP ——安装部署与配置
sql·mysql·nginx·php
自在极意功。8 小时前
手写Tomcat:深入理解Servlet容器工作原理
java·servlet·tomcat·socket
水滴与鱼8 小时前
DOCKER制作ROS运行的镜像文件
运维·docker·容器
Tan_Ying_Y9 小时前
Mybatis的mapper文件中#和$的区别
java·tomcat·mybatis
程序员果子11 小时前
零拷贝:程序性能加速的终极奥秘
linux·运维·nginx·macos·缓存·centos