Docker

一、常见命令

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

docker logs 97069f94437b

第二种
97069f94437b为容器id

docker inspect --format '{{.LogPath}}' 97069f94437b

cat 返回的日志地址查看启动报错

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

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

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

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

二、容器内时间不一致

在这里插入图片描述

启动容器命令加上

-e TZ=Asia/Shanghai

三、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

四、Docker数据目录迁移

参考链接

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

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

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

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

docker info | grep "Docker Root Dir"

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

迁移方案

方法一:软链接

停掉Docker服务:

systemctl stop docker 

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

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

参数解释:

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

备份数据目录

mv /var/lib/docker  /var/lib/docker.bak

添加软链接

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

重新启动docker

systemctl start docker 

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

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

rm -rf /var/lib/docker.bak
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值