目录

1.docker构建问题

常见docker清理方法

2.时区问题 

3.开放2375端口主机被黑


1.docker构建问题

场景描述:在准备用以下命令将springboot项目构建一个镜像放在docker容器中运行

docker build -t springboot-delivery .

问题详细:Error response from daemon: Error processing tar file(exit status 1): write /logs/all/all.log.2021-11-03: no space left on device

问题分析: 图中可以看出提示的是磁盘空间不够用了

查看docker的目录

docker info

进一步查看了对应目录的磁盘情况,发现磁盘空间确实有点小

查看inode是够用的

 

 解决方案:更改docker目录 如果没有下面这个文件就新建一个

vim /etc/docker/daemon.json 

执行下面命令重启docker服务

systemctl daemon-reload
systemctl restart docker.service

docker info 看一下发现已经改过来了

有洁癖ed人一般选择删掉就目录,反正我是这么做的

rm -rf /var/lib/docker

常见docker清理方法

        docker system df 类似于Linux上的df命令,用于查看Docker的磁盘使用情况:

        docker system prune 可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络,以及dangling镜像(即无tag的镜像)。

        docker system prune -a 清理得更加彻底,可以将没有容器使用Docker镜像都删掉。注意,这两个命令会把你暂时关闭的容器,

 然后重新在构建一遍镜像试试?

 参考原文:docker “no space left on device”问题定位解决 - charlieroro - 博客园

参考原文2:修改 docker 默认存储路径(Docker Root Dir)_77wpa的博客-CSDN博客

2.时区问题 

问题描述:容器启动后,发现日志的时间和系统当前时间对不上

问题原因:没有设定时区

解决方法:在Dockerfile 添加这两句

RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo "Asia/Shanghai" > /etc/timezone

完整的Dockerfile文件参考: 

FROM ascdc/jdk8
MAINTAINER huachun
EXPOSE 9527

RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo "Asia/Shanghai" > /etc/timezone

COPY ./delivery-0.0.1-SNAPSHOT.jar /data

ADD delivery-0.0.1-SNAPSHOT.jar  delivery-0.0.1-SNAPSHOT.jar

ENTRYPOINT ["java","-jar","delivery-0.0.1-SNAPSHOT.jar"]

另一种解决方法: run 的时候加上参数

-e TZ="Asia/Shanghai"

 例如:

docker run -e TZ="Asia/Shanghai"  -p 9526:9527 -d --name springboot-delivery-9526 springboot-delivery

还有一种方法: 在Dockerfile中添加 ENV TZ=Asia/Shanghai

FROM ascdc/jdk8
MAINTAINER huachun
EXPOSE 9527

COPY ./delivery-0.0.1-SNAPSHOT.jar /data

ADD delivery-0.0.1-SNAPSHOT.jar  delivery-0.0.1-SNAPSHOT.jar

ENTRYPOINT ["java","-jar","delivery-0.0.1-SNAPSHOT.jar"]

ENV TZ=Asia/Shanghai

3.开放2375端口主机被黑

背景说明:今天上午干活干的好好的突然收到一个信息,说是主机被攻击

后来通过提工单逐步排查发现是因为我之前在部署portainer-ce时候开放了这个端口 

将/usr/lib/systemd/system/docker.service中的2375端口这行注释掉 ,这个是我之前自己加的...

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