前言

记录一些Docker的使用

文档

Docker文档

容器服务

服务商
阿里云
灵雀云
DaoCloud
DockerHub
add…

运行

1
2
3
4
5
6
7
8
docker run -it -p local_port:container_port --name="example" -v local_path:container_path image_id /bin/bash

# -i, --interactive=false 打开STDIN,用于控制台交互
# -t, --tty=false 分配tty设备,该可以支持终端登录,默认为false
# -v, --volume=[] 给容器挂载存储卷,挂载到容器的某个目录
# --name="nginx-lb" 为容器指定一个名称
# -d 后台启动
# -p 指定端口

查看

1
2
3
4
5
docker ps -a
# 查看容器列表
# -a,查看所有容器包括停止状态的容器
# -l,查看最新创建的容器
# -n=x,查看最后创建的x个容器
1
2
CONTAINER ID| IMAGE| COMMAND| CREATED| STATUS| PORTS| NAMES 
容器ID|使用的镜像|运行时的命令|创建时间|运行状态|对外开放的端口|容器名称
1
2
3
docker images
docker image ls
# 查看镜像列表
1
2
REPOSITORY|TAG|IMAGE ID|CREATED|SIZE
仓库名|标签(版本)|镜像ID|创建时间|大小

启动

1
2
docker start 容器名或容器ID 
# 容器进入运行状态,当容器完成任务后,会自己退出,进入停止状态

终止

1
docker stop 容器名或容器ID

删除

1
2
docker rm 容器名或容器ID
# 删除容器,前提要容器没有运行
1
2
docker rm `docker ps -a -q`
# 一次性删除所有容器
1
2
docker rmi 镜像名或者镜像ID
# 删除镜像

进入

1
2
docker attach 容器名或
# attach进入容器的活动会话进程
1
2
docker exec -it 容器ID /bin/bash
# exec进入容器启动一个新的交互

日志

1
2
docker logs 容器名或容器ID
# 查看容器里在干什么
1
2
docker top 容器名或容器ID
# 查看容器里的进程

加速器

1
2
3
4
5
6
7
8
$ sudo mkdir -p /etc/docker
$ sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://oyukeh0j.mirror.aliyuncs.com"]
}
EOF

$ sudo /etc/init.d/docker restart

结束

End