Docker容器时区调整操作

 更新时间:2020年11月21日 14:53:50   作者:肥胖症晚期患者  
这篇文章主要介绍了Docker容器时区调整操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

如何检查Docker容器时区是否与宿主机一致?

1、进入宿主机, 执行以下命令:

# 查看宿主机时间

[root@localhost ~]# date

2018年 06月 27日 星期三 22:42:44 CST

2、进入到容器中,执行以下命令

# 查看容器时间

root@lksjoid909090:/#date

Wed Jul 27 14:43:31 UTC 2018

CST应该是指(China Shanghai Time,东八区时间)

UTC应该是指(Coordinated Universal Time,标准时间)

可以发现,他们相隔了8小时, 宿主机与Docker容器时区不一致。

解决方案:

1、【镜像未生产前】基础镜像 在 Dockerfile 中设置时区:

ENV TZ=Asia/Shanghai

RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

2、【镜像生成后 && 容器未创建】 创建并启动容器时:

# 共享主机时间

docker run --name <name> -v /etc/localtime:/etc/localtime:ro ...

3、【镜像生成后 && 容器启动】 容器外,宿主机中修改:

docker cp /etc/localtime [容器ID或者NAME]:/etc/localtime

4、【镜像生成后 && 容器启动】 容器中

apk add tzdata

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime echo "Asia/Shanghai" > /etc/timezone

补充知识:docker命令报错error during connect: Get http://2F2F.2Fpipe2Fdocker_engine/v1.36/containers/json: open//.

执行docker ps报错

error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.36/containers/json: open //./pipe/docker_engine: The system cannot find the file specified. In the default daemon configuration on Windows, the docker client must be run elevated to connect. This error may also indicate that the docker daemon is not running.

报错信息如下:

解决方法

1.执行命令:

docker-machine env default

2.方法一:

将显示的命令复制出来进行执行

执行完后,再执行docker ps等命令,即可正常使用

3. 方法二:

只将最后一句

REM @FOR /f “tokens=*” %i IN (‘docker-machine env default') DO @%i

命令去掉REM进行执行,即执行

@FOR /f "tokens=*" %i IN ('docker-machine env default') DO @%i

执行完后,docker命令就可以正常使用了,每新开一个cmd窗口都需要先设置环境变量。

注意:在bat脚本中使用方法二时,直接将FOR语句放入bat脚本中运行会报错,将命令中的%i改为 %%i。

以上这篇Docker容器时区调整操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 使用 kind 和 Docker 启动本地的 Kubernetes环境

    使用 kind 和 Docker 启动本地的 Kubernetes环境

    这篇文章主要介绍了使用 kind 和 Docker 启动本地的 Kubernetes环境,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • docker daemon远程连接设置详解

    docker daemon远程连接设置详解

    本篇文章主要介绍了docker daemon远程连接设置详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • 在docker上安装运行mysql实例

    在docker上安装运行mysql实例

    Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 AUFS 类的 Union FS 等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。
    2017-01-01
  • 详解ASP.NET Core 网站在Docker中运行

    详解ASP.NET Core 网站在Docker中运行

    本篇文章主要介绍了详解ASP.NET Core 网站在Docker中运行,非常具有实用价值,需要的朋友可以参考下
    2017-05-05
  • 分享8个基本的Docker容器管理命令

    分享8个基本的Docker容器管理命令

    本文给大家分享8个基本的Docker容器管理命令,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
    2018-06-06
  • 解决Docker中的error during connect异常情况

    解决Docker中的error during connect异常情况

    这篇文章主要介绍了解决Docker中的error during connect异常情况,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • 详解使用阿里云镜像仓库构建国外Docker镜像

    详解使用阿里云镜像仓库构建国外Docker镜像

    这篇文章主要介绍了详解使用阿里云镜像仓库构建国外Docker镜像,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • Docker搭建本地私有仓库的详细步骤

    Docker搭建本地私有仓库的详细步骤

    本篇文章主要介绍了Docker搭建本地私有仓库的详细步骤,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-02-02
  • Docker容器磁盘占满的一些情况汇总

    Docker容器磁盘占满的一些情况汇总

    这篇文章主要给大家介绍了关于Docker容器磁盘占满的一些情况,文中通过示例代码介绍的非常详细,对大家学习或者使用Docker具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • docker环境下安装jenkins容器的详细教程

    docker环境下安装jenkins容器的详细教程

    这篇文章主要介绍了docker环境下安装jenkins容器的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05

最新评论