Docker安装Nginx(各种错误版)







Docker安装-CSDN博客

看过程就一点点看,看结果直接看最后

安装启动Docker之后

docker run -d -p 81:81 --name nginx nginx

这样没有指定版本

  • docker run:启动一个新的容器。
  • -d:以分离模式运行容器(后台运行)。
  • -p 81:81:将主机的 81 端口映射到容器的 81 端口。这意味着您可以通过访问主机的 81 端口来访问容器内的服务。
  • --name nginx:为容器指定一个名称,这里是 nginx
  • nginx:使用 nginx 镜像来创建容器。如果没有指定版本,将使用该镜像的最新版本。

安装指定版本的nginx

docker run -d -p 81:81 --name nginx nginx:1.21.0

下面以安装最新版  没有指定版本  会安装最新
 

列出所有容器,包括正在运行和停止的容器。

docker ps -a

docker images    查看已有的镜像

云服务器安全组开通81端口

访问:http:IP:81   发现无法访问

原因在于 nginx默认配置的是80端口  因此需要修改容器内部Nginx的配置文件

docker ps -a  或者docker ps

docker exec -it nginx /bin/bash        注意 -it 后面可以是  镜像id  也可以是容器名

cd /etc/nginx    可以看到nginx.conf配置文件在这里

发现要去编辑该文件   一些命令工具都没有装   很麻烦

apt-get update

apt-get install -y vim

vim /etc/nginx/nginx.conf    这里我配置错误  导致后面容器启动不起来 因为启动命令是81:81

exit   从容器内部退出来

停止容器nginx 并重新启动

用docker stop 容器名/容器id


重新启动

docker start 容器名或者id

由于上面配置文件错误  导致容器启动不起来

根本没有启动  所以进入不了

docker run -d -p 81:80 --name nginx nginx:1.21.0
重新下个镜像并启动

由于名字相同

docker rm 容器id   只写了前三位  只要可以和别的容器id正确区分就行

mkdir -p /usr/local/develop/docker/nginx

然后将一个全新的nginx.conf放进去

将配置文件挂在到本地的/usr/local/develop/docker/nginx/nginx.conf

docker run -d -p 81:81 --name nginx -v /usr/local/develop/docker/nginx/nginx.conf:/etc/nginx/nginx.conf nginx

重新运行  这样就不需要总进容器  

mkdir -p /usr/local/develop/docker/nginx/conf.d

mkdir -p /usr/local/develop/docker/nginx/html

html里放个index.html 自己随便建个

docker run -d -p 81:81 --name nginx -v /usr/local/develop/docker/nginx/nginx.conf:/etc/nginx/nginx.conf -v /usr/local/develop/docker/nginx/conf.d:/etc/nginx/conf.d -v /usr/local/develop/docker/nginx/html:/usr/share/nginx/html nginx

把日志文件也挂载

docker run -d -p 81:81 --name nginx \
    -v /usr/local/develop/docker/nginx/nginx.conf:/etc/nginx/nginx.conf \
    -v /usr/local/develop/docker/nginx/conf.d:/etc/nginx/conf.d \
    -v /usr/local/develop/docker/nginx/html:/usr/share/nginx/html \
    -v /usr/local/develop/docker/nginx/logs:/var/log/nginx \
    nginx
 

docker run -d -p 80:80 -p 443:443 --name nginx \ -v /usr/local/develop/docker/nginx/nginx.conf:/etc/nginx/nginx.conf \ -v /usr/local/develop/docker/nginx/conf.d:/etc/nginx/conf.d \ -v /usr/local/develop/docker/nginx/html:/usr/share/nginx/html \ -v /usr/local/develop/docker/nginx/logs:/var/log/nginx \ -v /usr/local/develop/docker/nginx/ssl:/etc/nginx/ssl \ nginx

docker ps和docker ps -a    docker images三个命令区别

docker ps  列出显示当前正在运行的容器

docker ps -a  列出所有容器,包括运行中、停止和退出的容器。

docker images 列出所有下载到本地主机的镜像。

docker rm 容器名/容器id 删除已经停止运行的容器

docker rm -f 容器名/容器id  即使在运行也删除

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

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

相关文章

【制作100个unity游戏之29】使用unity复刻经典游戏《愤怒的小鸟》(完结,附带项目源码)

最终效果 文章目录 最终效果前言素材下载简单搭建环境控制小鸟生成弹簧 限制小鸟的控制范围弹簧线的显示隐藏飞行新增木头木头销毁不同血量的木头状态配置更多物品爆炸效果创建敌人的小猪创建多个小鸟循环游戏结束相机跟随加分特效不同定义技能的鸟加速鸟回旋鸟爆炸鸟效果 轨迹…

【MySQL】服务器配置和管理

本文使用的MySQL版本是8.0 MySQL服务器介绍 MySQL服务器通常说的是mysqld程序。 mysqld 是 MySQL 数据库服务器的核心程序,负责处理客户端的请求、管理数据库和执行数据库操作。管理员可以通过配置文件和各种工具来管理和监控 mysqld 服务器的运行 官方文档&…

YOLOv10涨点改进SPPF创新结构,重新设计全局平均池化层和全局最大池化层,增强全局视角信息和不同尺度大小的特征

本文改进:SPPF_improve利用全局平均池化层和全局最大池化层,加入一些全局背景信息和边缘信息,从而获取全局视角信息并减轻不同尺度大小所带来的影响,强烈推荐,适合直接使用,paper创新级。 目录 1,YOLOv10介绍 1.1 C2fUIB介绍 1.2 PSA介绍 1.3 SCDown 2.SPP &SP…

