Nginx环境搭建以及Docker环境部署

目录

Nginx环境搭建

1.首先创建Nginx的目录并进入

2.下载Nginx的安装包

可以通过FTP工具上传离线环境包,也可通过wget命令在线获取安装包

没有wget命令的可通过yum命令安装

3.解压Nginx的压缩包

4.下载并安装Nginx所需的依赖库和包

安装方式一

[安装方式二 --- 也可以通过yum命令一键下载(推荐上面哪种方式)](#安装方式二 --- 也可以通过yum命令一键下载(推荐上面哪种方式))

执行完成后,然后ls查看目录文件,会看一大堆依赖

紧接着通过rpm命令依次将依赖包一个个构建,或者通过如下指令一键安装所有依赖包

5.进入解压后的nginx目录,然后执行Nginx的配置脚本,为后续的安装提前配置好环境

6.编译并安装Nginx

7.最后回到前面的/home/centos/nginx/目录,输入ls即可看见安装nginx完成后生成的文件

8.修改安装后生成的conf目录下的nginx.conf配置文件

9.制定配置文件并启动Nginx

10.开放80端口,并更新防火墙

11.在Windows/Mac的浏览器中,直接输入刚刚配置的IP地址访问Nginx

[存在问题 --- 无法访问nginx,并报错403 Forbidden](#存在问题 --- 无法访问nginx,并报错403 Forbidden)

[解决办法 --- 将nginx.config的user改为和启动用户一致](#解决办法 --- 将nginx.config的user改为和启动用户一致)

Docker环境部署

1.查看自己的内核版本

2.如果已安装过docker,先卸载已安装的docker

3.安装安装必要的一些系统工具

4.添加软件源信息

5.安装docker

6.启动docker

6.查看docker版本

7.查看是否配置成功

8.设置开机自启动

在docker中下载nginx镜像

下载镜像

运行容器


Nginx环境搭建

1.首先创建Nginx的目录并进入

vbnet 复制代码
mkdir /home/centos/nginx/
cd /home/centos/nginx/

2.下载Nginx的安装包

可以通过FTP工具上传离线环境包,也可通过wget命令在线获取安装包

vbnet 复制代码
wget https://nginx.org/download/nginx-1.21.6.tar.gz

没有wget命令的可通过yum命令安装

vbnet 复制代码
yum -y install wget

3.解压Nginx的压缩包

vbnet 复制代码
tar -xvzf nginx-1.21.6.tar.gz

4.下载并安装Nginx所需的依赖库和包

安装方式一

vbnet 复制代码
yum install --downloadonly --downloaddir=/home/centos/nginx/ gcc-c++
yum install --downloadonly --downloaddir=/home/centos/nginx/ pcre pcre-devel4
yum install --downloadonly --downloaddir=/home/centos/nginx/ zlib zlib-devel
yum install --downloadonly --downloaddir=/home/centos/nginx/ openssl openssl-devel

安装方式二 --- 也可以通过yum命令一键下载(推荐上面哪种方式)

vbnet 复制代码
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

执行完成后,然后ls查看目录文件,会看一大堆依赖

紧接着通过rpm命令依次将依赖包一个个构建,或者通过如下指令一键安装所有依赖包

vbnet 复制代码
rpm -ivh --nodeps *.rpm

5.进入解压后的nginx目录,然后执行Nginx的配置脚本,为后续的安装提前配置好环境

vbnet 复制代码
cd /home/centos/nginx/nginx-1.21.6/

./configure --prefix=/home/centos/nginx/

6.编译并安装Nginx

vbnet 复制代码
make && make install

7.最后回到前面的/home/centos/nginx/目录,输入ls即可看见安装nginx完成后生成的文件

8.修改安装后生成的conf目录下的nginx.conf配置文件

vbnet 复制代码
vi conf/nginx.conf
修改端口号:listen    80;
	修改IP地址:server_name  你当前机器的本地IP(线上配置域名);
复制代码

9.制定配置文件并启动Nginx

vbnet 复制代码
sbin/nginx -c conf/nginx.conf
ps aux | grep nginx

10.开放80端口,并更新防火墙

vbnet 复制代码
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone=public --list-ports

11.在Windows/Mac的浏览器中,直接输入刚刚配置的IP地址访问Nginx

存在问题 --- 无法访问nginx,并报错403 Forbidden

解决办法 --- 将nginx.config的user改为和启动用户一致

vbnet 复制代码
vim conf/nginx.conf
将用户修改为root

Docker环境部署

**基本要求:**Linux要求内核3.0以上、CentOS 需要是7版本的

1.查看自己的内核版本

vbnet 复制代码
uname -r

2.如果已安装过docker,先卸载已安装的docker

vbnet 复制代码
yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

此图为未安装的运行图

3.安装安装必要的一些系统工具

vbnet 复制代码
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

4.添加软件源信息

vbnet 复制代码
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
​
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo

​

5.安装docker

vbnet 复制代码
sudo yum makecache fast

sudo yum -y install docker-ce

6.启动docker

vbnet 复制代码
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

未报错,表示启动成功

6.查看docker版本

vbnet 复制代码
docker version 

7.查看是否配置成功

vbnet 复制代码
docker info

8.设置开机自启动

vbnet 复制代码
systemctl enable docker.service 

在docker中下载nginx镜像

下载镜像

vbnet 复制代码
docker pull nginx

运行容器

vbnet 复制代码
docker run --name nginx-cont -p 80:80 -d nginx
相关推荐
ping某8 小时前
为什么 Nginx 明明监听了 80,转发后端时却用了 4xxxx 端口?
后端·nginx
大树882 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠2 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质2 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工2 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智2 天前
ARP代理--工作原理
运维·网络·arp·arp代理
shushangyun_2 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
施努卡机器视觉2 天前
SNK施努卡侧滑门锁上滑轮总成自动化装配线,从零件到组件,全流程精密制造方案
运维·自动化·制造
AC赳赳老秦2 天前
用 OpenClaw 搭建服务器故障应急响应系统,自动处理 80% 常见运维故障
android·运维·服务器·python·rxjava·deepseek·openclaw
java_cj2 天前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes