在 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 服务器的全过程。保持你的环境干净整洁,安全高效,继续探索吧!

相关推荐
dnpao2 分钟前
linux onlyoffice服务向docker容器中添加中文字体
linux·运维·docker
AOwhisky26 分钟前
Linux防火墙管理指南
linux·运维·服务器
礼拜天没时间.27 分钟前
Linux 系统规范配置:建立标准目录结构、 repo 源获取、修改终端变色
linux·服务器·centos·repo·终端变色
白玉瑕38 分钟前
服务器存储基础
运维·服务器
Ephemeral Memories1 小时前
ubuntu安装软件失败以及运行闪退
linux·ubuntu
蚊子码农1 小时前
算法题解记录-208实现Trie前缀树
运维·服务器·算法
RisunJan1 小时前
Linux命令-iptables(配置防火墙规则的核心工具)
linux·运维·服务器
java_logo1 小时前
Dify 开源 LLM 应用开发平台企业级 Docker Compose 部署手册
docker·容器·开源·dify部署·dify部署文档·dify部署方案·dify部署教程
赵一舟2 小时前
linux下的磁盘清理
linux·运维·服务器
捷米研发三部2 小时前
EtherNet/IP转CAN协议转换网关实现罗克韦尔 PLC与压力传感器通讯在轮胎压力监测系统的应用案例
服务器·网络