Nginx环境搭建、docker安装

目录

1.Nginx安装

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

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

3)解压Nginx的压缩包

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

5)进入解压后的nginx目录,然后执行Nginx的配置脚本,为后续的安装提前配置好环境,默认位于/usr/local/nginx/目录下(可自定义目录)

 6)编译并安装Nginx

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

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

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

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

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

 2.docker安装

1)更新系统

2)安装所需的软件包以便使用存储库安装Docker

3)添加Docker存储库

4)安装Docker引擎

5)启动Docker服务并设置开机启动

6)添加当前用户到docker组,以便免去使用sudo运行Docker命令

7)配置Docker的镜像加速器以提高下载速度。编辑或创建 /etc/docker/daemon.json 文件并添加以下内容(如果文件不存在,就创建它) 

8)重新启动Docker服务以应用更改

9)测试 


1.Nginx安装

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

[root@lucky ~]# mkdir /soft && mkdir /soft/nginx/
[root@lucky ~]# cd /soft/nginx/
[root@lucky nginx]# 

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

[root@lucky nginx]# wget https://nginx.org/download/nginx-1.21.6.tar.gz
--2023-08-08 08:41:04--  https://nginx.org/download/nginx-1.21.6.tar.gz
正在解析主机 nginx.org (nginx.org)... 52.58.199.22, 3.125.197.172, 2a05:d014:edb:5704::6, ...
正在连接 nginx.org (nginx.org)|52.58.199.22|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:1073364 (1.0M) [application/octet-stream]
正在保存至: “nginx-1.21.6.tar.gz”

100%[=============================================================================================>] 1,073,364    771KB/s 用时 1.4s   

2023-08-08 08:41:09 (771 KB/s) - 已保存 “nginx-1.21.6.tar.gz” [1073364/1073364])

[root@lucky nginx]# 

3)解压Nginx的压缩包

[root@lucky nginx]# tar -xvzf nginx-1.21.6.tar.gz

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

[root@lucky ~]# yum install --downloadonly --downloaddir=/soft/nginx/ gcc-c++
[root@lucky ~]# yum install --downloadonly --downloaddir=/soft/nginx/ pcre pcre-devel4
[root@lucky ~]#  yum install --downloadonly --downloaddir=/soft/nginx/ zlib zlib-devel
[root@lucky ~]#  yum install --downloadonly --downloaddir=/soft/nginx/ openssl openssl-devel

或者使用下面这条命令(推荐)

yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

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

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

[root@lucky nginx]# rpm -ivh --nodeps *.rpm
准备中...                          ################################# [100%]
        软件包 zlib-1.2.7-21.el7_9.x86_64 已经安装
        软件包 openssl-libs-1:1.0.2k-26.el7_9.x86_64 已经安装
        软件包 krb5-libs-1.15.1-55.el7_9.x86_64 已经安装
        软件包 libkadm5-1.15.1-55.el7_9.x86_64 已经安装
        软件包 cpp-4.8.5-44.el7.x86_64 已经安装
        软件包 zlib-devel-1.2.7-21.el7_9.x86_64 已经安装
        软件包 pcre-devel-8.32-17.el7.x86_64 已经安装
        软件包 libverto-devel-0.2.5-4.el7.x86_64 已经安装
        软件包 libsepol-devel-2.5-10.el7.x86_64 已经安装
        软件包 libselinux-devel-2.5-15.el7.x86_64 已经安装
        软件包 libcom_err-devel-1.42.9-19.el7.x86_64 已经安装
        软件包 keyutils-libs-devel-1.5.8-3.el7.x86_64 已经安装
        软件包 krb5-devel-1.15.1-55.el7_9.x86_64 已经安装
        软件包 kernel-headers-3.10.0-1160.95.1.el7.x86_64 已经安装
        软件包 glibc-headers-2.17-326.el7_9.x86_64 已经安装
        软件包 glibc-devel-2.17-326.el7_9.x86_64 已经安装
        软件包 gcc-4.8.5-44.el7.x86_64 已经安装
        软件包 openssl-devel-1:1.0.2k-26.el7_9.x86_64 已经安装
        软件包 openssl-1:1.0.2k-26.el7_9.x86_64 已经安装
