安装Docker
yum install docker1
1
yum install docker开机自启动
-- centos 6
service docker start
chkconfig docker on
--CentOS7 新式 systemd 语法
systemctl start docker.service
systemctl enable docker.service7
1
-- centos 62
service docker start3
chkconfig docker on4
5
--CentOS7 新式 systemd 语法6
systemctl start docker.service7
systemctl enable docker.serviceDocker运行CentOS系统
[root@localhost ~]# docker run -i -t centos /bin/bash
[root@dbf66395436d /]#2
1
[root@localhost ~]# docker run -i -t centos /bin/bash2
[root@dbf66395436d /]#CentOS 容器已经被启动,并且我们得到了 bash 提示符。
在 docker 命令中我们使用了 “-i 捕获标准输入输出”和 “-t 分配一个终端或控制台”选项。
若要断开与容器的连接,输入 exit。
通用指定
| 操作 | 命令 | 示例 |
|---|---|---|
| 查看 docker 版本 | docker version | docker version |
| 查看 docker 信息 | docker info | docker info |
| 查看某命令 help 信息 | docker help [command] | docker help attach |
| 查看 docker help 信息 | docker --help | docker --help |
Container相关指令
其中 可以通过 docker images 获取相关信息
| 操作 | 命令 | 示例 |
|---|---|---|
| 创建 container | docker create | docker create chenhengjie123/xwalkdriver |
| 创建并运行 container | docker run | docker run chenhengjie123/xwalkdriver /bin/bash |
| 创建并运行 container 后进入其 bash 控制台 | docker run -t -i image /bin/bash | docker run -t -i ubuntu /bin/bash |
| 创建并运行 container 并让其在后台运行,并端口映射 | docker run -p [port in container]:[port in physical system] -d [image] [command] | docker run -p 5000:5000 -d training/webapp python app.py |
| 查看正在运行的所有 container 信息 | docker ps | docker ps |
| 查看最后创建的 container | docker ps -l | docker ps -l |
| 查看所有 container ,包括正在运行和已经关闭的 | docker ps -a | docker ps -a |
| 输出指定 container 的 stdout 信息(用来看 log ,效果和 tail -f 类似,会实时输出。) | docker logs -f [container] | docker logs -f nostalgic_morse |
| 获取 container 指定端口映射关系 | docker port [container] [port] | docker port nostalgic_morse 5000 |
| 查看 container 进程列表 | docker top [container] | docker top nostalgic_morse |
| 查看 container 详细信息 | docker inspect [container] | docker inspect nostalgic_morse |
| 停止 continer | docker stop [container] | docker stop nostalgic_morse |
| 强制停止 container | docker kill [container] | docker kill nostalgic_morse |
| 启动一个已经停止的 container | docker start [container] | docker start nostalgic_morse |
| 重启 container (若 container 处于关闭状态,则直接启动) | docker restart [container] | docker restart nostalgic_morse |
| 删除 container | docker rm [container] | docker rm nostalgic_morse |
imgae相关指令
| 操作 | 命令 | 示例 |
|---|---|---|
| 从 container 创建 image(反过来) | docker commit [container] [imageName] | docker commit nostalgic_morse ouruser/sinatra:v2 |
| 从 Dockerfile 创建 image | docker build -t [imageName] [pathToFolder] | docker build ouruser/sinatra:v3 . |
| 查看本地所有 image | docker images | docker images |
| 在 registry 中搜索镜像 | docker search [query] | docker search ubuntu |
| 从 registry 中获取镜像 (若无指定 tag 名称,则默认使用 latest 这个 tag) | docker pull [imageName] | docker pull ubuntu:14.04, docker pull training/webapp |
| 给 image 打 tag | docker tag [imageId] [imageName] | docker tag 5db5f8471261 ouruser/sinatra:devel |
| 把本地 image 上传到 registry 中 (此时会把所有 tag 都上传上去) | docker push [imageName] | docker push ouruser/sinatra |
| 删除本地 image | docker rmi [image] | docker rmi training/sinatra |
网络管理
--p <HOT_PORT>:<CONTAINER_PORT>:指定端口号
docker run -P:随机分配端口号
docker run -p 5010:5000:绑定特定端口号(主机的所有网络接口的5010端口均绑定容器的5000端口)
docker run -p 127.0.0.1:5000:5000:绑定主机的特定接口的端口号
docker run -d -p 127.0.0.1:5000:5000/udp training/webapp python app.py:绑定udp端口号
docker port<CONTAINER_ID> 5000:查看容器的5000端口对应本地机器的IP和端口号6
1
--p <HOT_PORT>:<CONTAINER_PORT>:指定端口号2
docker run -P:随机分配端口号3
docker run -p 5010:5000:绑定特定端口号(主机的所有网络接口的5010端口均绑定容器的5000端口)4
docker run -p 127.0.0.1:5000:5000:绑定主机的特定接口的端口号5
docker run -d -p 127.0.0.1:5000:5000/udp training/webapp python app.py:绑定udp端口号6
docker port<CONTAINER_ID> 5000:查看容器的5000端口对应本地机器的IP和端口号其他
docker attach <CONTAINER_ID> 连接到启动的容器
docker logs <CONTAINER_ID> : 输出容器日志2
1
docker attach <CONTAINER_ID> 连接到启动的容器2
docker logs <CONTAINER_ID> : 输出容器日志卸载docker全部资源
列出你安装过的包
$ yum list installed | grep docker
yum list installed | grep docker
docker-engine.x86_64 1.7.1-1.el7 @/docker-engine-1.7.1-1.el7.x86_64.rpm3
1
$ yum list installed | grep docker2
yum list installed | grep docker3
docker-engine.x86_64 1.7.1-1.el7 @/docker-engine-1.7.1-1.el7.x86_64.rpm删除安装包
$ sudo yum -y remove docker-engine.x86_641
1
$ sudo yum -y remove docker-engine.x86_64删除镜像/容器等
$ rm -rf /var/lib/docker1
1
$ rm -rf /var/lib/docker