码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Docker笔记-docker搭建nginx及移植


    从官网找到对应的镜像:

    ​​​​​​https://hub.docker.com/_/nginx/tags

    查看镜像

    docker images

    运行容器,然后将配置文件等拷贝到主机上:

    docker run --name nginx -d nginx

    拷贝路径:

    1. docker cp nginx:/etc/nginx/nginx.conf /root/nginx/conf/nginx.conf
    2. docker cp nginx:/etc/nginx/conf.d /root/nginx/conf/conf.d
    3. docker cp nginx:/usr/share/nginx/html /root/nginx/

    此时的逻辑:

    让nginx容器读取主机上的配置文件,和对应的web路径,并且把log送到主机的log中。

    所以现在修改nginx.conf。我添加了如下信息:
     

    1. server {
    2. listen 18888;
    3. server_name localhost;
    4. location / {
    5. root /usr/share/nginx/html/XXXX;
    6. }
    7. location /data{
    8. proxy_pass http://192.168.xx.xx:18088/;
    9. }
    10. error_page 500 502 503 504 /50x.html;
    11. location = /50x.html {
    12. root html;
    13. }
    14. }

    注意,这里root /usr/share/nginx/html/XXXX;需要配置从容器里面的路径,后面运行时主机和容器路径会有映射。

    proxy_pass http://192.168.xx.xx:18088/;可以直接这么写,运行时用host模式就可以了。

    随后将nginx停掉:

    1. docker stop nginx
    2. docker rm nginx

    重新启动

    1. docker run \
    2. --net=host \
    3. --name nginx \
    4. -v /root/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
    5. -v /root/nginx/conf/conf.d:/etc/nginx/conf.d \
    6. -v /root/nginx/log:/var/log/nginx \
    7. -v /root/nginx/html:/usr/share/nginx/html \
    8. -d nginx:latest

    --net=host代表是host模式,就不用端口映射了。

    -v就是路径映射,这里主机root里面的目录要提前准备好。

    默认是桥接,就要端口映射命名是 -p 主机端口:镜像端口

    下面说下移植,就比较简单了比如说将机器A的nginx镜像,放到机器B上跑

    逻辑:

    ①机器A上镜像打包成tar;

    docker save nginx > nginx.tar

    ②将tar拷贝到机器B上;

    docker load < nginx.tar

    ③加载tar并运行。

    1. docker run \
    2. --net=host \
    3. --name nginx \
    4. -v /root/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
    5. -v /root/nginx/conf/conf.d:/etc/nginx/conf.d \
    6. -v /root/nginx/log:/var/log/nginx \
    7. -v /root/nginx/html:/usr/share/nginx/html \
    8. -d nginx:latest

  • 相关阅读:
    AcWing 3438. 数制转换
    Mysql进阶1
    番茄工作法,为何总不奏效
    GUI编程--PyQt5--QLineEdit
    第三章:人工智能深度学习教程-基础神经网络(第四节-从头开始的具有前向和反向传播的深度神经网络 – Python)
    【关于QT相关问题==》win遇到运行生成软件时,“应用程序无法正常启动0xc000007b“,问题解放办法之一】
    测试用例评审的旁观记录
    【Redis】数据结构之dict
    Android 进阶——系统启动之SystemServer创建并启动PackageManagerService服务(十一)
    机器学习实战(01)-人工智能概要
  • 原文地址:https://blog.csdn.net/qq78442761/article/details/133981343
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号