码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • docker容器内的attached 和detached模式


    博主介绍

    📢点击下列内容可跳转对应的界面,查看更多精彩内容!

    🍎主页:水香木鱼
    🍍专栏:docker


    文章目录

    简介:这是一篇有关【docker容器内的attached 和detached模式】的文章,博主用最精简的语言去表达给前端读者们。

    端口映射
    attached模式
    detached模式
    detached模式转换attached模式

    1、Docker端口映射

    在开启端口映射之前,你首先要之道Docker对应的容器端口是多少。比如Nginx镜像的端口诗80。

    知道这个端口后,就可以在启动容器的时候,用-p 的形式,启用映射了。

    用Nginx举例:

    docker container run -p 80:80 nginx
    
    • 1

    等待项目启动后,打开浏览器窗口,在地址栏输入127.0.0.1,就可以打开nginx的默认网址。

    在这里插入图片描述

    • 第一个端口是映射到服务器本机的端口;
    • 第二个端口是Docker容器使用的端口。

    比如你想把Docker的80端口,映射到服务器的90端口,执行如下命令:

    docker container run -p 90:80 nginx
    
    • 1

    2、attached模式

    两种模式最简单的对比理解就是:attached模式在前台运行,detached模式在后台运行。

    当你打开127.0.0.1网址的时候,PowerShell上打印出了相关的日志(log),平且每访问一次,都会增加一条日志。

    也就是说Docker容器的日志会实时的展现到窗口并且占用此端口。这种模式叫做attached模式

    在这里插入图片描述

    在windows系统下并不是一个完整的attached模式,只是帮我们打印出了Log。

    现在到Linux服务器上,这时候你按Ctrl+C,就会停止掉Docker服务。而现实中我们工作的环境恰恰是这种Linux环境。

    【也就是在Linux上你的操作命令,会直接传递个Docker容器。这个缺点就是很容易误操作,比如在公司的生产环境中,你直接一个Ctrl+C,整个服务就崩掉了,你这个月的绩效也就没有了。】

    所以我们需要一个更好的,更稳定的模式。也就是detached模式。

    注意:attached模式更适用于容器和程序的调试阶段

    3、detached模式

    detached模式的开启方法,就是加一个参数-d或者--detach

    docker run -d -p 80:80 nginx
    
    • 1

    这次你会看到,和attached模式不同的是,这次输入完命令后,只显示出了容器的编号,并且可以再输入任何命令。

    就算我们关掉窗口,容器依然运行,也就是他是在系统后台进行运行的。

    这种就比较适合在生产环境中运行,停掉和删除容器都需要使用Shell脚本的形式。减少了很多误操作。

    4、detached模式转换attached模式

    在运行之后,也有需要调试的时候,Docker提供了两个模式间的转换。

    比如现在要把detached模式的容器,改为attched模式

    docker  attach 
    
    • 1

    相关推荐

    ⭐doker的多容器操作和强制删除容器的方法
    ⭐docker创建容器相关命令【详细版】
    ⭐如何在Linux系统下安装Docker
    ⭐如何安装Docker桌面版到Windows系统上
    ⭐在Windows10、Windows11系统下安装Docker

  • 相关阅读:
    微软大中华区商业应用事业部高级产品经理张诗源,将出席“ISIG-低代码/零代码技术与应用发展峰会”
    计量龙头威胜电子正式加入能源区块链,携手零数打造区块链生态圈
    继欧洲后再度进军日韩,Pico消费级VR全球化加速
    两个三位电云获取旋转矩阵
    12代CPU启用SR-IOV vGPU,实现一台电脑当七台用
    A Simple, Fast and Effective Polygon Reduction Algorithm 代码 vscode编译过程
    读书会成员招募 | 一起来读《被讨厌的勇气》和《幸福的勇气》吧
    Go网络请求中配置代理
    orb-slam2 从单目开始的简单学习(7):Optimizer
    选择器汇总
  • 原文地址:https://blog.csdn.net/weixin_48337566/article/details/127682654
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号