• docker-基本操作命令,生成docker镜像包


    一、帮助启动类命令。

    1、启动,命令:systemctl start docker

    2、停止,命令:systemctl stop docker

    3、重启,命令:systemctl restart docker

    4、查看docker状态,命令:systemctl status docker

    5、开机启动,命令:systemctl enable docker

    6、查看docker概要信息,命令:docker info

    7、查看docker整体帮助文档,命令:docker --help

    8、查看docker命令帮助文档,命令:docker 具体命令 --help

    二、镜像命令。

    1、列出本地主机上的镜像,展示的是一个列表,表头含义如下:

    repository:表示镜像的仓库源

    tag:镜像的标签

    images ID:镜像ID

    created:镜像创建时间

    size:镜像大小

    命令:docker images

    -a:列出本地所有镜像(包括历史镜像)

    -q:只显示镜像ID

    2、某个×××镜像名字,展示的是一个列表,表头含义如下:

    name:镜像名称

    description:镜像说明

    stars:点赞数量

    official:是否是官方的

    automated:是否是自动构建的

    命令:docker search

    3、下载镜像,命令:docker pull 某个×××镜像名字,有两种命令:

    a.docker pull 镜像名字[:TAG]

    b.docker pull 镜像名字   没有tag就是最新版

    4、查看镜像/容器/数据卷所占的空间,命令:docker system df

    5、删除某个×××镜像名字ID(这里就不展示删除了),命令:docker rmi

    删除单个,命令:docker rmi  -f  镜像ID

    删除多个,命令:docker rmi  -f  镜像名1:TAG镜像名2:TAG

    删除全部,命令:docker rmi  -f  $(docker images -qa)

    三、容器命令。

    1、新建+启动容器,命令:docker [options] image [command] [ARG......]

    启动交互式容器(前端服务器)

    --name=“容器新名字”

    -d:后台运行容器

    启动交互式,命令:docker run -it

    -i:以交互模式运行容器  interactive

    -t:为容器重新分配一个为输入终端  tyy

    前台有伪终端,等待交互,命令:docker run -it Ubuntu bash/bin

    P:随机终端口映射,大写P

    p:指定终端口映射,小写p,常用此写法。

    2、列出当前所运行的容器,命令:docker -ps [options]

    常用命令:

    docker -ps -a:列出当前所有正在运行的容器+历史上运行过的

    docker -ps  -l:显示最近创建的容器

    docker -ps  -q:静默模式,只显示容器ID

    3、退出容器,有两种退出命令(这里不做展示)。

    a.exit:run进去容器,exit推出,容器停止。

    b.ctrl+p+q:run进去容器,ctrl+p+q退出,容器不停止。

    4、启动已经停止的容器,命令:docker start 容器ID或容器名

    5、重启容器,命令:docker restart 容器ID或容器名

    6、停止容器,命令:docker stop 容器ID或容器名

    7、强制停止容器,命令:docker kill 容器ID或容器名

    8、删除已停止的容器,命令如下:

    docker rm +容器ID,先停下来再删除

    docker rm -f   容器ID/容器名    强制删除

    一次性删除多个容器实例:docker rm -f   $(docker ps -a -q)

                                               docker ps -a -q | xargs docker rm

     9、启动守护式容器(后台服务器),命令:docker run -d 容器名

    docker run -it redis:6.0.8 前台交互式启动

    启动镜像,命令:docker run -it 容器id /bin/bash

    docker run -d redis:6.0.8 后台守护式启动

    10、查看容器日志,命令:docker logs 容器ID

    11、查看容器内运行的进程,命令:docker top 容器ID

    12、查看容器内部进程,命令:docker inspect 容器ID

    13、进入正在运行的容器并进行命令交互,命令:docker exec -it 容器ID bashshell

    重新进入,命令:docker attach 容器ID

    attach:直接进入容器启动命令的终端,不会启动新的进程,用exit退出,会导致容器停止。

    exec:是在容器中打开新的终端,不会启动新的进程,用exit退出,不会导致容器终止,一般推荐使用这一种。

    14、从文件拷贝内容到主机上,命令:docker cp 容器ID:容器内路径,目的主机路径

    15、导出和导入容器。

    export:导出容器的内容留作为一个tar归档文件(对应import命令)。

    import:从tar包中的内容创建一个新的文件系统再导入为镜像(对应export命令)。

    案例:

    docker export 容器ID > 文件名.tar

    cat 文件名.tar | docker import -镜像用户/镜像名:镜像版本号

    四、外网联通的情况下安装vim命令,docker容器内执行以下两条命令。

    1、apt-get update

    2、apt-get -y install vim

    四、生成docker镜像包

    第一步,基于pull的基本镜像环境,创建dockerfile

    ## 基础镜像java
     FROM openjdk:8u265
     ## 作者是
     MAINTAINER cookie
     ## 就是你上传的jar包的名称。给jar包起个别名
     ADD user-1.0.0.jar /app/user.jar
     ## 就是在容器中以多少端口号运行
     EXPOSE 7001
     ## 容器启动之后执行的命令,java -jar spring_boot.jar 即启动jar
     ENTRYPOINT ["java","-Dspring.profiles.active=test","-jar","-Xmx512m","-Xms512m","-Xmn200m","/app/user.jar"]

    第二步,启动镜像,进行测试

    docker run -d --restart=always --name xxxx -p 7001:7001   -v  服务器目录:容器目录  user:V1.0

    例:

    docker run -d --restart=always --name user -p 7001:7001 -v  /test/user/log:/app/log user:V1.0 

    进入docker容器命令

    docker exec -it  xxxx /bin/bash

    例:

    docker exec -it  user /bin/bash

    第三步,打包镜像,保存到服务器

    注意build后面的空格和点

    save docker的ID到默认路径下

    docker build -t xxxx:[tag] .

    docker save  xxxxx  > xxxx.tar

  • 相关阅读:
    跨越技术鸿沟,革新存储产业:华瑞指数云重磅发布下一代软件定义存储产品
    【华为上机真题 2022】字符串排序
    Zookeeper基础教程
    低/无代码的发展将显著改变银行开发生态
    Java基础 | 如何用Javadoc Tool写规范正确的java注释
    2022年湖北劳务资质如何办理?劳务资质不分等级
    虚拟与真实,交互与交易 | 你为什么喜欢元宇宙游戏?
    管外磁水处理器的简单介绍
    2024MathorCup A题 赛后思路代码分享(分赛区一等奖)移动通信网络中 PCI 规划问题
    Linux CentOS 操作手册记录
  • 原文地址:https://blog.csdn.net/weixin_46690278/article/details/132968062