docker 常用操作命令_docker命令大全

docker 常用操作命令_docker命令大全Docker常用命令使用1容器生命周期管理1.1dockerrun1.2dockerstart/stop/restart1.3dockerkill1.4dockerpause/unpause1.5dockerexec1.6dockerrm2容器操作2.1dockerps2.2dockerinspect2.3dockerlogs-查看docker容器日志2.4dockerexport2.5dockerport3本地镜像管理3.1dockerima

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1 容器生命周期管理

1.1 docker run

  • run命令用于运行一个新容器
# docker run语法
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
OPTIONS Description
-d 后台运行容器,并返回容器ID
–name 为容器指定一个名称    —name 容器名称   或   —name=容器名称 (两个 –  )
-p 指定端口映射,格式为:主机(宿主)端口:容器端口  或  对外暴露端口:容器(项目)端口
-m 设置容器使用内存最大值
-i 以交互模式运行容器,通常与 -t 同时使用
-t 为容器重新分配一个伪输入终端,通常与 -i 同时使用

1.2 docker start/stop/restart

  • 启动、停止、重启容器
# 语法:
# 启动容器
docker start [OPTIONS] CONTAINER [CONTAINER...]
# 停止容器
docker stop [OPTIONS] CONTAINER [CONTAINER...]
# 重启容器
docker restart [OPTIONS] CONTAINER [CONTAINER...]

1.3 docker kill

  • 强制终止容器
# 语法
docker kill [OPTIONS] CONTAINER [CONTAINER...]
# -s :向容器发送一个信号

杀掉运行中的容器tomcat(指定容器名称)
        docker kill -s KILL tomcat

杀掉运行中的容器(指定容器id)
        docker kill -s kill 3a5b

1.4 docker pause/unpause

  • 暂停、恢复所有容器进程
# 语法
# 1.暂停容器中所有的进程
docker pause CONTAINER [CONTAINER...]

# 1.恢复容器中所有的进程
docker unpause CONTAINER [CONTAINER...]

暂停数据库容器mysql;提供服务
        docker pause mysql
恢复数据库容器 mysql提供服务
        docker unpause mysql

1.5 docker exec

  • 在运行的容器中执行命令(一般是进入容器内的bash)
# 语法
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]

-d :分离模式: 在后台运行

-i :即使没有附加也保持STDIN 打开

-t :分配一个伪终端

进入docker里面的mysql(伪终端,exit退出,不影响正常运行)
  docker exec -it mysql bash
  mysql -uroot -p
  输入mysql的密码即可

1.6 docker rm

  • 删除一个或多个容器,默认只能删除非运行状态的容器
    •   -f参数可以强制删除(非强制,需先docker stop,后docker rm)
# 语法 
docker rm [OPTIONS] CONTAINER [CONTAINER...]

-f :通过 SIGKILL 信号强制删除一个运行中的容器。

-l :移除容器间的网络连接,而非容器本身。

-v :删除与容器关联的卷。

删除多个容器
    docker rm CONTAINER_id1 CONTAINER_id2
删除全部容器
    docker rm -f ($docker ps -aq)

2 容器操作

2.1 docker ps

  • 列出容器相关信息
OPTIONS Description
-a 参数可以查看所有状态的容器
-s 显示总的文件大小
-f 根据条件过滤显示的内容
–format 指定返回值的模板文件
-l 显示最近创建的容器
-n 列出最近创建的n个容器
–no-trunc 不截断输出
–q 静默模式,只显示容器编号

docker ps # 默认是查看,正在运行的docker容器

2.2 docker inspect

  • 用于查看容器的配置信息,包含容器名、环境变量、运行命令、主机配置、网络配置和数据卷配置等
# 语法 
docker inspect [OPTIONS] CONTAINER|IMAGE|TASK

-f :指定返回值的模板文件

-s :显示总的文件大小

--type :为指定类型返回JSON

# 获取容器mysql的信息
docker inspect mysql

2.3 docker logs-查看docker容器日志

  • 用于查看容器的日志,它将输出到标准输出的数据作为日志输出到docker logs命令的终端上。常用于后台型容器
$ docker logs [OPTIONS] CONTAINER
  Options:
        --details        显示更多的信息
    -f, --follow         跟踪实时日志
        --since string   显示自某个timestamp之后的日志,或相对时间,如42m(即42分钟)
        --tail string    从日志末尾显示多少行日志, 默认是all
    -t, --timestamps     显示时间戳
        --until string   显示自某个timestamp之前的日志,或相对时间,如42m(即42分钟)

实例:

# CONTAINER_ID:可以是容器完整id或容器名称
# 查看指定时间后的日志,只显示最后100行
docker logs -f -t --since="2022-02-08" --tail=100 CONTAINER_ID

# 查看最近30分钟的日志:
docker logs --since 30m CONTAINER_ID

# 查看某时间之后的日志:
docker logs -t --since="2022-02-08T13:23:37" CONTAINER_ID

# 查看某时间段日志:
docker logs -t --since="2022-02-08T13:23:37" --until "2022-02-09T12:23:37" CONTAINER_ID

