

内容声明
本文仅用于技术分享和学习交流,内容不包含任何广告、推广、引流、付费课程或外链信息。所有示例和配置均为技术实践,欢迎参考和自定义。
本文将介绍基于 Debian 的系统上使用 Docker 和 Nginx 进行 Web 应用部署的过程。着重介绍了 Debian、Docker 和 Nginx 的安装和配置。
sudo apt update。sudo apt upgrade -y。sudo apt install docker.io测试安装结果:
docker --versionsudo apt install nginx -y1. 为 Web 应用创建一个新的 Nginx 配置文件。
sudo nano /etc/nginx/sites-available/app.conf2. 将以下内容添加到配置文件中,将 app.example.com 替换为域名,将 APP_CONTAINER_ADDRESS 替换为 Docker 容器的访问地址。
server {
listen 80;
server_name app.example.com;
location / {
proxy_pass http://APP_CONTAINER_ADDRESS:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}3. 创建软链接以启用站点。
sudo ln -s /etc/nginx/sites-available/app.conf /etc/nginx/sites-enabled/4. 测试 Nginx 配置。
sudo nginx -t5. 如果配置有效,请重新加载 Nginx。
sudo systemctl reload nginxdocker run -d --name app_container -p 8080:80 APP_IMAGE将 APP_IMAGE 替换为 Web 应用的 Docker 镜像名称。
Debian 系统上,可以使用 ufw (Uncomplicated Firewall) 来管理防火墙规则。要检查当前规则,运行:
sudo ufw status确保允许必要的端口 (例如,HTTP 和 HTTPS 分别需要 80 和 443 端口,以及后端服务所需的其他端口)。
如果需要打开特定端口,使用以下命令:
sudo ufw allow PORT_NUMBER/tcp将 PORT_NUMBER 替换为要打开的实际端口数字,例如:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcpapp。233.233.233.233。
app.example.com。app。233.233.233.233。现在,通过在 Nginx 配置文件中配置的域名访问 Web 应用了。
更新记录
本文首次编辑于 2023-06-25,最近更新于 2025-12-06。
版权声明
本文为原创文章,作者保留版权。转载请保留本文完整内容,并以超链接形式注明作者及原文出处。
作者: 除除
原文: http://blog.mazey.net/3629.html
(完)
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。