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 设置或者挂载宿主机的时区文件。

相关推荐
峰顶听歌的鲸鱼3 小时前
Kubernetes介绍和部署
运维·笔记·云原生·容器·kubernetes·学习方法
信创天地3 小时前
自动化运维利器赋能信创:Ansible与SaltStack在国产系统的部署与批量管理实战
运维·自动化·ansible
东城绝神4 小时前
《Linux运维总结:基于ARM64+X86_64架构使用docker-compose一键离线部署MySQL8.0.43 NDB Cluster容器版集群》
linux·运维·mysql·架构·高可用·ndb cluster
creator_Li4 小时前
即时通讯项目--(1)环境搭建
linux·运维·ubuntu
Ka1Yan4 小时前
Docker:基本概念与快速入门
运维·docker·容器
文静小土豆6 小时前
Rocky Linux 二进制 安装K8S-1.35.0高可用集群
linux·运维·kubernetes
小技工丨6 小时前
华为TaiShan 200 2280 ARM服务器虚拟化部署完整指南
运维·服务器·arm开发
糠帅傅蓝烧牛肉面7 小时前
单实例多MCP聚合服务:两种实现方案深度对比
前端·docker·ai
403240737 小时前
[Jetson/Ubuntu 22.04] 解决挂载 exFAT 硬盘报错 “unknown filesystem type“ 及只读权限问题的终极指南
linux·运维·ubuntu
零意@8 小时前
debian如何把新编译的内核镜像替换原来的内核
运维·debian·更新内核版本·linux内核版本更新·debian更新内核