您当前的位置: 首页 >  docker

cuiyaonan2000

暂无认证

  • 0浏览

    0关注

    248博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Docker常用命令整理

cuiyaonan2000 发布时间:2021-08-18 16:48:04 ,浏览量:0

序言

整理下常用的命令cuiyaonan2000@163.com

全局操作

#显示当前docker的版本号 docker -v

容器镜像操作

#查看所有存在的惊喜那个 docker images

#删除容器,要删除镜像必须要先删除容器 docker rm  id/tag

#删除镜像 docer rmi id/tag

#搜索命令还是很常用的,可以看到官方的和个人制作的镜像,节省我们很多时间

docker search 镜像名称

创建容器

#创建镜像的一个实例

  • -p指定端口映射 具体含义: ip:hostPort:containerPort
  • -d表示以守护线程运行
  • --name可以指定容器名称

docker run  --name 容器名称 -d -p 8000:8080 镜像tag:version

#启动一个存在的容器 docker start 容器名称

#关闭一个运行中的容器 docker stop 容器名称

#注意创建过得容器并不会消失,如果停用了可以使用 docker ps -a

#在启动docker容器的时候通过参数 -e 加入环境变量 docker run -d --name test2 {镜像名} -e REDIS_HOST=192.1.1.0

#容器内文件映射到容器外,如下使用 -v 将/var/opt/mssql映射到容器外的/data路径下

docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=密码" -u 0:0 -p 1433:1433 --name mssql -v /data:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2019-latest

日志操作

#查看日志 docker logs [OPTIONS] CONTAINER   Options:         --details        显示更多的信息     -f, --follow         跟踪实时日志         --since string   显示自某个timestamp之后的日志,或相对时间,如42m(即42分钟)         --tail string    从日志末尾显示多少行日志, 默认是all     -t, --timestamps     显示时间戳         --until string   显示自某个timestamp之前的日志,或相对时间,如42m(即42分钟)       #查看指定时间后的日志,只显示最后100行: $ docker logs -f -t --since="2018-02-08" --tail=100 CONTAINER_ID   #查看最近30分钟的日志: $ docker logs --since 30m CONTAINER_ID   #查看某时间之后的日志: $ docker logs -t --since="2018-02-08T13:23:37" CONTAINER_ID   查看某时间段日志: $ docker logs -t --since="2018-02-08T13:23:37" --until "2018-02-09T12:23:37" CONTAINER_ID

进入容器内部

# Docker内部 # /bin/bash  或者 /bin/sh #/bin/sh与/bin/bash虽然大体上没什么区别,但仍存在不同的标准 #-it的说明如下所示 OPTIONS说明:   -d :分离模式: 在后台运行   -i :即使没有附加也保持STDIN 打开   -t :分配一个伪终端 $ sudo docker exec -it 容器ID /bin/bash

容期间的操作

通过--link来连接当前容器与另一个已经存在容器,使他们能互相通信

语法 --link :alias     

 container-name/container-id为源容器的container-name/container-id,alias为源容器在link下的别名   

如下的例子是kibana需要从elasticsearch获取相关的索引故此需要通信

docker run --name kibana --link=elasticsearch:test -p 5601:5601 -d kibana:7.2.0

容器与宿主之间的文件传递

从容器中将文件拷贝出来的命令:dokcer cp 容器名称:容器目录 需要拷贝的文件或目录 宿主机向Docker容器传送文件: docker cp 本地文件的路径 container_id:  

镜像下载与读取

将镜像保存成tar文件夹

docker save [OPTIONS] IMAGE [IMAGE...]

实例:
将镜像 runoob/ubuntu:v3 生成 my_ubuntu_v3.tar 文档
docker save -o my_ubuntu_v3.tar.gz runoob/ubuntu:v3

从tar文件夹中上传镜像

docker load [OPTIONS]

OPTIONS 说明:

--input , -i : 指定导入的文件,代替 STDIN。

--quiet , -q : 精简输出信息。


示例:
docker load -i busybox.tar.gz
已建容器的挂载信息
docker inspect 容器ID/容器名称

如下binds 前面的/app/rancher/registries.yam是容器外的文件 对应容器内的文件/etc/rancher/k3s/registries.yam.

如下在binds中的是 通过 -v 容器外文件夹或者文件路径:容器内文件夹或者文件路径 来实现的.

 如下的mounts 是直接使用 -v 容器外文件夹或者文件路径(省去了容器内的文件夹或者文件路径) 来默认挂载到 docker 容器内的

/var/lib/docker/volumes 文件夹下,后面的2层路径都是自动创建的以用于唯一性不同的挂在.

  • source是容器内的路径
  • destination是容器外的路径

给已经运行的容器添加命令参数如--restart=unless-stopped

docker container update 命令用于更新一个或多个容器的配置。

docker container update [OPTIONS] CONTAINER [CONTAINER...]



实例:
docker container update restart=unless-stopped 容器id可以有多个

 

关注
打赏
1638267374
查看更多评论
立即登录/注册

微信扫码登录

0.0429s