Hvv--知攻善防应急响应靶机--Linux1

HW–应急响应靶机–Linux1 所有靶机均来自 知攻善防实验室 靶机整理: 夸克网盘:https://pan.quark.cn/s/4b6dffd0c51a#/list/share百度云盘:https://pan.baidu.com/s/1NnrS5asrS1Pw6LUbexewuA?pwdtxmy 官方WP:https://mp.weixin.…

工业自动化领域常见的通讯协议

工业自动化领域常见的通讯协议,包括PROFINET、PROFIBUS、Modbus、Ethernet/IP、CANopen、DeviceNet和BACnet。通过分析这些协议的技术特点、应用场景及优势,比较它们在工业自动化中的性能和适用性,帮助选择最合适的协议以优化系统性能和可靠性…

基于某评论的TF-IDF下的LDA主题模型分析

完整代码: import numpy as np import re import pandas as pd import jieba from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.decomposition import LatentDirichletAllocationdf1 pd.read_csv(小红书评论.csv) # 读取同目录下csv文件…

Java | Leetcode Java题解之第151题反转字符串中的单词

题目: 题解: class Solution {public String reverseWords(String s) {StringBuilder sb trimSpaces(s);// 翻转字符串reverse(sb, 0, sb.length() - 1);// 翻转每个单词reverseEachWord(sb);return sb.toString();}public StringBuilder trimSpaces(S…

HAL库开发--SPI的配置方式和读写操作

知不足而奋进 望远山而前行 目录 文章目录 前言 目标 内容 需求 SPI配置 SPI编码 OLED驱动拷贝 OLED的GPIO初始化修改 实现SPI的读写 总结 前言 SPI(Serial Peripheral Interface)是一种常见的串行通信协议,在嵌入式系统中被广泛…

记录一次root过程

设备: Redmi k40s 第一步, 解锁BL(会重置手机系统!!!所有数据都会没有!!!) 由于更新了澎湃OS系统, 解锁BL很麻烦, 需要社区5级以上还要答题。 但是,这个手机…

Java基础——网络编程(一)

初识网络编程 网络编程:在网络通信协议下,不同计算机上运行的程序,进行的数据传输 应用场景:即时通信、网游对战、金融证券、国际贸易、邮件…… BS架构的优缺点: 1、不需要开发客户端,只需要页面服务端 2、…

可视化大屏开发系列——页面布局

页面布局是可视化大屏的基础,想要拥有一个基本美观的大屏,就得考虑页面整体模块的宽高自适应,我们自然就会想到具有强大灵活性flex布局,再借助百分比布局来辅助。至此,大屏页面布局问题即可得到解决。 写在前面&#x…

Java高级技术探索:深入理解JVM内存分区与GC机制

文章目录 引言JVM内存分区概览垃圾回收机制(GC)GC算法基础常见垃圾回收器ParNew /Serial old 收集器运行示意图 优化实践结语 引言 Java作为一门广泛应用于企业级开发的编程语言,其背后的Java虚拟机(JVM)扮演着至关重…

机器人建模、运动学与动力学仿真分析(importrobot,loadrobot,smimport)

机器人建模、运动学与动力学仿真分析是机器人设计和开发过程中的关键步骤。 一、机器人建模 机器人建模是描述机器人物理结构和运动特性的过程。其中,URDF(Unified Robot Description Format)是一种常用的机器人模型描述方法。通过URDF&…

植物大战僵尸杂交版全新版v2.1解决全屏问题

文章目录 🚋一、植物大战僵尸杂交版❤️1. 游戏介绍💥2. 如何下载《植物大战僵尸杂交版》 🚀二、解决最新2.1版的全屏问题🌈三、画质增强以及减少闪退 🚋一、植物大战僵尸杂交版 《植物大战僵尸杂交版》是一款在原版《…

代码随想录-Day31

455. 分发饼干 假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。 对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都…

Vue32-挂载流程

一、init阶段 生命周期本质是函数。 1-1、beforeCreate函数 注意: 此时vue没有_data,即:data中的数据没有收到。 1-2、create函数 二、生成虚拟DOM阶段 注意: 因为没有template选项,所以,整个div root都…

第3章 Unity 3D着色器系统

3.1 从一个外观着色器程序谈起 新建名为basic_diffuse.shader的文件,被一个名为basic_diffuse.mat的材质文件所引用,而basic_diffuse.mat文件则被场景中名为Sphere的game object的MeshRenderer组件所使用。 basic_diffuse.shader代码文件的内容如下所示…

C# WPF入门学习主线篇(二十一)—— 静态资源和动态资源

C# WPF入门学习主线篇(二十一)—— 静态资源和动态资源 欢迎来到C# WPF入门学习系列的第二十一篇。在上一章中,我们介绍了WPF中的资源和样式。本篇文章将深入探讨静态资源(StaticResource)和动态资源(Dynam…

运算符分为哪几类?哪些运算符常用作判断?简述运算符的优先级

运算符包含6大类:算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算符、三元(目)运算符。 逻辑运算符常用作布尔判断 typeof 运算符: typeof 运算符用于确定变量或表达式的数据类型,并返回一个表示类型的字符串。 typeof …

Fegin如何传参form-data文件

Form-data传输file参数,这个大家都比较清楚,那么针对于Fegin参数file参数该如何操作呢!下面截图来找到对应的参数关系。 一、之前我们在postMan中是这种传参的,那么如果使用Feigin来传输文件File 二、在Fegin中传form-data参数&a…