1、前言
注意:没有安装Docker请先安装Docker,在执行以下操作,具体路径根据自己习惯而定即可。
2、下载Tomcat+Nginx镜像
1、拉取镜像
#拉取tomcat镜像
docker pull tomcat
#拉取nginx镜像
docker pull nginx
查看镜像是否拉取成功。
3、部署Tomcat
1. 创建挂载目录
将tomcat容器中的webapps(项目)与logs(日志)目录与宿主机进行数据共享,方便项目部署。
#创建tomcat挂载目录
mkdir ~/tomcat/webapps/ROOT ~/tomcat/logs
2. 创建Tomcat容器
docker run -it -d -p 8080:8080 --name tomcat -v /usr/local/jaypdd/tomcat/webapps/:/usr/local/tomcat/webapps/ -v /usr/local/jaypdd/tomcat/logs:/usr/local/tomcat/logs tomcat
查看容器挂载是否成功
docker inspect tomcat
3. 启动tomcat
查看容器是否运行成功访问:http://服务器ip:8080
注意事项(可能出现的问题):
1. 访问失败,请检查防火墙是否关闭。
2. 如果启动tomcat访问出现404,那么请将/usr/local/tomcat/目录下的webapps.dist文件夹中的文件全部复制 到webapps目录下即可。
3、部署nginx
1. 配置nginx.conf
将nginx容器中的nginx.conf配置文件与宿主机进行数据共享,方便后续配置。
#创建nginx挂载目录
mkdir ~/nginx/conf
在/nginx/conf目录下创建nginx.conf配置文件写入以下内容:
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" "$upstream_addr"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://localhost:8080;
proxy_redirect off;
index index.html index.htm;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-Port $remote_port;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /static/ {
alias /usr/share/nginx/html/;
}
}
include /etc/nginx/conf.d/*.conf;
}
2. 创建nginx容器
docker run -d -p 80:80 --name nginx -v /usr/local/jaypdd/nginx/conf/nginx.conf:/etc/nginx/nginx.conf nginx
直接访问http://服务器ip,如果成功跳转到默认项目中说明容器启动成功。
基于Docker的Tomcat+nginx的web项目服务器搭建就给大家介绍到这里,如有不足欢迎讨论!