推荐:Docker备忘录
项目源地址:https://github.com/wsargent/docker-cheat-sheet
docker的安装
略,windows上可以用docker desktop,具体可以参考官方文档。https://hub.docker.com/editions/community/docker-ce-desktop-windows
安装之后用admin身份打开powershell,输入
#Display the version of docker installed:
docker version
##Pull, create, and run 'hello-world' all in one command:
docker run hello-world
容器相关
容器的生命周期
[docker create](https://docs.docker.com/engine/reference/commandline/create)
创建但未启动[docker rename](https://docs.docker.com/engine/reference/commandline/rename/)
重命名容器[docker run](https://docs.docker.com/engine/reference/commandline/run)
一个命令创建并启动容器[docker rm](https://docs.docker.com/engine/reference/commandline/rm)
删除容器[docker update](https://docs.docker.com/engine/reference/commandline/update/)
更新容器的资源限制
几个有用的点
- 一般启动容器我们用docker run -td container_id, -t表示分配TTY session,-d表示后台运行并打印容器id
- docker run –rm 用来运行容器后自动删除
- docker run -v $HOSTDIR:$DOCKERDIR 用来做volume的映射
容器的启动和停止
[docker start](https://docs.docker.com/engine/reference/commandline/start)
运行容器[docker stop](https://docs.docker.com/engine/reference/commandline/stop)
停止一个运行中的容器[docker restart](https://docs.docker.com/engine/reference/commandline/restart)
重启容器[docker pause](https://docs.docker.com/engine/reference/commandline/pause/)
暂停容器[docker unpause](https://docs.docker.com/engine/reference/commandline/unpause/)
继续运行一个暂停了的容器[docker wait](https://docs.docker.com/engine/reference/commandline/wait)
等待直到容器停止[docker kill](https://docs.docker.com/engine/reference/commandline/kill)
发送SIGKILL信号给容器[docker attach](https://docs.docker.com/engine/reference/commandline/attach)
连接运行中的容器
限制cpu和内存
docker run -it -c 512 agileek/cpuset-test
上面的命令限制了cpu使用率为50%,看起来很奇怪对不对?因为100%使用率用的参数是-c 1024,所以50%就是512
我们还可以限制容器的内容使用
docker run -it -m 300M ubuntu:14.04 /bin/bash
容器信息
[docker ps](https://docs.docker.com/engine/reference/commandline/ps)
展示运行中的容器[docker logs](https://docs.docker.com/engine/reference/commandline/logs)
从容器中拿日志[docker inspect](https://docs.docker.com/engine/reference/commandline/inspect)
展示容器的具体信息[docker events](https://docs.docker.com/engine/reference/commandline/events)
从容器获得事件[docker port](https://docs.docker.com/engine/reference/commandline/port)
展示容器的公共端口[docker top](https://docs.docker.com/engine/reference/commandline/top)
展示容器中运行的进程[docker stats](https://docs.docker.com/engine/reference/commandline/stats)
展示容器的资源使用情况[docker diff](https://docs.docker.com/engine/reference/commandline/diff)
展示容器的file system中变更的文件
docker ps -a:展示所有的容器,包括运行中和已停止的
docker stats –all: 展示所有的容器,不仅仅是运行中的容器的资源使用情况
导入和导出
[docker cp](https://docs.docker.com/engine/reference/commandline/cp)
本地和容器进行文件和文件夹拷贝的方式[docker export](https://docs.docker.com/engine/reference/commandline/export)
导出容器到STDOUT,一般是以压缩包的方式了
执行命令
docker exec -it foo /bin/bash 去容器中执行命令