• Docker


    一、常见命令

    1.查看docker启动容器报错的日志

    docker logs 97069f94437b
    
    • 1

    第二种
    97069f94437b为容器id

    docker inspect --format '{{.LogPath}}' 97069f94437b
    
    cat 返回的日志地址查看启动报错
    
    • 1
    • 2
    • 3

    2.docker exec -it <容器id> bash进入失败

    docker exec -it  <容器id> /bin/sh
    
    • 1

    3.构建镜像
    -f指定Dockerfile文件所在地址,-t指定tag,(.)点代表在当前目录构建,app.jar也在当前目录查找

    docker build -f /var/jenkins_home/workspace/Gitee-ruoyi-vue/Dockerfile  -t app:v1 . 
    
    • 1

    二、容器内时间不一致

    在这里插入图片描述

    启动容器命令加上

    -e TZ=Asia/Shanghai
    
    • 1

    三、DockerFile

    # jre基础环境
    FROM openjdk:8-jre-alpine
    
    # 维护者信息
    MAINTAINER awei
    
    # 解决时差8小时问题
    ENV TZ=Asia/Shanghai
    RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
    
    # 添加jar包到容器中 -- tips: app.jar 和 Dockerfile 在同一级
    ADD app.jar /home/
    
    # 对外暴漏的端口号
    # [注:EXPOSE指令只是声明容器运行时提供的服务端口,给程序员看有哪些端口,在运行时只会开启程序自身的端口!!]
    EXPOSE 8080
    
    WORKDIR /home
    
    # RUN🏃🏃
    CMD nohup java -jar /home/app.jar >> /home/app.log 2>&1 & \
        echo "****** 查看日志..." & \
        tail -f /home/app.log
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    四、Docker数据目录迁移

    参考链接

    https://developer.aliyun.com/article/785312
    
    • 1
    如何避免:

    1.在安装前对/var/lib/docker(docker默认数据存储目录)目录进行扩容;
    2.在docker安装完成后,修改docker默认存储位置为磁盘容量较大的位置;规避迁移数据过程中造成的风险。

    前置工作
    1. 在迁移前确认迁移的目标目录空间是否充足
    2. 在迁移时需停止docker服务,务必在平台不使用时进行迁移

    使用以下命令查询当前docker数据目录安装路径:

    docker info | grep "Docker Root Dir"
    
    • 1

    下文以 /mnt/disk/docker 这个路径作为要迁移的新 Docker 安装(存储)目录

    迁移方案

    方法一:软链接

    停掉Docker服务:

    systemctl stop docker 
    
    • 1

    根据上面查到的路径,移动整个/var/lib/docker目录到数据盘的目的路径(没有rsync命令时需安装rsync):

    rsync -avzP /var/lib/docker  /mnt/disk
    
    • 1

    参数解释:

    -a,归档模式,表示递归传输并保持文件属性。
    -v,显示rsync过程中详细信息。可以使用"-vvvv"获取更详细信息。
    -P,显示文件传输的进度信息。(实际上"-P"=“–partial --progress”,其中的"–progress"才是显示进度信息的)。
    -z, 传输时进行压缩提高效率。

    备份数据目录

    mv /var/lib/docker  /var/lib/docker.bak
    
    • 1

    添加软链接

    ln -s /mnt/disk/docker /var/lib/
    
    • 1

    重新启动docker

    systemctl start docker 
    
    • 1

    启动 Docker 之后,Docker 写入的路径依然是 /var/lib/docker ,但是因为软链接的设置,实际已经是往新的目录写入了。至此,完成了 Docker 安装(存储)目录的迁移。

    通过上述方法完成迁移之后,在确认 Docker 能正常工作之后,删除原目录备份数据:

    rm -rf /var/lib/docker.bak
    
    • 1
  • 相关阅读:
    Matlab的移动机器人导航遗传算法仿真分析寻优路径规划和种群进化曲线可视化
    基于AM335X开发板 ARM Cortex-A8——Acontis EtherCAT主站开发案例
    【pytorch学习笔记】01-安装与基础使用
    线程池的使用
    Python将原始数据集和标注文件进行数据增强(随机仿射变换),并生成随机仿射变换的数据集和标注文件
    Hadoop参数配置
    GODIVA论文阅读
    【Linux】UDP协议
    PostgreSQL的学习心得和知识总结(六十四)|关于PostgreSQL数据库 图式搜索(graph search)及递归查询 的场景说明
    Mellanox网卡工具使用说明
  • 原文地址:https://blog.csdn.net/RabirZuruzuru/article/details/134058083