深入Docker5:安装nginx部署完整项目

目录

准备

为什么要使用nginx

mysql容器构建

1.删除容器

2.创建文件夹

3.上传配置文件

4.命令构建mysql容器

5.进入mysql容器,授予root所有权限

6.在mysql中用命令运行sql文件

7.创建指定数据库shop

8.执行指定的sql文件

nginx安装与部署

        1.拉取镜像

2.创建并运行nginx容器

3.新建Nginx目录及配置目录

4.进入目录 上传文件

5. 进入nginx,创建并配置容器

本机域名映射,修改windows文件


准备


为什么要使用nginx

nginx 是特定的前端服务器  由它转发给其它容器 作用类似与网关

  •     反向代理,负载均衡(规则:轮询,权重)
  •     动静分离

mysql容器构建


1.删除容器

 docker rm -f $(docker ps -aq)

2.创建文件夹

mkdir -p mysql/{conf,data}

3.上传配置文件

进入conf文件夹,将配置文件上传到conf文件夹(数据库配置文件已放到置顶资源中)

 4.命令构建mysql容器

docker run \
--name m1 \
-v /soft/mysql/conf/my.cnf:/etc/my.cnf \
-v /soft/mysql/data:/var/lib/mysql \
--privileged=true \
-e MYSQL_ROOT_PASSWORD=123456 \
--net mynet \
-d mysql/mysql-server:5.7

/soft/mysql/conf/my.cnf:/etc/my.cnf目录为我们配置绑定的目录

/soft/mysql/data:/var/lib/mysql 是将data目录与MySQL目录进行绑定

 5.进入mysql容器,授予root所有权限

docker exec -it m1 bashmysql -u -root -p#授予所有权限
grant all on *.* to root@'%' identified by '123456';

6.在mysql中用命令运行sql文件

首先将准备好的SQL文件放到之前创建好的../mysql/data目录下

然后登录进入到当前Mysql中

在前面我们构建镜像时有一个将data目录与MySQL配置文件目录进行绑定

-v /soft/mysql/data:/var/lib/mysql

 7.创建指定数据库shop

create database shop
use shop

 8.执行指定的sql文件

source /var/lib/mysql/book.sql

nginx安装与部署


1.拉取镜像

docker pull nginx

2.创建并运行nginx容器

docker rm -f n1docker run -itd -p 80:80 --name  n1 nginx

 我们使用ip访问一下,如果出现Welcome to nginx! 说明nginx安装成功

上面的创建是最基础的创建Nginx容器,在后期我们还需要对Nginx进行配置,目录挂载等等

 3.新建Nginx目录及配置目录

mkdir -p /soft/nginx/conf.d

 4.进入目录 上传文件

mkdir -p /soft/nginx/conf.dcd /soft/nginx/conf.d

上传配置文件 html ,default.conf 

5. 进入nginx,创建并配置容器


#进入容器
docker exec -it nginx bashdocker run -itd \
--name n1 \
-v /soft/nginx/conf.d:/etc/nginx/conf.d \
-v /soft/nginx/html:/etc/nginx/html \
-p 80:80 \
--net mynet \
--ip 172.20.0.104 \
nginx
第一个 -v :挂载 nginx 的主配置文件,以方便在宿主机上直接修改容器的配置文件
第二个 -v :挂载静态页面目录

 

本机域名映射,修改windows文件 


修改windows目录下的hosts文件实现域名映射才能生效

输入你的虚拟机ip和域名才能生效

c://windows//system32//drivers//etc//hosts

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

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

相关文章

docker:Java通过nginx获取客户端的真实ip地址

问题现象 我们的平台使用Spring Cloud微服务架构,使用Spring Boot构建Java服务,使用google的jib插件打成docker镜像包我们使用docker虚拟化部署,使用docker-compose统一管理所有服务,包括Java服务和nginx等组件我们前后端分离&am…

游戏《泰坦陨落2》msvcr120.dll丢失的多种解决方法分享

在Windows 11操作系统环境下,众多玩家在体验《泰坦陨落2》这款备受瞩目的射击游戏时,遭遇了一个令人困扰的技术问题:系统提示缺失msvcr120.dll文件。这一关键的动态链接库文件对于游戏的正常运行至关重要,它的缺失直接导致了《泰坦…

小白数学建模 Mathtype 7.7傻瓜式下载安装嵌入Word/WPS以及深度使用教程

数学建模Mathtype的下载安装嵌入Word/WPS以及深度使用教程 一 Mathtype 的下载安装1.1 安装前须知1.2 下载压缩包1.3 安装注册 二 嵌入Word/WPS2.1 嵌入Word2.1.1 加载项嵌入 Word2.1.2 宏录制嵌入 Word 2.2 嵌入 WPS2.2.1 加载项嵌入 WPS2.2.2 宏录制嵌入 WPS 2.3 嵌入时报错解…

【GNN报告】“青源Talk”-图可信学习与图大模型研究进展

北航王啸-图自监督学习 简介 介绍 浙大杨洋-探索大图模型预训练 总括 介绍 参考 Yang Yang - Zhejiang University dgraph-web DGraph: ALarge-Scale Financial Dataset for Graph Anomaly Detection All in One: Multi-task Prompting for Graph Neural Networks&#xf…

K8S-YAML

一、Kubernetes对象的描述 kubernetes中资源可以使用YAML描述(如果您对YAML格式不了解,可以参考YAML语法),也可以使用JSON。其内容可以分为如下四个部分: typeMeta:对象类型的元信息,声明对象…

一款开源且不限制大小可以设置过期时间的支持分享的的开源文件共享系统picoshare 部署教程