[root@lucky nginx]# 

5)进入解压后的nginx目录,然后执行Nginx的配置脚本,为后续的安装提前配置好环境,默认位于/usr/local/nginx/目录下(可自定义目录)

[root@lucky nginx]# cd nginx-1.21.6[root@localhost nginx-1.21.6]# ./configure --prefix=/home/ring04h/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module

 6)编译并安装Nginx

[root@localhost nginx]## make && make install
[root@localhost nginx]#yum install epel-release
[root@localhost nginx]#rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
[root@localhost nginx]#yum --enablerepo=remi install php56-php php56-php-devel php56-php-fpm php56-php-gd php56-php-xml php56-php-sockets php56-php-session php56-php-snmp php56-php-mysql
#运行并查看版本
php56 -v
#重启命令php-fpm
systemct1 restart php56-php-fpm
#添加自动启动
systemctl enab1e php56-php-fpm
#查看php7.4的安装路径
whereis php
#链接php文件
1n -s /opt/remi/php56 /root/usr/bin/php /usr/bin/php

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

[root@lucky nginx-1.21.6]# cd ..
[root@lucky nginx]# ls
conf
cpp-4.8.5-44.el7.x86_64.rpm
gcc-4.8.5-44.el7.x86_64.rpm
gcc-c++-4.8.5-44.el7.x86_64.rpm
glibc-devel-2.17-326.el7_9.x86_64.rpm
glibc-headers-2.17-326.el7_9.x86_64.rpm
html
kernel-headers-3.10.0-1160.95.1.el7.x86_64.rpm
keyutils-libs-devel-1.5.8-3.el7.x86_64.rpm
krb5-devel-1.15.1-55.el7_9.x86_64.rpm
krb5-libs-1.15.1-55.el7_9.x86_64.rpm
libcom_err-devel-1.42.9-19.el7.x86_64.rpm
libkadm5-1.15.1-55.el7_9.x86_64.rpm
libselinux-devel-2.5-15.el7.x86_64.rpm
libsepol-devel-2.5-10.el7.x86_64.rpm
libstdc++-devel-4.8.5-44.el7.x86_64.rpm
libverto-devel-0.2.5-4.el7.x86_64.rpm
logs
nginx-1.21.6
nginx-1.21.6.tar.gz
openssl-1.0.2k-26.el7_9.x86_64.rpm
openssl-devel-1.0.2k-26.el7_9.x86_64.rpm
openssl-libs-1.0.2k-26.el7_9.x86_64.rpm
pcre-devel-8.32-17.el7.x86_64.rpm
sbin
zlib-1.2.7-21.el7_9.x86_64.rpm
zlib-devel-1.2.7-21.el7_9.x86_64.rpm
[root@lucky nginx]# 

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

[root@lucky nginx]# vi conf/nginx.conf

 

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

[root@lucky nginx]# sbin/nginx -c conf/nginx.conf
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()
[root@lucky nginx]#  ps aux | grep nginx
root       5817  0.0  0.0 112824   984 pts/0    R+   09:01   0:00 grep --color=auto nginx
[root@lucky nginx]# 

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

[root@lucky nginx]# firewall-cmd --zone=public --add-port=80/tcp --permanent 
success
[root@lucky nginx]# firewall-cmd --reload 
success
[root@lucky nginx]# firewall-cmd --zone=public --list-ports
80/tcp

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

 

 

 

 2.docker安装

1)更新系统

[root@lucky ~]# yum update

2)安装所需的软件包以便使用存储库安装Docker

[root@lucky ~]# yum install -y yum-utils device-mapper-persistent-data lvm2 

3)添加Docker存储库

[root@lucky ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

4)安装Docker引擎

[root@lucky ~]# yum install docker-ce 

5)启动Docker服务并设置开机启动

[root@lucky ~]# systemctl start docker
[root@lucky ~]# systemctl enable docker 

