在 Ubuntu 下通过 Docker 部署 Nginx 服务器

Docker 和 Nginx 简介

Docker 是一个开源的容器化平台,能够让你以轻量级的方式打包、分发和运行应用。想象一下,你的应用就像一个快递包裹,Docker 确保它在任何地方都能完好无损地到达。它的隔离性和便携性让开发者们爱不释手。而 Nginx 则是一个高性能的 HTTP 服务器,广泛用于反向代理和负载均衡。它的高效性让它成为了现代 web 服务的宠儿。结合 Docker 和 Nginx,开发者可以快速搭建稳定的服务环境,简化部署流程,提升开发效率。

本次实验我将采用三丰云的免费服务器,配置为 1 核 CPU、1GB 内存和 5Mbps 带宽,对于此次的实验来说,能够满足需求。

在 Ubuntu 下通过 Docker 部署 Nginx 的详细步骤

步骤 1: 安装 Docker

确保你的 Ubuntu 系统是最新的。运行以下命令:

复制代码
sudo apt update
sudo apt upgrade

然后安装 Docker:

复制代码
sudo apt install docker.io

安装完成后,启动 Docker 并设置开机自启:

复制代码
sudo systemctl start docker
sudo systemctl enable docker

步骤 2: 拉取 Nginx 镜像

从 Docker Hub 拉取最新的 Nginx 镜像:

复制代码
sudo docker pull nginx

步骤 3: 创建 Nginx 配置文件

/etc/nginx/conf.d/ 目录下创建一个配置文件,命名为 default.conf

复制代码
sudo mkdir -p /etc/nginx/conf.d
sudo nano /etc/nginx/conf.d/default.conf

在文件中添加以下内容:

复制代码
server {
    listen 80;
    server_name localhost;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

    error_page 404 /404.html;
    location = /404.html {
        internal;
    }
}

步骤 4: 运行 Nginx 容器

使用以下命令启动 Nginx 容器:

复制代码
sudo docker run --name mynginx -v /etc/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf -p 80:80 -d nginx
参数说明:
  • --name mynginx: 指定容器名称为 mynginx
  • -v /etc/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf: 将本地配置文件挂载到容器内。
  • -p 80:80: 将主机的 80 端口映射到容器的 80 端口。
  • -d: 在后台运行容器。

步骤 5: 验证 Nginx 是否成功部署

在浏览器中输入你的服务器 IP 地址,应该能看到 Nginx 的欢迎页面。如果一切正常,恭喜你,Nginx 已成功部署在 Docker 容器中!

这就是在 Ubuntu 下通过 Docker 部署 Nginx 服务器的全过程。保持你的环境干净整洁,安全高效,继续探索吧!

相关推荐
唯独失去了从容2 小时前
WebRTC服务器Coturn服务器的管理平台功能
运维·服务器·webrtc
PassLink_6 小时前
[Kaggle]:使用Kaggle服务器训练YOLOv5模型 (白嫖服务器)
运维·服务器·yolo
朴拙数科6 小时前
MongoDB Atlas与MongoDB连接MCP服务器的区别解析
服务器·数据库·mongodb
leo·Thomas7 小时前
Rundeck 介绍及安装:自动化调度与执行工具
docker·自动化·运维工具·rundeck
程序猿(雷霆之王)7 小时前
Linux——进程间通信
linux·运维·服务器
技术liul8 小时前
Docker Compose和 Kubernetes(k8s)区别
docker·容器·kubernetes
NoneCoder9 小时前
HTML 模板技术与服务端渲染
服务器·servlet·html
李詹9 小时前
Steam游戏服务器攻防全景解读——如何构建游戏级抗DDoS防御体系?
服务器·游戏·ddos
你熬夜了吗?9 小时前
spring中使用netty-socketio部署到服务器(SSL、nginx转发)
服务器·websocket·spring·netty·ssl
joke_xiaoli10 小时前
tomcat Server 连接服务器 进展
java·服务器·tomcat