2.4 docker export

  • 将容器打包,导出为tar文件格式
# 语法
docker export [OPTIONS] CONTAINER

实例:将id为746300e14aa4的容器按日期保存为tar文件
docker export -o mysql-`date +%Y%m%d`.tar 746300e14aa4

ls mysql-`date +%Y%m%d`.tar      >>     mysql-20211228.tar

2.5 docker port

  • 输出容器与宿主机端口映射的信息
语法: docker port CONTAINER [PRIVATE_PORT[/PROTO]]
实例:查看容器mysql的端口映射情况。

docker port mysql
>>>		 3306/tcp -> 0.0.0.0:3001

3 本地镜像管理

3.1 docker images

  • 列出本地所有的镜像
语法: docker images [OPTIONS] [REPOSITORY[:TAG]]

-a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层);

--digests :显示镜像的摘要信息;

-f :显示满足条件的镜像;

--format :指定返回值的模板文件;

--no-trunc :显示完整的镜像信息;

-q :只显示镜像ID

# 默认显示所有容器,(一般情况下)相当于docker images -a
docker images

3.2 rmi

  • 删除一个或多个镜像
# 语法
docker rmi [OPTIONS] [IMAGE...]

-f :强制删除;

--no-prune :不移除该镜像的过程镜像,默认移除;

docker rmi -f ($docker images -aq)删除全部镜像
docker rmi -f mysql   删除mysql镜像

docker image rm mysql    一次只能删除一个镜像

3.3 docker build

  • 常用参数解释: docker build [OPTIONS] PATH | URL | –
OPTIONS Description
-f Dockerfile的名称(默认为“ PATH / Dockerfile”)
-t,–tag 指定构建的镜像名和 tag

3.4 docker save

  • 将指定镜像保存成 tar 归档文件
# 语法 
docker save [OPTIONS] IMAGE [IMAGE...]

实例:将镜像mysql生成mysql.tar文档
docker save -o mysql.tar mysql
ll mysql.tar

3.5 docker load

  • 将打包的镜像导入
# 语法
docker load [OPTIONS]

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

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


# 实例
# 导入一个打包好的的msyql镜像
docker load < mysql.tar
docker images

文章参考文档

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/192352.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • docker下载安装教程_安卓安装docker

    docker下载安装教程_安卓安装docker前言Docker提供轻量的虚拟化,你能够从Docker获得一个额外抽象层,你能够在单台机器上运行多个Docker微容器,而每个微容器里都有一个微服务或独立应用,例如你可以将Tomcat运行在一个D

    2022年7月29日
    3
  • docker新建镜像_docker基础镜像和项目镜像

    docker新建镜像_docker基础镜像和项目镜像Docker创建镜像、修改、上传镜像–创建镜像有很多方法,用户可以从DockerHub获取已有镜像并更新,也可以利用本地文件系统创建一个。一、创建镜像创建镜像有很多方法,用户可以从Do

    2022年8月2日
    7
  • 黑群晖docker清理缓存_群晖Docker半洗白 不关机快速修改sn/mac方法

    黑群晖docker清理缓存_群晖Docker半洗白 不关机快速修改sn/mac方法老版本Docker下载地址:https://archive.synology.com/download/Package/spk/Docker/17.05.0-0401/Docker-x64-17.05.0-0401.spkDSM_DDSM_25426.pat下载地址:https://cndl.synology.cn/download/DSM/release/6.2.3/25426/DSM_DDS…

    2022年6月11日
    102
  • docker的端口映射_外网远程桌面端口映射

    docker的端口映射_外网远程桌面端口映射Docker端口映射实现网络访问首先,大家如果看到有什么不懂的地方,欢迎吐槽!!!我会在当天或者第二天及时回复,并且改进~~Docker运行容器之后却发现没IP,没端口,那要如何访问容器呢?下面我来介绍下Docker通过端口映射来实现网络访问一、从外部访问容器应用在启动容器的时候,如果不指定对应参数,在容器外部是无法通过网络来访问容器内的网络应用和服务的。当容器中运行一些网络应用,要让外部访问这些应用时,可以通过-P或-p参数指定端口映射。先来说说p和P吧-p可以指定要映射的端口,并

    2022年10月9日
    0
  • 不同宿主机docker 通信_如何设置同网段IP

    不同宿主机docker 通信_如何设置同网段IP依赖包net-toolsiproute2bridge-utilsgitcurl权限需要在root下执行脚本dnet.shj脚本内容#likebr0要创建的桥接设备名BRNAME=$1#likeeth0要矫健的网络接口名IFNAME=$2#192.168.1.2/24当前主机IPLOCALIP=$3#192.168.1.1当前主机…

    2022年8月20日
    4
  • docker-jenkins安装node

    docker-jenkins安装node容器直接使用脚本安装报错执行如下命令即可解决gitconfig–global–unsethttp.proxygitconfig–global–unsethttps.proxy后续安装参考https://blog.csdn.net/qq_28686911/article/details/113114894

    2022年5月24日
    86

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号