当前位置: 首页 > news >正文

网站域名最便宜海外营销推广方案

网站域名最便宜,海外营销推广方案,寻找做网站,常州网站制作系统学习如何进入一个正在运行的容器的内部,要求学习者参照示例,进入一个名为container2的容器内部,并在容器内部创建一个1.txt文件。 相关知识 使容器在后台运行 因为本关要使用docker run -d命令,所以在本关的开始,将…

学习如何进入一个正在运行的容器的内部,要求学习者参照示例,进入一个名为container2的容器内部,并在容器内部创建一个1.txt文件。

相关知识

使容器在后台运行

因为本关要使用docker run -d命令,所以在本关的开始,将花费少量篇幅介绍这条命令。

有些时候,需要让容器在后台运行而不是直接把“启动命令”的结果输出在当前宿主机下。此时,可以通过添加-d参数来实现。

举个例子,假如不使用-d参数执行下面这条命令:

  1. docker run ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"

那么会一直在控制台输出hello world,如下图所示:

  1. docker run ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"
  2. hello world
  3. hello world
  4. hello world
  5. ...

但是如果使用了-d参数,此时容器会在后台运行并且不会将输出结果输出到控制台。如下图所示:

  1. docker run -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"
  2. ccd644424bffed71747e2a36977d70745cc211e7dac71006437ca52914c1b743
进入一个docker容器的几种方法
  1. 使用ssh登陆进容器;
  2. 使用nsenter、nsinit等第三方工具;
  3. 使用docker本身提供的工具。

在这里我只介绍Docker本身提供的工具,大家如果对其他的两种方式感兴趣,可以阅读扩展链接中的内容。

Docker目前主要提供了docker execdocker attach两个命令。

docker attach进入一个容器内部

1. docker attach containerId|containerName

如下图所示,首先使用docker run创建了一个容器,为其分配了伪终端,打开了它的标准输入流,并且让它在后台执行。

然后使用docker attach进入了该容器内部,实际上就是进入容器“启动命令”的终端。(containerId可以不用输全,只要能代表容器即可。例如下面的0539就是代表容器ID0539开头的容器,一般情况下,前4位就能唯一标识一个容器了)

  1. [root@localhost Desktop]# docker run -itd ubuntu /bin/bash
  2. 0539852938cdb9538f67750d07ed8c7fa072de742d5c0c02128576f2d227ec46
  3. [root@localhost Desktop]# docker attach 0539
  4. root@0539852938cd:/#
  5. root@0539852938cd:/# ls
  6. bin dev home lib64 mnt proc run srv tmp var
  7. boot etc lib media opt root sbin sys usr
  8. root@0539852938cd:/# exit
  9. exit
  10. [root@localhost Desktop]#
docker exec进入一个容器内部

2. docker exec [options] containerName|containerId command [arg]

如下图所示,首先使用docker run创建了一个容器,并使它在后台运行。

docker exec命令可以在一个运行的容器内部执行一条命令,例如下图中执行docker exec aec0 mkdir dir1后,就在容器中创建了一个dir1的文件夹。除此以外,还可以在容器中启动一个新的bash,例如下图执行了docker exec -it aec0 /bin/bash,在容器内部启动了一个新的bash终端,并使用-it为其分配一个伪终端绑定到标准输出上。

  1. [root@localhost Desktop]# docker run -itd ubuntu /bin/bash
  2. aec040300549f95a8c4b37fecd3059122f08cb5422673640bd0bd9e641d0644c
  3. [root@localhost Desktop]# docker exec aec0 mkdir dir1
  4. [root@localhost Desktop]# docker exec -it aec0 /bin/bash
  5. root@aec040300549:/# ls
  6. bin dev etc lib media opt root sbin sys usr
  7. boot dir1 home lib64 mnt proc run srv tmp var
  8. root@aec040300549:/# exit
  9. exit
  10. [root@localhost Desktop]#
attach与exec的比较

