"https://2b88vsca.mirror.aliyuncs.com"
- docker安装centos7镜像
<1> 拉取
docker pull centos:7
<2> 运行
docker run -it 8652b9f0cb4c --name mycentos 交互式运行,进入
docker run -d centos 守护式运行(启动了又退出)
docker run -d centos /bin/sh -c "while true;do echo hello wzz;sleep 2;done"
docker run -itd centos 不进入持续运行
# 每2秒打印hello wzz
docker run --restart=always -itd --name mycentos centos /bin/bash 开机自动启动
docker run -it --rm --cpus=2 u-stress:latest /bin/bash --cpus=2 表示容器最多可以使用主机上两个CPU
docker run -it --rm --cpuset-cpus="1" u-stress:latest /bin/bash --cpuset-cpus 选项,指定运行容器的 CPU 编号为 1
docker run -it --rm --cpuset-cpus 0-2 --cpu-shares=512 u-stress:latest /bin/bash 使用 Cpu0,1,2,并分别设置 --cpu-shares 为 512
<3> 退出
exit : 容器停止退出
ctrl+P+Q: 容器不停止退出
<4> 停止
docker stop 59c153617201 停止容器(温柔)
docker kill 59c153617201 停止容器(拔电源)
<5> 启动
docker start 59c153617201 启动已停止的容器
<6> 重入
docker attach 59c153617201 //直接进入容器启动命令的终端,不会启动新的进程
docker exec 59c153617201 [命令] //重新执行在运行的容器,但不进入 在容器中打开新的终端,并且可以启动新的进程
docker exec -it 59c153617201 ls //重新执行在运行的容器,但不进入, 执行ls命令
docker exec -it 59c153617201 /bin/sh //与docker attach 59c153617201相同
<7> 删除
docker rmi 镜像ID 删除镜像
docker rm [-f] 59c153617201 (强制)删除已停止容器
docker rm -f $(docker ps -a -q) 强制删除所有的容器
docker ps -a -q | xargs docker rm 强制删除所有的容器
<8> 复制
docker cp 容器ID:容器内路径 目的主机路径 //拷贝容器内文件到宿主机
docker cp 要拷贝的宿主机文件或目录 容器名称:容器文件或目录 //拷贝宿主机内文件到容器
<9> 查看
docker ps 列出当前所有正在运行的容器
docker logs -f -t --tail 3 59c153617201 查看容器日志
#其中-t为加入时间,-f为追加 --tail 3为查看最近的3条
docker top 59c153617201 查看容器内运行的进程
docker inspect 59c153617201 查看容器内部细节
<10> 制作镜像
docker commit -a "wzz" -m "my apache" a404c6c174a2 mymysql:v1
-a :提交的镜像作者
-c :使用Dockerfile指令来创建镜像;
-m :提交时的说明文字;
-p :在commit时,将容器暂停
<11> 资源控制(网络、CPU、内存、IO)
docker run -it --rm --cpus=2 u-stress:latest /bin/bash --cpus=2 表示容器最多可以使用主机上两个CPU
docker run -it --rm --cpuset-cpus="1" u-stress:latest /bin/bash --cpuset-cpus 选项,指定运行容器的 CPU 编号为 1
docker run -it --rm --cpuset-cpus 0-2 --cpu-shares=512 u-stress:latest /bin/bash 使用 Cpu0,1,2,并分别设置 --cpu-shares 为 512