• Docker 常用命令


    一.Docker进程管理

    sudo apt-get install -y docker.io(安装docker)
    systemctl start docker(开启)
    systemctl stop docker (关闭)
    systemctl restart docker(重启)
    systemctl status docker(查看状态)
    systemctl enable docker(设置开机自启)
    docker version(版本信息)
    docker info(查看doker详细信息

    二.镜像操作

    1.打包镜像(必须写好Dockerfile文件,然后将需要打包的资源与Dockerfile放在当前打包的目录)      

    1. #1.打包命令
    2. docker build -t imageName -f Dockerfile .
    3. #2.Dockefile文件例子
    4. FROM openjdk:8
    5. VOLUME /tmp
    6. ARG applicationName
    7. ENV TimeZone=Asia/Shanghai
    8. RUN ln -snf /usr/share/zoneinfo/$TimeZone /etc/localtime && echo $TimeZone > /etc/timezone
    9. EXPOSE 8080
    10. COPY applicationName-0.0.1-SNAPSHOT.jar app.jar
    11. ENTRYPOINT ["java","-jar","/app.jar"]

    Dockerfile 常用命令

      FROM       设置基础镜像

      MAINTAINER 维护者信息 (MAINTAINER xxxx@qq.com)

      ENV        运行容器时的环境变量 

      ARG        用户构建镜像时使用的变量,镜像建立完成后就失效

      COPY       复制本地文件到容器目录中,只能从docker所在的主机读取资源 (COPY . . 指令是将项目中的当前目录复制到镜像中的工作目录)

      ADD        拷贝文件,不同COPY的是,在拷贝压缩文件到目标目录下的时候会自动解压,可以通过URL远程服务器读取主机上的资源

      VOLUME     创建一个具有指定名称的挂载数据卷,用于指定持久化目录,通常用来实现容器与宿主机之间的文件共享功能

    1. #指定容器中的/var/log挂载到宿主机的/var/data目录,等同于docker run时的参数-v /var/data:/var/log
    2. VOLUME var/data /var/log

      WORKDIR    工作目录,如多次使用相对路径,则从上到下连接,还可以解析ENV定义的变量,相当于cd

      EXPOSE     暴露容器运行时的端口(在run时候不指定的情况下),以及通信协议,如TCP|UDP(EXPOSE 80/TCP | EXPOSE 80/UDP)

      RUN        在当前镜像之上的新层中执行命令,并且提交结果,在docker build时运行

      CMD

      ENTRYPOINT 与CMD一样,都是在指定容器启动程序以及参数, 如运行我们打包的jar的命令为 java -jar  application.jar,该指令配置为:ENTRYPOINT ["java","-jar","/application.jar"]  

     ps: 在指令中变量的使用:$Variable

    2.查看镜像  

    docker images

    3.删除镜像  

    1. docker rmi -f imageName (删除单个)
    2. docker rmi -f imageName1|imageID1 imageName2|imageID2 imageName2|imageID2 .....

    4.搜索镜像

    docker search imageName

    5.拉取镜像

    1. docker pull imageName
    2. docker pull imageName:tag

    6.启动镜像(启动后为容器)

    docker run -p ip:hostPort:containerPort imageID

     7.查看镜像构建历史  

    docker history imageName|imageID

    三.容器操作

    1.查看容器  

    1. 1.查看所有容器
    2. docker ps -a
    3. 2.查看正在运行的容器
    4. sudo docker ps

    2.进入容器 (必须在容器启动下)

    1. docker exec -it  containerName|containerID  /bin/bash
    2. docker attach   containerName|containerID

    3.退出容器

    exit

    4.容器的启动关闭

    1. docker start containerName|containerID
    2. docker stop containerName|containerID
    3. docker restart containerName|containerID
    4. docker kill containerName|containerID (杀死容器)

    5.容器文件拷贝

    1. 1.由容器内往容器外拷贝
    2. docker cp containerName|containerID 容器内路径  容器外路径
    3. 2.由容器外往容器内拷贝
    4. docker cp containerName|containerID 容器外路径  容器内路径

    6.修改容器名称

    docker rename containerName|containerID newContainerName

     7.删除容器 

    1. docker rm containerName|containerID (删除单个容器)
    2. docker rm imageName1|imageID1 imageName2|imageID2 imageName2|imageID2 .....

    8.查看docker磁盘使用情况 

    docker system df

    9.查看容器内部细节 

    docker inspect containerName|containerID

    10.查看容器内的进程  

    docker top containerName|containerID
  • 相关阅读:
    uniapp学习笔记之知识点大总结
    matlab二维曲面散点图插值方法
    基于ABP实现DDD--实体创建和更新
    分类预测 | MATLAB实现SSA-CNN-GRU-Attention数据分类预测(SE注意力机制)
    Kubernetes-进阶(Pod生命周期/调度/控制器,Ingress代理,数据存储PV/PVC)
    机器学习入门(七)神经网络--代价函数、前向反向传播算法及问题
    请输入一个整数
    公司大数据智能管理平台密码不正确 Hue平台进不去
    随手记:uniapp图片展示,剩余的堆叠
    如约而至 拼多多发布2022“众声创作者计划”冬日书单
  • 原文地址:https://blog.csdn.net/qq_37778018/article/details/126938341