docker 入门

1. linux安装 docker

 1 #查看内核的版本
 2 uname -r(>=3.1.0 3 #查看centos版本
 4 cat /etc/redhat-release(>=6.5)
 5 #安装依赖
 6 yum install -y  yum-utils  device-mapper-persistent-data   lvm2
 7 #给yum 设置稳定的仓库员源
 8  yum-config-manager \
 9                --add-repo \
10                 https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
11 #开始安装 12 yum install -y docker-ce(新版的18.09docker是docker-ce) 13 #启动docker 14 systemctl restart docker

2. 卸载docker(centos上)

1 #查找docker安装包
2 yum list installed | grep docker
3 #将查询到的包全部删除
4 yum remove package(包)
5 #删除保存镜像的文件
6 rm -rf    /var/lib/docker

3. docker 三要素

镜像

容器

仓库

4. docker镜像

docker的基石,一般由Dockerfile生成,https://hub.docker.com/ docker hub网站存放各种镜像,可以直接使用

docker镜像的基本操作

# 搜索镜像
docker search hello-world(一般可以直接去docker hub上去搜各种详细带标签的镜像)

#从docker hub 上面拉取hello-world镜像 docker pull hello-world #查看本地所有的镜像 docker images docker iamges -q 只显示镜像id

# 查看镜像的历史层数
docker history hello-world

#查看镜像的详细信息
docker inapect hello-world
#删除某个镜像 docker rmi hello
-world(-f 强制删除) # 删除所有的镜像 docker rmi $(docker images -aq) #注册docker hub 账户 账户名假设为xiaoxiaohui #给镜像 打tag docker tag hello-world xiaoxiaohui/hello-world #将该镜像推送到自己的仓库 docker push xiaoxiaohui/hello-world

默认推送到docker hub 仓库镜像,如果自己有其他仓库地址 需要先登录 docker login 地址

#镜像的导入导出
将已有的镜像保存为一个文件
docker save hello-world -o 文件名
将文件导出为镜像 docker load -i 文件名


 默认情况 docker pull  都是从docker 官网下载镜像,由于docker 官网下载很慢,需要我们自己配置其他的镜像加速器,aliyun提供免费的加速器每个人镜像加速器的地址不一样 去aliyun官网可以会找到

 

5. 镜像的构建

两种方法

docker commit 命令 基于已有的容器构建镜像,不推荐

Dockerfile 一种文件 详细描述该镜像如何构建 docke build . 

Dockerfile 如何书写 见下一篇

6.容器

容器在镜像的基础上加了一个可写层,是基于镜像模板创建出来的一个个实例

 容器是基于镜像生成的

#启动容器,进入容器中
docker run -it hello-world --name myhello-world  /bin/bash
-it 表示交互式容器 
-d 守护式(后台运行)创建
--name  给容器起的名字,没有--name  系统会自动给容器命名
docker run 就等于  docker create + docker start  创建并开启容器

#docker ps查看正在运行的容器
-a 所有的
-l 最近的
-n  num 限制指定的个数
-q 只显示 容器id
docker ps -a | grep helo-world


#退出容器
exit  关闭斌退出
ctrl+p+q 不关闭退出

#容器处于pause就需要启动容器
docker start  容器名(id)
#暂停容器
docke pause id
#停止容器
docker  stop id
#杀死容器
docker kill id 
#删除容器
docker rm  -f  hello-world 
docker rm -f  $(docker ps -aq) 删除所有的容器
-f 强制删除正在运行的容器

#进入容器 
docker exec -it 容器名  /bin/bash  启动新的进程 退出时容器在后台运行
docker attach  id 进入容器的终端 不启动新的进程 退出的时候容器也停止

#查看容器的运行日志
docker logs id
-f  实时监控
--tail 10  显示最后10行

#看出端口映射情况
docker port id

7. docker容器和主机之间的文件传输

   1. 根据容器长id传输: 拿到长id docker inspect  id(不推荐)

       主机传入容器:docker cp  主机路径 容器长id:容器路径

       容器传到主句:docker cp  容器长id:容器路径 主机路径

   2. 利用volume 挂载主机

docker run -it  ubuntu -v my-volume:/hostname /bin/bash  容器中的/hostname 目录 将和主机/var/lib/docker/volumes/my-volume/_data 同步

 

 

 

转载于:https://www.cnblogs.com/fayuzhang/p/11136022.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值