关于dockercontainer的信息

本篇文章给大家谈谈dockercontainer,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

docker 如何限制和查看container 内存 和cpu

1. 通过top命令查看机器目前已消耗内存及cpu使用数量,linux下输入top,然后在输入1就会物陵塌出现cpu使用情况

2. docker 启动时限制cpu 和内存,--cpus 设置使用cpu数量 -m 设置使用内存

设置目的是为了不影响其他服务正常运行罩圆。

docker run -i -d --cpus 4 -m 12GB  -v $PWD:/celery_works/aa  image ID jupyter notebook --allow-root  --ip 0.0.0.0

备注:通过top命令查看cpu和内存使用情况,设置合理的cpu和内存确保不影响正常服务的运行

3. 查看 启动的container占用cpu 和内存

docker stats contrainer id

4. 容器用汪渣完后记得删除,使用docker kill contrainer id命令删除不用的container

5. 总结:

1. top命令查看空闲的内存和cpu

2.  docker 启动时限制cpu和内存

3. docker stats 查看容器消耗cpu和内存

4. 容器用完后记得删除,通过docker kill 命令删除

[img]

Docker container 到底应该翻译成什么?容器?集装箱

docker:码头(工人)

docker container:

码头集装弯答含举瞎箱. (即货轮运输的集装箱埋笑)。

如何登录到Docker的container中

使用Docker部署container后,我们总有类似的需求:登录到container中进行一些操作。

常见的方式

1.有ssh方式,特点是不需要特别的root权限,但是container需要安装sshd

2.使用nsenter来从姿卜container获得一个shell实现登录

3.使用nsinit

本文主要介绍nsenter的使用

nsenter使用非常方便,但是有的操作系统发行版本util-linux包比较老,所以没有包含这个nsenter,那么你需要自己编译和安装,对于hacker们来说,源码编译安装不是小case嘛,走起!

注明: 下面的命令运行以Ubuntu 14.04为例

1)下载源码

git clone git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git util-linux

cd util-linux/

2)安装依赖包(这个具体缺少的情况,会在运行./autogen.sh的提示,你也可以直接运行3),根据提示来安装对应的依赖包

sudo apt-get install libtool

sudo apt-get install automake

sudo apt-get install autopoint

sudo apt-get install libncurses5-dev

3)编译安装

./autogen.sh

./configure make

4)测试安装成功

./nsenter -V

5) 将nsenter加入系统环境可执行路径中

sudo cp ./nsenter /usr/bin

如何使用nsenter,非常简单行盯,

1) 首档册和先找到container对应的进程ID

sudo docker inspect --format "{{ .State.Pid }}"

2) 执行nsenter获得一个shell ,假设1)获得id是4308

sudo nsenter --target 4308 --mount --uts --ipc --net --pid

Docker和Container是什么?

Docker

是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流肢知行的

Linux

机器上,也可以厅饥桐实现虚拟化。扮坦

ontainer

是容器的意思。

docker 的container模式

Docker网络container模式是指,创建新容器的时候,通过 --net container 参数,指定其和已经存在的某个容器共享一个 Network Namespace。如下图所示,右方黄色新创建的container,其网卡共享左边容器。因此就不会拥有自己独立的 IP,而是共享左边容器的 IP 172.17.0.2,端口范围等网络资源,两个容器的进程通过 lo 网卡设备通信。

但这两个容器在其他的资源上,如文件系统、族饥进程列表等还是隔离的。

使用busybox镜像新建bb容器,bb容器网络模型默认采用的bridge模式

使用Nginx镜像新建nginx容器,并用 --net container:bb 参数,指定该容器的网络模型为container模式,和bb容器共用相同的网络命名空间。

进入bb容器

使用命令查看网络端口情况

可以看到,nginx容器的80端口已经映射到了bb容器的80端口

在bb容器内部访问bb容器本机的80商品,我们可以看到实际上可以访问到nginx容器的

查看bb容器的ip地址,并退出bb容器

使用上面得到IP地址,从云环境主机的环境,去访问

也会得到

总结

Docker container网络模式兆薯返,这种模式可以节约一定的网络资源,并能降低容器间的通信的难度。container网络手知模式使多个容器共享网络环境,在这种模式下容器可以通过访问localhost来访问 namespace下的其他容器,网络性能高

关于dockercontainer和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

标签列表