Docker命令操作
目录
docker镜像使用
1.列出镜像列表
docker images
各个选项说明:
REPOSITORY:表示镜像的仓库源
TAG:镜像的标签
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小
2.下载一个新的镜像(本地主机不存在)
docker pull ubuntu:13.10
注意:如果不指定一个镜像的版本标签,例如你只使用 ubuntu,docker 将默认使用 ubuntu:latest 镜像
3.删除镜像
# 删除hello-world镜像 docker rmi hello-world
4.创建镜像
当我们从 docker 镜像仓库中下载的镜像不能满足我们的需求时,我们可以通过以下两种方式对镜像进行更改。
(1)从已经创建的容器中更新镜像,并且提交这个镜像
(2)使用 Dockerfile 指令来创建一个新的镜像
5.更新镜像(方法一)
(1)docker run 创建一个容器
(2)在容器内安装需要的包或者使用 apt-get update 命令进行更新
(3)输入exit 退出容器
(4)提交容器副本,提交为镜像
docker commit -m="has update" -a="runoob" e218edb10161 runoob/ubuntu:v2
各个参数说明:
-m: 提交的描述信息
-a: 指定镜像作者
e218edb10161:容器 ID
runoob/ubuntu:v2: 指定要创建的目标镜像名
(5)打包镜像
docker save ubuntu:v2 -o /home/your_images.tar
6.构建镜像(方法二)
(1) 编写Dockerfile
FROM centos:6.7 MAINTAINER Fisher "fisher@sudops.com" RUN /bin/echo 'root:123456' |chpasswd RUN useradd runoob RUN /bin/echo 'runoob:123456' |chpasswd RUN /bin/echo -e "LANG=\"en_US.UTF-8\"" >/etc/default/local EXPOSE 22 EXPOSE 80 CMD /usr/sbin/sshd -D
Dockerfile 指令解释:点此链接
(2)docker build 构建镜像
docker build -t runoob/centos:6.7 /home/docker
参数说明:
-t :指定要创建的目标镜像名
/home/docker :Dockerfile 文件所在目录,可以指定Dockerfile 的绝对路径
(3) 使用docker images 查看创建的镜像
7. 设置镜像标签
使用 docker tag 命令,为已有镜像添加一个新的标签
docker tag 860c279d2fec runoob/centos:dev
参数说明:
docker tag 镜像ID(这里是 860c279d2fec) 用户名/镜像源名(repository name)和新的标签名(tag)
8. 加载打包好的tar镜像文件
docker load -i -q my_images.tar
参数说明:
--input , -i : 指定导入的文件,代替 STDIN。
--quiet , -q : 精简输出信息。
Docker 容器使用
1.启动容器
docker run -it ubuntu /bin/bash nvidia-docker run -it ubuntu /bin/bash
参数说明:
-i: 交互式操作。
-t: 终端。
ubuntu: ubuntu 镜像名称
/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。
2.查看所有的容器
docker ps -a
3.启动已停止的容器
docker start b750bbbcfd88
4.停止容器
docker stop <容器 ID>
5.删除容器
docker rm -f 1e560fca3906
docker和主机数据传输
1.将主机./RS-MapReduce目录拷贝到容器30026605dcfe的/home/cloudera目录下
docker cp RS-MapReduce 30026605dcfe:/home/cloudera2.将容器30026605dcfe的/home/cloudera/RS-MapReduce目录拷贝到主机的/tmp目录中
docker cp 30026605dcfe:/home/cloudera/RS-MapReduce /tmp/
- 点赞
- 收藏
- 关注作者
评论(0)