docker学习记录

1.获取container-ip

1.1.先输入:  docker ps ,获取container-id

1.2.之后输入:  docker inspect --format='{{.NetworkSettings.IPAddress}}' container-id 


2.容器与主机之间的文件交换:

2.1.使用docker run -i -t -v 宿主目录:虚拟目录 镜像名 /bin/bash

2.2.然后就可以在宿主目录和虚拟目录之间共享文件了.


3.显示所有容器:

docker ps -a

4.如果已经进入某容器,这时需要不退出该容器,回到本地控制台: Ctrl+P+Q


5.进入正在运行的容器:docker attach container-id


6.将image保存为tar包:docker save imageName > savePath/fileName.tar


7.将tar包加载到docker: docker load <  savePath/fileName.tar


8.以ssh登录docker后,按Ctrl+D可以退出SSH.如果是run方式或attach方式进入docker的按Ctrl+P+Q回到控制台,但不退出docker.


9.Wget安装Docker :  wget -qO- https://get.docker.com/ | sh


10.Dockerfile: docker build -t newImageName path


11.非root用户使用docker:  sudo usermod -aG docker leo 


12.使用Docker自带的-m操作进行内存限制时可能会由于内核限制所以出现以下提示

Your kernel does not support swap limit capabilities.memory limit without swap

必须通过修改grub文件/etc/default/grub 添加:

GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1"
之后更新grub并重启可以解决
$ sudo update-grub
$ sudo reboot

13.使用docker -m操作会使内存被限制为输入大小的两倍

$ sudo docker run -it --name test -m 100m ubuntu /bin/bash
此时内存被限制为200m

若想要限制为100m必须执行

$ sudo docker run -it --name test -m 100m --memory-swap=100m ubuntu /bin/bash
此时内存与swap都被限制为100m

14.内存压测工具stress

$ sudo apt-get install stress
$ sudo stress --vm 1 --vm-bytes 100M --vm-hang 0
若运行后现实在几秒内被杀死说明内存被限制为100M

15.Docker remote Api:

使用dockerd启动docker,并可让远程docker client连接

dockerd -H unix:///var/run/docker.sock -H 0.0.0.0:2375
第一个-H代表,给本地的client连接,第二个-H代表,给远程的所有主机连接.

远程的client可以这样调用:

docker -H $ip:$port $CMD
例:

docker -H 123.123.123.123:2375 images //查看远程docker daemon的所有镜像




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值