docker里修改时间为上海时间

要在 Docker 容器中将时间修改为上海时间,你可以通过以下步骤来实现:

  1. 启动容器时设置时区

    你可以在启动容器时通过挂载宿主机的时区文件来设置:

    bash 复制代码
    docker run -v /etc/localtime:/etc/localtime:ro -v /etc/timezone:/etc/timezone:ro your_image
  2. 在 Dockerfile 中设置时区

    如果你有自己的 Dockerfile,可以在其中设置时区:

    dockerfile 复制代码
    FROM your_base_image
    
    RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
        echo "Asia/Shanghai" > /etc/timezone
  3. 在容器内部手动设置时区

    如果容器已经在运行,你可以进入容器并手动设置:

    bash 复制代码
    docker exec -it your_container_name /bin/bash
    ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
    echo "Asia/Shanghai" > /etc/timezone

通过这些方法,你可以将 Docker 容器的时间设置为上海时间。

docker里修改的时间是永久生效吗, 即便重启。

在 Docker 容器中通过上述方法设置的时区通常是永久生效的,即便重启容器也会保持。

具体来说:

  1. 挂载宿主机的时区文件:这种方式会在每次启动时自动应用宿主机的时区设置,因此是永久生效的。

  2. 在 Dockerfile 中设置时区:通过 Dockerfile 设置的时区会在容器镜像构建时生效,所有基于该镜像启动的容器都会使用该时区。

  3. 在容器内部手动设置:这种方式在容器重启后依然有效,因为更改的是容器内部的配置文件。

如果你需要确保时区设置持久有效,建议使用 Dockerfile 设置或者挂载宿主机的时区文件。

相关推荐
夜月yeyue几秒前
Linux 文件设备类型分析
linux·运维·网络·单片机
Insist7533 分钟前
基于 ceph-deploy 部署 Ceph 集群
运维·服务器·ceph
柒.梧.5 分钟前
高频Nginx面试题(含详细解析,面试必看)
运维·nginx·面试
躲在没风的地方6 分钟前
异常执行顺序
java·运维·服务器·spring boot
白狐_7987 分钟前
硬核实战:从零构建飞书 × OpenClaw 自动化情报站(一)
运维·自动化·飞书
IMPYLH12 分钟前
Bash 的 basenc 命令
linux·运维·服务器·bash·shell
白狐_79821 分钟前
硬核实战:从零构建飞书 × OpenClaw 自动化情报站(四)
运维·自动化·飞书
退役小学生呀22 分钟前
OpenClaw落地智能运维助手
运维·人工智能·ai
宋明河27 分钟前
写了一个小工具,在Get k8s 资源的yaml只看自己改过的配置参数,过滤默认的以及附加的参数
云原生·容器·kubernetes
IMPYLH28 分钟前
Linux 的 arch 命令
linux·运维·服务器·bash