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

相关推荐
帷幄庸者1 小时前
跨网的Kubernetes集群:从零构建混合云架构
容器·架构·kubernetes
bepeater12341 小时前
使用Kubernetes部署Spring Boot项目
spring boot·容器·kubernetes
比奇堡派星星1 小时前
sed命令
linux·运维·服务器·开发语言
程序员zgh1 小时前
Linux 内存管理单元 MMU
linux·运维·服务器·c语言·开发语言·c++
比奇堡派星星1 小时前
linux基础命令
运维
Trouvaille ~2 小时前
【Linux】TCP协议基础与连接管理详解:从三次握手到四次挥手
linux·运维·服务器·网络·c++·网络协议·tcp/ip
终生成长者2 小时前
Kubernetes常用操作与概念总结--从服务器导出mongo数据,并下载到本地
服务器·容器·kubernetes
UP_Continue3 小时前
Linux--动静态库
linux·运维·服务器
CheungChunChiu3 小时前
Linux 音频系统全景解析:PipeWire、PulseAudio 与 ALSA 的层次关系
linux·运维·服务器·audio
你真是饿了3 小时前
7.进程间通信
linux·运维·服务器