6)添加当前用户到docker组,以便免去使用sudo运行Docker命令

[root@lucky ~]# usermod -aG docker $USER
 

7)配置Docker的镜像加速器以提高下载速度。编辑或创建 /etc/docker/daemon.json 文件并添加以下内容(如果文件不存在,就创建它) 

{
  "registry-mirrors": ["https://your-mirror-url"]
}

8)重新启动Docker服务以应用更改

[root@lucky ~]# systemctl restart docker 

9)测试 

[root@lucky ~]# docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
719385e32844: Pull complete 
Digest: sha256:926fac19d22aa2d60f1a276b66a20eb765fbeea2db5dbdaafeb456ad8ce81598
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/32762.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2023下半年软考改成机考,对考生有哪些影响?

软考改革成无纸化考试已经实锤。根据陕西软考办官网的消息,从2023年11月起,软考的所有科目都将改为机器考试形式。详情请参阅: 那么软考考试改为机考后,对我们会有哪些影响呢?我来简单概括一下。 1、复习的方法可以根…

ModaHub魔搭社区——Milvus 、Qdrant、Waeviate、Pinecone、ElasticSearch矢量数据库对比

资本市场上,2022年也是风起云涌的一年的,各大向量数据库公司纷纷完成了千万美元级别新一轮的融资。可以预见,2023年将会是向量数据库继续快速发展的一年,也会是这一新兴技术由发展走向成熟的一年。这里针对Milvus 、Qdrant、Waeviate、Pinecone、ElasticSearch这五个流行的…

Django 高级指南:深入理解和使用类视图和中间件