1.拉取镜像 2.部署 创建目录 mkdir -p /opt/picoshare/data 部署 其中:"somesecretpass"是密码 docker run \--env "PORT4001" \--env "PS_SHARED_SECRETsomesecretpass" \--publish 10005:4001/tcp \--volume "/opt/picoshare/data:…

最优解-最长公共子序列

问题描述 最长公共子序列(Longest Common Subsequence,LCS)即求两个序列最长的公共子序列(可以不连续)。比如3 2 1 4 5和1 2 3 4 5两个序列,最长公共子序列为2 4 5 长度为3。解决这个问题必然要使用动态规划。既然要用到动态规划,就要知道状…

oracle11g的闪回技术-闪回表-时间戳

--数据库闪回表 --1创建表(登录模式system) CREATE table dept2 as select * from dept;--此语句如果加上where条件可用于工作中数据的临时备份 select * from dept2;--查询新建表信息 --进入sql>set time on 通过时间点闪回 记录弹出的时间点&#…

Acrel-1000DP分布式光伏系统在某重工企业18MW分布式光伏中应用

摘 要:分布式光伏发电特指在用户场地附近建设,运行方式以用户侧自发自用、余电上网,且在配电系统平衡调节为特征的光伏发电设施,是一种新型的、具有广阔发展前景的发电和能源综合利用方式,它倡导就近发电,就…

一张图描述Http常用状态码(301、302、305、404、408等等)

301—永久移动。被请求的资源已被永久移动位置; 302—请求的资源现在临时从不同的 URI 响应请求; 305—使用代理。被请求的资源必须通过指定的代理才能被访问; 307—临时跳转。被请求的资源在临时从不同的URL响应请求; 40…

抖音VR直播新玩法,凸显各行业领域商业价值

抖音近期新推出了VR直播新玩法,用户不需要佩戴专业的显示头盔,只需要左右摇晃旋转手机,即可通过手机看到主播的全景直播。其实,VR直播并不是一个新东西,几年前,明星演唱会也用过VR直播拍摄技术,…

网站会遇到的几种攻击类型,及如何防御

随着互联网的普及和人们对网络使用的增加,网站安全问题变得越来越突出。无论是个人还是企业,都需要了解并采取措施来保护自己的网站和用户数据的安全。本文介绍了几种常见的网站安全攻击方式、潜在危害及其预防措施,帮助全面了解网站安全的各…

达梦数据库增删改查常用操作及-2723: 仅当指定列列表,且SET IDENTITY_INSERT为ON时,才能对自增列赋值问题修复

创建表 CREATE TABLE DICT ( "ID" INT IDENTITY(1, 1) NOT NULL, "TYPE" VARCHAR(30), "CODE" BIGINT, "NAME" VARCHAR(300), "VALUE" VARCHAR(200), "DESCRIPTION" VARCHAR(255), "OPERATOR"…

AI在检验数据方面的应用场景-九五小庞

AI在检验数据方面有广泛的应用前景,主要体现在以下几个方面: 自动化数据收集和分析:AI可以通过自动化技术,收集各种检验数据,如血液、尿液、生化指标等,并进行快速、准确的分析,提高检验效率。…

canvas绘制图形

目录 1、canvas绘制矩形 2、canvas绘制线 3、canvas绘制圆 4、canvas绘制多圈动画圆 HTML5<canvas>元素用于图形的绘制&#xff0c;Canvas API主要聚焦于2D图形。 1、canvas绘制矩形 canvas是一个二维网格&#xff0c;左上角坐标为(0,0)&#xff0c;横轴为x轴&…

C#,入门教程(38)——大型工程软件中类(class)修饰词partial的使用方法

上一篇&#xff1a; C#&#xff0c;入门教程(37)——优秀程序员的修炼之道https://blog.csdn.net/beijinghorn/article/details/125011644 一、大型&#xff08;工程应用&#xff09;软件倚重 partial 先说说大型&#xff08;工程应用&#xff09;软件对源代码的文件及函数“…

用 Python 制作可视化 GUI 界面,一键实现证件照背景颜色的替换

今天&#xff0c;我们来分享一下如何通过Python的十来行代码来替换证件照的背景颜色&#xff0c;那么在最后&#xff0c;小编也会将上述的流程制作成一个GUI界面来方便大家使用。关于界面的大致模样其实和先前的相差不大&#xff0c;大家应该都看过上一篇的内容 界面大体的样子…

实战-ApacheSuperset未授权访问漏洞(CVE-2023-27524)

声明&#xff1a; 该文章仅供网络安全领域的学习使用&#xff0c;请勿利用文章内的相关技术从事任何非法行为。 测试资产为国外 IP&#xff0c;存在漏洞的 IP 地址已做打码处理。 我们只进行 poc&#xff0c;请勿进行任何非法入侵和攻击。 知攻善防&#xff0c;遇强则强。 开发…

MYSQL索引实例

1.用SQL语句创建学生表student&#xff0c;定义主键&#xff0c;姓名不能重名&#xff0c;性别只能输入男或女&#xff0c;所在系的默认值是“计算机”。 mysql> create table student(-> Sno int primary key auto_increment,-> Sname varchar(255) not null unique…

MacOS受欢迎的数据库开发工具 Navicat Premium 15 中文版

Navicat Premium 15 Mac是一款数据库管理工具&#xff0c;提供了一个全面的解决方案&#xff0c;用于连接、管理和维护各种数据库系统。以下是Navicat Premium 15 Mac的一些主要功能和特点&#xff1a; 软件下载&#xff1a;Navicat Premium 15 中文版下载 多平台支持&#xff…