当前位置: 首页 > news >正文

在Linux虚拟机内配置nginx以及docker

目录

1、nginx源码包编译以及安装依赖

1、配置安装所需的编译环境

2、安装函数库(pcre、zlib、openssl)

2、安装nginx

1、获取源码包

2、解压编译

3、启动nginx服务

1、关闭防火墙

2、运行nginx

3、使用本地浏览器进行验证

3、安装docker

1、查看操作系统发行版本以及清空安装的旧版本

2、安装docker环境

3、安装docker

4、测试

4、在dockers上拉取nginx镜像挂载


1、nginx源码包编译以及安装依赖

1、配置安装所需的编译环境


[root@localhost /]# yum install -y gcc gcc-c++

2、安装函数库(pcre、zlib、openssl)


[root@localhost /]# yum install -y pcre pcre-devel  #安装pcre库[root@localhost /]# yum install -y zlib zlib-devel  #安装zlib库[root@localhost /]# yum install -y openssl-devel   #安装openssl库

2、安装nginx

1、获取源码包

[root@localhost /]# mkdir nginxfile
[root@localhost /]# cd nginxfile/[root@localhost nginxfile]# wget https://nginx.org/download/nginx-1.24.0.tar.gz   #下载nginx源码包

2、解压编译


[root@localhost nginxfile]# tar -zxvf nginx-1.24.0.tar.gz   #解压源码包#编译配置
[root@localhost nginxfile]# cd nginx-1.24.0/
[root@localhost nginx-1.24.0]# ./configure --with-http_ssl_module
[root@localhost nginx-1.24.0]# ./configure --with-stream
[root@localhost nginx-1.24.0]# ./configure[root@localhost nginx-1.24.0]# make && make install   #执行安装

3、启动nginx服务

1、关闭防火墙

[root@localhost sbin]# systemctl stop firewalld.service
[root@localhost sbin]# systemctl status firewalld.service

2、运行nginx

[root@localhost nginx-1.24.0]# cd /usr/local/nginx/sbin/
[root@localhost sbin]# ls
nginx[root@localhost sbin]# ./nginx    #执行nginx#查看nginx的进程开启情况
[root@localhost sbin]# ps -aux | grep nginx
root       72876  0.0  0.0  34444   384 ?        Ss   21:27   0:00 nginx: master process ./nginx
nobody     72877  0.0  0.2  66624  3932 ?        S    21:27   0:00 nginx: worker process
root       72887  0.0  0.0  12136  1120 pts/2    R+   21:28   0:00 grep --color=auto nginx

3、使用本地浏览器进行验证

3、安装docker

1、查看操作系统发行版本以及清空安装的旧版本

[root@localhost /]# uname -r
4.18.0-348.el8.x86_64#卸载旧的docker版本
[root@localhost /]# yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine

2、安装docker环境

#安装yum-utils
[root@localhost /]# yum install -y yum-utils#添加库
[root@localhost /]# yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo#安装makecache
[root@localhost /]# yum makecache 

3、安装docker

[root@localhost /]# yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

 安装时可能会报错,我们一般会这样去解决

#运行以下内容
[root@localhost /]# yum erase podman buildah#重新进行安装
[root@localhost /]# yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

随后启动docker

[root@localhost /]# systemctl start docker
[root@localhost /]# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset>   Active: active (running) since Wed 2023-08-09 00:51:52 CST; 9s ago

4、测试

[root@localhost /]# docker run hello-world
[rootelocalhost /]# docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
719385e32844: Pull complete
Digest: sha256:926fac19d22aa2d60f1a276b66a20eb765fbeea2db5dbdaafeb456ad8ce81598Status: Downloaded newer image for hello-world:latestHello from Docker!This message shows that your installation appears to be working correctlyTo 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

4、在dockers上拉取nginx镜像挂载

拉取镜像

[root@localhost /]# docker pull nginx#查看本地镜像[root@localhost /]# docker images
REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
nginx         latest    89da1fb6dcb9   11 days ago    187MB
hello-world   latest    9c7a54a9a43c   3 months ago   13.3kB

创建nginx服务以及挂载本地nginx配置文件

#创建运行一个nginx容器同时挂载本地文件[root@localhost ~]# docker run --name nginx-test -p 9090:80 -d -v /usr/local/nginx/conf:/usr/share/nginx/conf -v /usr/local/nginx/html:/usr/share/nginx/html -v /etc/nginx/conf.d:/usr/share/nginx/conf.d nginx
38e38f4ea4534594b8b8cdcebee6bee843debbf8a18c82904ea5ac7f63efc283[root@localhost conf]# docker ps
CONTAINER ID   IMAGE     COMMAND                  CREATED         STATUS         PORTS                                   NAMES
38e38f4ea453   nginx     "/docker-entrypoint.…"   4 minutes ago   Up 4 minutes   0.0.0.0:9090->80/tcp, :::9090->80/tcp   nginx-test

查看端口映射情况

http://www.lryc.cn/news/120795.html

相关文章:

  • 数据结构-带头双向循环链表的实现
  • android Ndk Jni动态注册方式以及静态注册
  • MySQL中的索引
  • idea中如何处理飘红提示
  • Elasticsearch使用中出现的错误
  • 【IMX6ULL驱动开发学习】01.编写第一个hello驱动+自动创建设备节点(不涉及硬件操作)
  • 决策规划仿真平台搭建
  • 计算图像哈希SHA-512
  • Android之消除APP图标的白色边框
  • java线程的优先级、守护线程的概念
  • asp.net core 6.0 efcore +sqlserver增删改查的demo
  • HC32L110B6芯片测试
  • 关于我乱删注册表导致电脑没有声音这件事
  • Linux 命令 su 和 sudo 的区别
  • 微信小程序:Mobx的使用指南
  • 【Spring Boot】Spring Boot项目的创建和文件配置
  • Spring Cloud 智慧工地源码(PC端+移动端)项目平台、监管平台、大数据平台
  • 通达OA SQL注入漏洞【CVE-2023-4165】
  • centos7 安装 docker 不能看菜鸟教程的 docker 安装,有坑
  • ♥ vue中$nextTick()
  • 小程序裂变怎么做?小程序裂变机制有哪些?
  • Openlayers实战:使几何图形适配窗口
  • 活动发布会邀请媒体6步走
  • W6100-EVB-PICO作为TCP Client 进行数据回环测试(五)
  • emqx-5.1.4开源版使用记录
  • Java 线程池的原理与实现
  • 【idea】点击idea启动没反应
  • C# Atrribute和反射的简单例子
  • ASP.NET Core - 缓存之分布式缓存
  • 代理模式(C++)