Docker入门-镜像、容器、仓库简单命令

镜像

1.获取镜像
docker pull dl.dockerpool.com:5000/ubuntu:14.04(dl.dockerpool.com为注册服务器,5000为端口号,ubuntu为仓库名称,14.04是镜像也是版本号)
2.查看镜像信息
docker images(列出本地主机已有的所有镜像)
更改变迁信息
docker tag dl.dockerpool.com:5000/ubuntu:latest ubuntu:latest
docker inspect 000(000为镜像ID,显示这个镜像的详细信息)
3.搜寻镜像
docker search mysql (输出信息包括镜像名字、描述、星级、是否为官方创建、是否自动创建
4.删除镜像
docker rmi dl.dockerpool.com:5000/ubuntu:latest
注:当有该镜像创建的容器存在时,镜像文件默认是无法删除的,所以删除镜像前最好是删除所有依赖该镜像的容器,请不要用强制删除。
5.创建镜像
有三种方法:
a. 基于已有镜像的容器创建
docker commit -m “add new image”-a "" 000(容器ID) test(新建image name)

b. 基于本地模板导入

cat ubuntu-14.04-x86_64-minimal.tar.gz | docker import - ubuntu:14.04

c. 基于dockerfile创建
6.存出镜像
docker save -o ubuntu_14.04.tar ubuntu:14.04
7.载入镜像

docker load --input ubuntu_14.04.tar 或者

docker load < ubuntu_14.04.tar

8.上传镜像
docker push user/test:latest(user用户需要在dockerHub网站注册)

容器

容器是镜像的一个运行实例,但它带有额外的可写层

1.创建容器

docker create -it ubuntu:12.04

2.创建并启动容器

docker run -it ubuntu:12.04 /bin/bash

3.守护态运行

docker run -d ubuntu:12.04

4.查看容器信息

docker ps [-a -q 查看终止状态]

5.获取容器的输出信息

docker logs cet(cet是容器ID前三个字符)

6.终止容器

docker stop cet

7.启动容器

docker start cet

8.重启容器

docker restart cet

9.进入容器

1) attach命令

docker attach nostalgic(nostalgic是docker的name)

缺点:所有窗口同步显示

2) exec命令

docker exec -it 243... /bin/bash (243...为docker ID)

3) nsenter命令

a)找PID

PID=$(docker-pid 243..)

b)通过PID链接容器

nsenter --target $PID --mount --uts --ipc --net --pid

10.删除容器

docker rm [-f -l -v] cet

-f 强行终止并删除

-l 删除容器的链接,保留容器

-v 删除挂载的数据卷

11.导出容器

docker export cet >test.tar

12.导入容器(将容器快照导入到本地镜像库)

cat test.tar | docker import - test/ubuntu:v1.0(重新指定标签为ubuntu的镜像名称,v1.0的版本号

docker load 也可以导入镜像存储文件到本地镜像库,他比import方式的好处是:import导入镜像快照文件将丢失所有的历史记录和元数据信息。

**注:**通过导出容器和导入容器可以实现容器迁移(拷贝文件)


仓库

仓库是集中存放镜像的地方,一个注册服务器上有很多仓库,一个仓库中有很多镜像。
1. 登录
docker login

2. 基本操作

查找、上传、下载

3. 自动创建

4. 查看镜像

http://www.dockerpool.com/downloads

5. 更新镜像标签

docker tag dl.dockerpool.com:5000/ubuntu:12.04 ubuntu:12.04(将前面的镜像更改为ubuntu:12.04)

6. 创建私有仓库

docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry(自动下载并启动registry容器,创建本地的私有仓库服务,默认仓库船舰的容器在/tmp/registry,可以通过-v参数来存放到指定路径上)

7.管理私有仓库镜像

假设私有仓库地址为10.0.2.2,端口为5000,

docker tag ubuntu:14.04 10.0.2.2:5000/test(更改标签名)

docker push 10.0.2.2:5000/test(push镜像,会自动push到10.0.2.2地址的机器上)

curl http://10.0.2.2:5000/v1/search(查看仓库10.0.2.2:5000中是否含有test镜像)

docker pull 10.0.2.2:5000/test(在任何一台能访问到10.0.2.2地址的机器上下载镜像)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值