使用docker run -d ubuntu "while true ; do sleep 1 ; echo hello; done"创建并在后台启动容器,每隔一秒打印一个hello

  1. [root@localhost Desktop]# docker run -d ubuntu /bin/sh -c "while true ; do sleep 1 ; echo hello; done"
  2. a695e721e324f11cc958867d13c9c6707018e359c747ba103554d4d8e9e7750f

使用docker attach 5719进入容器内部后,会在控制台每隔一秒打印了一个hello

  1. [root@localhost Desktop]# docker attach a695
  2. hello
  3. hello
  4. ...

但是使用docker exec –it 5719 /bin/bash进入容器后,并没有打印“hello”,因为docker exec执行后,在容器中打开一个新的终端,该终端与“启动命令”的终端不是同一个。

  1. [oot@localhost Desktop]# docker exec -it a695 /bin/bash
  2. root@a695e721e324:/#
attach与exec的主要区别
  1. attach直接进入容器“启动命令”的终端,不会启动新的进程;
  2. exec则是在容器中打开新的终端,并且可以启动新的进程;
  3. 如果想直接在终端中查看容器“启动命令”的输出,用attach;其他情况使用exec
    #注意如果想在右侧使用命令行模拟操作,请先输入service docker start#否则将不能执行docker命令#基于ubuntu镜像创建并在后台启动一个名为container2的容器#拉取ubutun 最新镜像,实际生产中,docker pull ubutun可以省略,docker run的时候会自己去拉取。docker pull ubuntudocker run -itd --name container2 ubuntu /bin/bash

    #由于测试环境不允许从终端输入,所以请使用docker exec完成任务

    #********** Begin *********#

    docker exec container2 touch 1.txt

    #********** End **********#

参考链接: 两种进入容器的方法 - 每天5分钟玩转 Docker 容器技术(23)_docker 多次进入容器-CSDN博客 Docker系列~exec与attach(四)-CSDN博客 扩展链接: Docker容器进入的4种方式 - 純黑色 - 博客园

http://www.yayakq.cn/news/987889/

相关文章:

  • 主机做网站服务器吗秦皇岛网站开发报价
  • 观音桥网站建设网站建设一个网站如何挣钱
  • 厦门微信网站建.net网站开发实训报告
  • ps与dw怎么做网站wordpress手机号注册
  • 网站代理违法吗宇泽佛山网站建设
  • 网站认证中心官网网页游戏大全排行
  • 网站如何做关键词seo大连爱得科技网站建设公司怎么样
  • 做的网站怎么转成网址链接网页设计与网站建设课程
  • 网站后台html编辑器生鲜配送网站建设
  • 河北省城乡和住房建设厅网站专做外贸库存的网站
  • 电商网站前端源码阳江招聘网鹏程
  • 境外注册网站如何做简易个人网站
  • 个人做电影网站做修车行业需要在哪个网站做推广
  • 网站 开发 外包上海网页设计公司排行
  • wordpress 足球有找猎聘网站做简历优化的
  • 学习做网站要多久wordpress支持哪些数据库
  • 网站设计时间取消wordpress邮箱认证
  • 网站怎么做营销现在去成都需要隔离吗
  • 宁波网站推广排名公司建立自己的网站有什么好处
  • 旅游电子商务网站的建设厦门 网站制作
  • 网页与网站的区别与联系发布软文网站
  • 怎样建设公司的网站合肥 做网站
  • 洛阳网站建设哪家公司好网站备案怎么那么麻烦
  • 专门做搜索种子的网站别墅庭院园林景观设计公司
  • 阿里云建立网站装修网站设计平台
  • 建各公司网站要多少钱网站开发语言
  • 建设银行网站支付流程凡科建站官网网站模板
  • 外国个人主页网站欣赏国外域名 网站备案
  • 爱网是什么网站互联网网站界面设计 要素
  • 永信南昌网站建设国外家装设计网站