推广 热搜: page  音视频  使用  个数  搜索引擎  选择  父亲  百度  企业  可以 

Docker 入门 ------ 基本命令

   日期:2024-12-31     作者:p8wnt    caijiyuan   评论:0    移动:http://ww.kub2b.com/mobile/news/17030.html
核心提示:主要命令: docker pull NAME[:TAG] 使用images查看已有镜像 docker images 使用tag命令添加镜像标签 docker tag [已有镜像] [新

主要命令:

docker pull NAME[:TAG]

使用images查看已有镜像

docker images

使用tag命令添加镜像标签

docker tag [已有镜像] [新镜像名]

整体来说,docker tag命令添加的标签实际上起到了类似链接的作用.

使用inspect查看详细信息

docker inspect [镜像名]

docker inspect -f {{“.Architecture”}}

使用history查看历史镜像

docker history [镜像名]

docker search [名称]

支持的命令:

名称默认作用–automatedfalse仅显示自动创建的镜像–no-truncfalse输出信息不截断-s,–star0指定星级以上的镜像

docker rmi [镜像名]

docker commit [OPTIONS] ConTAINER [REPOSITORY[:TAG]]

OPTIONS内容:

  • -a,–author=“”,表示作者信息
  • -c,–change=[],表示提交时候执行的DockerFile指令
  • -m,–message=“”,表示消息
  • -p,–pause=true,表示提交时暂停容器运行

本地模板导入

cat [本地模板] | docker import - [自己定义的镜像名]

存出镜像

载入镜像

docker push NAME[:TAG] | [REGISTERY_HOST[:REGISTRY_HOST]/]NAME[:TAG]

首先再Docker Hub先创建一个仓库:

然后为你需要提交的镜像打一个标签注意!!这里标签需要对应你所建立的仓库名

  1. create

docker create -it ubuntu:latest // 创建,但是并不会运行
docker ps -a // 查看目前存在的容器

  1. 启动容器
  1. 新建并且创建容器
    除了创建容器后通过start命令来启动,也可以执行新建并且创建,所需命令主要为 等价于,先再

docker run ubuntu /bin/echo ‘hello world’

重点:所执行的操作

  • 检查本地是否存在指定的镜像,不存在就从公有镜像中下载
  • 利用镜像创建一个容器,并且启动
  • 分配一个文件系统给容器,并在只读的镜像层外面挂在一个可读写层
  • 从宿主主机配置的网桥接口中桥接一个虚拟接口到容器中
  • 从网桥的地址池配置一个IP地址给容器
  • 执行用户特定的程序应用
  • 执行完毕后容器被自动终止。
  • 125:Docker daemon 执行错误,例如制定了不支持的Docker命令参数
  • 126:所指定命令无法执行,例如权限错误
  • 127:容器内命令无法找到
  1. 守护态运行

在Docker中可以使用docker stop来终止一个运行中的容器。

docker stop [id]

docker restart // 重新启动

2.3.1 attach命令

docker attach [–detach-keys[=[]]] [–no-stdin] [–sig-proxy[=true]] 容器名

描述选项

命令描述–detach-keys退出attach的快捷键,默认是CTRL-p CTRL-q–no-stdin是否关闭标准输入,默认true–sig-proxy是否代理收到的系统信号给进程,默认true

使用attach命令有时候并不方便,多个窗口同事attach连接到同一个容器的时候,所有窗口都会显示同步,所以当阻塞时,便无法使用了

2.3.2 exec命令

docker exec [OPTIONS] 容器名

这里我们主要说几个重要的OPTIONS

命令描述-i,–interative打开标准输入接受用户输入命令,默认为false–privileged是否给执行命令最高权限,默认false-t,–tty分配伪终端,默认false-u,–user=“”执行命令的用户名或者ID

docker rm [OPTIONS] 容器名|容器ID

这里我们主要说几个重要的OPTIONS

命令描述-f,–force是否强行终止并且删除一个容器-l,–link删除容器的链接,但保留容器-v,–volumes删除容器挂在数据卷

2.5.1. 导出容器

docker export [-o | --output[=“”]] 容器名 // -o表示导出的tar文件名

2.5.2 导入容器

**和load的区别:**load来导入到本地镜像库,import导入一个到本地镜像库,容器快照文件会丢弃所有的历史记录和元数据信息,而镜像存储文件将保存完整记录,体积因此更大。

仓库是集中存放镜像的地方,分

操作步骤

  1. 创建并登录Docker Hub,以及目标网站:*在目标网站中连接帐户到Docker Hub
  2. 在Docker Hub中配置一个“自动创建”
  3. 选取一个目标网站中的项目(需包含Dockerfile)和分支
  4. 指定Dockerfile位置,并提交创建

可以通过官方提供的: 来搭建
默认仓库创建在容器的目录下,可以通过来修改。

容器管理数据的两种主要方式

  1. 数据卷
  2. 数据卷容器

4.1.1 在容器内创建

docker run -d -P --name web -v /webapp training/webapp python app.py

-v标记可以。上述代码表示使用镜像创建一个web容器,并创建一个数据卷挂载到容器的目录
表示容器服务暴露的端口,自动映射到本地的临时端口。

4.1.2 挂载一个主机目录作为数据卷

docker run -d -P --name web -v /src/webapp:/opt/webapp training/webapp python app.py

表示加载主机的/src/webapp目录到容器的/opt/webapp目录

docker run -d -P --name web -v /src/webapp:/opt/webapp:ro training/webapp python app.py

默认的数据卷是读写模式,可以增加表示为只读

4.1.3 挂在一个本地主机文件作为数据卷

docker run --rm -it -v ~/.bash_history:/.bash_history ubuntu /bin/bash

docker run -it -v /dbdata --name dbdata ubuntu // 创建一个dabata数据卷容器 并且创建一个数据卷挂载到/dbdata
ls // 查看/dbdata

可以使用-v在其他容器中来挂载dbdata容器中的数据卷

docker run -it -v dbdata --name db1 ubuntu
docker run -it -v dbdata --name db2 ubuntu

这样三个容器在任何一方在该目录下的写入,其他容器都可以看到。

可以多次使用 --volumes-from|-v 参数来从多个容器挂载多个数据卷,还可以从其他已经挂载了容器卷的容器来挂载数据卷。

最后:注意!如果要删除一个数据卷,必须在删除最后一个还挂载着它的容器时显式使用命令来指定删除关联的容器

本文地址:http://ww.kub2b.com/news/17030.html     企库往 http://ww.kub2b.com/ ,  查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类最新文章
0相关评论

文章列表
相关文章
最新动态
推荐图文
最新文章
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号