入门
docker
docker -h
docker run --help
# 根据镜像centos:centos7创建、运行容器,并执行/bin/echo,镜像不存在,则自动下载
# --name:容器名称
docker run --name centos-isen centos:centos7 /bin/echo "hello docker"
# -i: 允许你对容器内的标准输入 (STDIN) 进行交互。
# -t: 在新容器内指定一个伪终端或终端。
# -d: 后台执行容器
docker run -itd centos:centos7 /bin/bash
# 查看容器
# -a: 所有状态容器,容器状态:
# created(已创建)
# restarting(重启中)
# running 或 Up(运行中)
# removing(迁移中)
# paused(暂停)
# exited(停止)
# dead(死亡)
docker ps -a
# 查看容器内的标准输出
# -f: tail -f 一样来输出容器内部的标准输出
docker logs -f <ContainerID|ContainerName>
# 停止容器
docker stop <ContainerID|ContainerName>
# 启动容器
docker start <ContainerID|ContainerName>
# 重启容器
docker restart <ContainerID|ContainerName>
# 通过attach进入容器,退出时会停止容器
docker attach <ContainerID|ContainerName>
# 通过exec进入容器(推荐)
docker exec -it <ContainerID|ContainerName> /bin/bash
# 删除容器
docker rm -f <ContainerID|ContainerName>
导出\导入容器
# 导出容器快照到my.tar
docker export <ContainerID|ContainerName> > my.tar
# 导入容器快照my.tar,并生成镜像isen/myimage:v1
cat my.tar | docker import - isen/myimage:v1
网络
# -P:将容器内部使用的网络端口随机映射到我们使用的主机上
docker run -itd --name centos-isen -P centos:centos7 /bin/bash
# -p: 将容器端口5000映射到宿主机端口8080上
docker run -itd --name centos-isen -p 8080:5000 centos:centos7 /bin/bash
# 查看容器端口映射
docker port <ContainerID|ContainerName>
查看容器
# 查看容器内进程,相当于在容器内执行top
docker top <ContainerID|ContainerName>
# 查看容器的配置和状态信息
docker inspect <ContainerID|ContainerName>