Docker部署nginx

简介: Docker、nginx

第一步 拉取nginx镜像
命令:docker pull nginx
第二步 启动nginx
命令:docker run --name nginx -p 80:80 -d nginx
第三步 查看成果

1)命令查看是否启动,命令:docker ps
2)网页访问,浏览器输入IP地址回车,就可以看到 “Welcome to nginx!”

为了方便配置与管理,把配置文件给映射出来,在宿主机操作即可,容器崩了也不会影响到数据。
第一步 本地创建管理目录

命令:
mkdir -p /data/nginx
mkdir -p /data/nginx/www
mkdir -p /data/nginx/conf
mkdir -p /data/nginx/logs
第二步 将容器中的相应文件copy到刚创建的管理目录中

docker cp 67e:/etc/nginx/nginx.conf /data/nginx/
docker cp 67e:/etc/nginx/conf.d /data/nginx/conf/
docker cp 67e:/usr/share/nginx/html/ /data/nginx/www/
docker cp 67e:/var/log/nginx/ /data/nginx/logs/
注:docker cp 67e 中的 "67e" 为容器ID前缀,只要唯一就好
第三步 停止并移除容器

命令:
停止容器:docker stop 67e
移除容器:docker rm 67e
第四步 再次启动容器并作目录挂载(也相当于共享)

命令:
docker run --name nginx -p 80:80
-v /data/nginx/nginx.conf:/etc/nginx/nginx.conf
-v /data/nginx/www/:/usr/share/nginx/html/
-v /data/nginx/logs/:/var/log/nginx/
-v /data/nginx/conf/:/etc/nginx/conf.d --privileged=true -d nginx

部署完成。
配置相关:
1、在location 中 echo "hello Nginx!" 访问可以直接输出文字

例:
location / {

echo "hello Nginx!"

}
2、location匹配规则:

1)最低级别匹配规则:
location / {

echo "hello Nginx!"

}
2)最高级别匹配规则:
location /user {

echo "hello user.hmtl"

}
3)其它级别匹配规则:
location ^~ /user {

echo "hello user.hmtl"

}
location ~^ /user {

echo "hello user.hmtl"

}
location ~ ^/[a-z] {

echo "hello user.hmtl"

}
location ~ ^/\a {

echo "hello user.hmtl"

}
3、反向代理细节:

location /user {

proxy_pass http://ip;

}
location /order/ {

proxy_pass http://ip/;

}
访问结果:
http://ip/user/xx...
http://ip/xx...
4、负载均衡配置

upstream order {

server 192.168.5.18:8080 weight=1;
server 192.168.5.18:8081 weight=1;

}
server{

location /order/ {
    proxy_pass http://order/;
}

}
注:weight=1,配置的为权重,值越高权重越高

相关文章
|
10天前
|
人工智能 API 数据安全/隐私保护
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
NextChat 是一个可以在 GitHub 上一键免费部署的私人 ChatGPT 网页应用,支持 GPT3、GPT4 和 Gemini Pro 模型。该项目在 GitHub 上获得了 63.8k 的 star 数。部署简单,只需拉取 Docker 镜像并运行容器,设置 API Key 后即可使用。此外,NextChat 还提供了预设角色的面具功能,方便用户快速创建对话。
69 22
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
|
22天前
|
SQL 关系型数据库 数据库
国产数据实战之docker部署MyWebSQL数据库管理工具
【10月更文挑战第23天】国产数据实战之docker部署MyWebSQL数据库管理工具
68 4
国产数据实战之docker部署MyWebSQL数据库管理工具
|
12天前
|
运维 开发者 Docker
Docker Compose:简化容器化应用的部署与管理
Docker Compose:简化容器化应用的部署与管理
|
12天前
|
Docker 微服务 容器
使用Docker Compose实现微服务架构的快速部署
使用Docker Compose实现微服务架构的快速部署
28 1
|
1月前
|
Web App开发 前端开发 测试技术
【Docker项目实战】使用docker部署tabler后台模版
【10月更文挑战第10天】使用docker部署tabler后台模版
42 1
【Docker项目实战】使用docker部署tabler后台模版
|
1月前
|
JSON JavaScript 测试技术
【Docker项目实战】使用Docker部署PPTist在线演示文稿应用
【10月更文挑战第9天】使用Docker部署PPTist在线演示文稿应用
39 1
【Docker项目实战】使用Docker部署PPTist在线演示文稿应用
|
1月前
|
消息中间件 编解码 Docker
【Docker项目实战】Docker部署RabbitMQ消息中间件
【10月更文挑战第8天】Docker部署RabbitMQ消息中间件
93 1
【Docker项目实战】Docker部署RabbitMQ消息中间件
|
1月前
|
存储 前端开发 测试技术
【Docker项目实战】使用Docker部署Calcium网页计算器
【10月更文挑战第7天】使用Docker部署Calcium网页计算器
35 1
【Docker项目实战】使用Docker部署Calcium网页计算器
|
24天前
|
负载均衡 应用服务中间件 nginx
基于Nginx和Consul构建自动发现的Docker服务架构——非常之详细
通过使用Nginx和Consul构建自动发现的Docker服务架构,可以显著提高服务的可用性、扩展性和管理效率。Consul实现了服务的自动注册与发现,而Nginx则通过动态配置实现了高效的反向代理与负载均衡。这种架构非常适合需要高可用性和弹性扩展的分布式系统。
25 4
|
24天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
56 2
下一篇
无影云桌面