Django 是一款强大的 Python Web 框架,它提供了一套完整的解决方案,让我们能够用 Python 语言快速开发和部署复杂的 Web 应用。在本文中,我们将会深入研究 Django 中的两个高级特性:类视图(Class-Based Views&#xff…

vue + elementUI 实现下拉树形结构选择部门,支持多选,支持检索

vue elementUI 实现下拉树形结构选择部门&#xff0c;支持多选&#xff0c;支持检索 <template><div><el-select v-model"multiple?choosedValue:choosedValue[0]" element-loading-background"rgba(0,0,0,0.8)":disabled"disableFl…

git教程(第一次使用)

一、gitee和github区别 二、git使用 下载地址 windows&#xff1a;https://gitforwindows.org/ mac&#xff1a;http://sourceforge.net/projects/git-osx-installer/ 1.git初次运行前的配置 &#xff08;1&#xff09;配置用户信息 git config --global user.name "…

LTE和5G无线技术对比简介

LTE和5G是两种不同的无线通信技术&#xff0c;它们在速度、延迟、容量、覆盖范围和设备兼容性等方面存在差异。 LTE&#xff0c;即长期演进技术&#xff0c;是一种基于OFDMA的4G蜂窝网络标准&#xff0c;由3GPP组织制定并发布。它的主要目的是改进3G的空中接入技术&#xff0c;…

基于java冰雪旅游服务网设计与实现

摘 要 随着2022年北京冬奥会的成功举办&#xff0c;在冬天进行冰雪运动已经逐渐流行起来&#xff0c;人们慢慢享受到了冰雪活动给大家带来的欢乐&#xff0c;除此之外人们的身体素质也可以得到提升。虽然已经有一部分人可以接受并享受在冰雪中进行运动&#xff0c;但大不部分人…

python爬虫——爬虫伪装和反“反爬”

前言 爬虫伪装和反“反爬”是在爬虫领域中非常重要的话题。伪装可以让你的爬虫看起来更像普通的浏览器或者应用程序&#xff0c;从而减少被服务器封禁的风险&#xff1b;反“反爬”则是应对服务器加强的反爬虫机制。下面将详细介绍一些常见的伪装和反反爬技巧&#xff0c;并提…

4. PDO和SDO的概念和用途

文章四&#xff1a;CANopen PDO与SDO&#xff1a;高效数据传输与同步 最近开始学习CANOpen相关的知识&#xff0c;借助于AI助手工具&#xff0c;学习事半功倍。欢迎访问&#xff1a;http://airight.fun/。 本人学习canopen过程中珍藏了一下资料&#xff0c;分享出来与大家学习…

Go语言使用cron/v3实现定时任务

一、获取cron/v3包 go get github.com/robfig/cron/v3v3.0.0安装v3版本的cron包。 二、创建cron调度器 使用cron.New()创建一个新的Cron调度器: c : cron.New()三、添加定时任务 使用AddFunc方法添加定时任务,参数是cron表达式和任务函数: c.AddFunc("* * * * *&quo…

SaaS系统相比传统软件,为何数据更安全?

随着云计算、5G等技术的不断进步&#xff0c;SaaS行业步入了快速发展的阶段&#xff0c;应用场景也日趋多元化。预计2023年底&#xff0c;中国SaaS行业市场规模将达到555.1亿元。 中研网对于SaaS发展态势预测这样评价&#xff1a; 当前&#xff0c;我国在多个维度上具备发展 S…

RabbitMQ的安装-centos环境

1.定义 RabbitMQ是一个消息中间件:它接受并转发消息。你可以把它当做一个快递站点&#xff0c;当你要发送一个包裹时&#xff0c;你把你的包裹放到快递站&#xff0c;快递员最终会把你的快递送到收件人那里&#xff0c;按照这种逻辑RabbitMQ是一个快递站&#xff0c;一个快递员…

【力扣每日一题】2023.8.11 矩阵对角线元素的和

目录 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 代码&#xff1a; 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 题目给我们一个矩阵&#xff0c;让我们把矩阵对角线上的元素都加起来返回。 那么矩阵的对角线是有两条的&#xff0c;一条是从左上到右下…

python解决8皇后问题

def is_valid(queens, row, col):for i in range(row):if queens[i] == col or abs(queens[i] - col) == abs(i - row):return Falsereturn Truedef solve_n_queens(n, row, queens, result):if row == n:result.append(queens[:]) # 将当前解添加到结果中returnfor col in ra…

html 计算器界面

其他链接&#xff1a; https://www.freecodecamp.org/news/how-to-build-an-html-calculator-app-from-scratch-using-javascript-4454b8714b98/ https://codepen.io/pen/tour/welcome/start 下面展示一些 内联代码片。 <!DOCTYPE html> <html lang"en">…

npm常用命令

npm -v&#xff1a;查看 npm 版本 npm init&#xff1a;初始化后会出现一个 Package.json 配置文件&#xff0c;可以在后面加上 -y&#xff0c;快速跳到问答界面 npm install&#xff1a;会根据项目中的 package.json 文件自动给下载项目中所需的全部依赖 npm insall 包含 -…

linux4.0新增32位ARM的系统调用

修改内核源码 Linux系统为每一个系统调用赋予一个系统调用号。当应用程序执行一个系统调用时&#xff0c;应用程序就可以知道执行和调用到哪个系统调用了&#xff0c;从而不会造成混乱。系统调用号一旦分配之后就不会有任何变更&#xff0c;否则已经编译好的应用程序就不能运行…

Unity游戏源码分享-精品即时战略游戏_官网60美刀素材

Unity游戏源码分享-精品即时战略游戏_官网60美刀素材 下载地址&#xff1a;https://download.csdn.net/download/Highning0007/88204017

chrome V3 插件开发 基础

目录 准备popup通信popup 发消息给 backgroundpopup 发消息给 content长期连接 如何页面上添加一个按钮&#xff1f;tabs.onUpdatedcontent-script.jsinject.js 右键菜单chrome.contextMenus举个例子添加关于报错&#xff08;cannot create item with duplicate id XXX&#xf…

elementUi select下拉框触底加载异步分页数据

在Element UI中&#xff0c;可以通过监听select下拉框的visible-change事件来实现触底加载下一页的效果。 方式一&#xff1a;利用elementUi的事件 具体步骤如下&#xff1a; 首先&#xff0c;在select组件中设置&#xff1a;visible-change"handleVisibleChange"…