Docker常用命令

Stella981
• 阅读 411

1. 查看Docker版本

$ docker version

它用于查看Docker的客户端和服务器版本。

2. 从Docker文件构建Docker映像

$ docker build -t image-name docker-file-location

_-t_:它用于指定使用提供的名称来标记Docker映像。

3. 运行Docker映像

$ docker run -d -it --privileged `image-name` /usr/sbin/init

_-d_:用于创建守护程序进程。

4. 查看可用的Docker映像

$ docker images

5. 查看最近的运行容器

$ docker ps -l

_-l_:它用于显示最新的可用容器。

6. 查看所有正在运行的容器

$ docker ps -a

_-a_:它用于显示所有可用的容器。

7. 停止运行容器

$ docker stop container_id

_container_id_:由Docker分配给容器的Id。

8.搜索可用的docker镜像
docker search image-name

9. 删除一个映像

$ docker rmi image-name

10. 删除所有映像

$ docker rmi $(docker images -q)

docker中批量删除 tag为none的镜像
docker images|grep none|awk '{print $3}'|xargs docker rmi =====================================================================================

11. 强制删除所有映像

$ docker rmi -f $(docker images -q)

_-f_:用于强制删除映像。

12. 删除所有容器

$ docker rm $(docker ps -a -q)

13. 进入Docker容器

`$ docker exec -it container-id bash

14.下载docker镜像,注意:这里要写用docker search搜索到的完整的镜像名。
`

docker pull image-name

15.提交当前修改后的状态,保存为镜像

docker commit 容器id 新的镜像名称,运行完返回新版本镜像的id号

16. 推送Docker映像

以下命令用于将docker映像推送到docker中心资源库。

$ docker push username/image-name

需要登录您的Docker中心的帐户。如果还没有Docker中心的帐户,请先创建它。

$docker login 先登入

17.建一个新容器并登入:docker run -i -t IMAGE id /bin/bash    启动一个退出的容器:docker start 容器ID        进入到已经运行中的容器:docker attach 容器ID

18. 挂载数据卷,运行一个普通的容器,用来同步数据
   docker run -v  (主机要共享的目录):(容器上同步的目录)  --name (指定数据卷容器的名称) centos /bin/bash
   冒号前为宿主机目录,必须为绝对路径,冒号后为镜像内挂载的路径。默认挂载的路径权限为读写。如果指定为只读可以用:ro,以 / 开头表示为绝对路径
   运行:docker run -v /home/wpb:/home/wpb  --name dataname centos /bin/bash

  docker容器内对应的挂载目录中,运行命令ls后提示:

  ls: cannot open directory .: Permission denied

  在运行容器的时候,给容器加特权,及加上 --privileged=true 参数  docker run -d -v /home/wpb:home/wpb --privileged=true --name dataname centos

19.运行一个新的容器启用镜像,并使用这个数据卷,这样就做到了文件夹文件的同步,运行完成后,进入镜像中
   docker run -it --volumes-from 卷名称 镜像名称
   --volumes-from用来指定要从哪个数据卷来挂载数据,镜像名称:需要启用的镜像
   docker run -it --volumes-from dataname centos /bin/bash

20.当前镜像保存为.tar文件

  docker save 镜像id> /文件保存在主机的目录/文件保存的名称.tar

21. 在其他安装好docker的linux系统上载入新的镜像
    docker load --input /文件路径/文件名称.tar

22.启动docker服务

  systemctl start docker.service

可选:设置开机启动:systemctl enable docker

23. tag修改镜像名称

docker tag

--privileged=true

点赞
收藏
评论区
推荐文章
秃头王路飞 秃头王路飞
5个月前
webpack5手撸vue2脚手架
webpack5手撸vue相信工作个12年的小伙伴们在面试的时候多多少少怕被问到关于webpack方面的知识,本菜鸟最近闲来无事,就尝试了手撸了下vue2的脚手架,第一次发帖实在是没有经验,望海涵。languageJavaScript"name":"vuecliversion2","version":"1.0.0","desc
blmius blmius
1年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
技术小男生 技术小男生
5个月前
linux环境jdk环境变量配置
1:编辑系统配置文件vi/etc/profile2:按字母键i进入编辑模式,在最底部添加内容:JAVAHOME/opt/jdk1.8.0152CLASSPATH.:$JAVAHOME/lib/dt.jar:$JAVAHOME/lib/tools.jarPATH$JAVAHOME/bin:$PATH3:生效配置
光头强的博客 光头强的博客
5个月前
Java面向对象试题
1、请创建一个Animal动物类,要求有方法eat()方法,方法输出一条语句“吃东西”。创建一个接口A,接口里有一个抽象方法fly()。创建一个Bird类继承Animal类并实现接口A里的方法输出一条有语句“鸟儿飞翔”,重写eat()方法输出一条语句“鸟儿吃虫”。在Test类中向上转型创建b对象,调用eat方法。然后向下转型调用eat()方
刚刚好 刚刚好
5个月前
css问题
1、在IOS中图片不显示(给图片加了圆角或者img没有父级)<div<imgsrc""/</divdiv{width:20px;height:20px;borderradius:20px;overflow:h
小森森 小森森
5个月前
校园表白墙微信小程序V1.0 SayLove -基于微信云开发-一键快速搭建,开箱即用
后续会继续更新,敬请期待2.0全新版本欢迎添加左边的微信一起探讨!项目地址:(https://www.aliyun.com/activity/daily/bestoffer?userCodesskuuw5n)\2.Bug修复更新日历2.情侣脸功能大家不要使用了,现在阿里云的接口已经要收费了(土豪请随意),\\和注意
晴空闲云 晴空闲云
5个月前
css中box-sizing解放盒子实际宽高计算
我们知道传统的盒子模型,如果增加内边距padding和边框border,那么会撑大整个盒子,造成盒子的宽度不好计算,在实务中特别不方便。boxsizing可以设置盒模型的方式,可以很好的设置固定宽高的盒模型。盒子宽高计算假如我们设置如下盒子:宽度和高度均为200px,那么这会这个盒子实际的宽高就都是200px。但是当我们设置这个盒子的边框和内间距的时候,那
艾木酱 艾木酱
5个月前
快速入门|使用MemFire Cloud构建React Native应用程序
MemFireCloud是一款提供云数据库,用户可以创建云数据库,并对数据库进行管理,还可以对数据库进行备份操作。它还提供后端即服务,用户可以在1分钟内新建一个应用,使用自动生成的API和SDK,访问云数据库、对象存储、用户认证与授权等功能,可专
Wesley13 Wesley13
1年前
01.Docker安装MongoDB
1.查询MongoDB镜像dockersearchmongo1.拉取MongoDB镜像dockerpullmongo拉取指定版本镜像dockerpullmongo:3.41.启动MongoDB容器dockerrunp27017:27017namemym
Stella981 Stella981
1年前
MAC docker启动参数修改
启动docker,漏加16020端口,怎么修改呢?1\.Dockerps看一下idCONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTS
helloworld_28799839 helloworld_28799839
5个月前
常用知识整理
Javascript判断对象是否为空jsObject.keys(myObject).length0经常使用的三元运算我们经常遇到处理表格列状态字段如status的时候可以用到vue