linux时间修正、docker时间修正、jar时间修正、mysql时间修正

linux时间修正、docker时间修正、jar时间修正、mysql时间修正

1.linux时间修正

date:查看当前时间
date -R: 查看当前时区

linux时间修正命令:cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime (指定时区)

2.docker时间修正、指定时区

创建容器时: 推荐
两种方式
(1) -v /etc/localtime:/etc/localtime 挂载后 容器时间和系统时间一致
(2) -v /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime 挂载上海时区 给 容器 (即指定容器的时区)

已有容器:
进入容器后:执行 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

3.jar时间修正、指定时区

服务器时间正常后,jar运行的时间也可能不正常!!!
两种处理方式:
java -jar -Duser.timezone=Asia/Shanghai (指定时区)
java -jar -Duser.timezone=GMT+08 (指定时区)

new Date()时间获取的是服务器的TZ timezone时间 不是/etc/localtime 所以就算服务器时间正常也可能会出问题 加上启动参数即可

4.java 连接数据库驱动时间

&serverTimezone=GMT%2B8 即用 GMT+08时区传输时间 但是像 使用函数 now()、CURRENT_TIMESTAMP等 获取的仍是mysql自己的时间

5.mysql时间修正

set global time_zone = ‘+8:00’; #修改mysql全局时区为上海时间,即我们所在的东8区。
set time_zone = ‘+8:00’; #修改当前会话时区
flush privileges; #立即生效 要退出连接或会话!!!等一两分钟 !!

### 使用 Docker 部署 Vue 和 Spring Boot 组成的前后端分离项目 #### 准备工作环境 为了成功部署基于Vue和Spring Boot的应用程序,需准备如下软件环境: - **操作系统**:CentOS 7.9 或其他兼容Linux发行版。 - **Docker 版本**:18.09.4 及以上版本[^2]。 - **Docker Compose 安装**:通过命令 `sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-\`uname -s\`-\`uname -m\` -o /usr/local/bin/docker-compose` 来安装docker-compose工具[^4]。 #### 打包前端与后端应用 对于前端Vue部分,在构建阶段会生成一个名为`dist`的新文件夹于项目根目录下。此过程通常由npm脚本执行,如`npm run build`。完成后可将该文件夹内的静态资源压缩为ZIP格式以便后续处理[^1]。 针对后端Spring Boot组件,则应确保其被打包成标准的jar/war形式,并放置在一个易于访问的位置供Docker镜像使用。 #### 编写 Dockerfile 文件 编写两个独立的Dockerfile用于定义各自服务的基础映像及其配置参数。以下是简化后的例子: ##### 后端 (Spring Boot) 的 Dockerfile 示例: ```dockerfile FROM openjdk:8-jdk-alpine VOLUME /tmp ARG JAR_FILE=target/*.jar COPY ${JAR_FILE} app.jar ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] ``` ##### 前端 (Vue.js) 的 Dockerfile 示例: ```dockerfile FROM node:lts-alpine as build-stage WORKDIR /app COPY package*.json ./ RUN npm install COPY . . RUN npm run build FROM nginx:alpine COPY --from=build-stage /app/dist /usr/share/nginx/html EXPOSE 80 CMD ["nginx", "-g", "daemon off;"] ``` #### 创建 docker-compose.yml 文件 利用docker-compose可以更方便地管理多个关联的服务实例。下面是一个简单的组合示例,它包含了Nginx作为反向代理来分发请求给对应的微服务节点。 ```yaml version: '3' services: backend: image: springboot-app-image-name ports: - "8080:8080" environment: SPRING_DATASOURCE_URL: jdbc:mysql://db:3306/dbname?useSSL=false&serverTimezone=UTC depends_on: - db frontend: image: vue-app-image-name ports: - "80:80" db: image: mysql:5.7 volumes: - db_data:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: examplepassword MYSQL_DATABASE: dbname volumes: db_data: ``` 上述设置中,`backend`, `frontend`以及`db`代表三个不同的容器化应用程序;其中数据库容器被赋予了一个持久卷以保存数据防止丢失[^3]。 #### 构建并启动服务 进入包含有`docker-compose.yml`文件的工作空间,依次运行以下指令完成整个系统的初始化操作: ```bash cd path/to/project/root docker-compose down # 如果之前存在旧版本则先停止它们 docker-compose up -d # 开始新建或更新现有服务到最新状态 ``` 这样就可以实现一次性的自动化部署流程了。每次当业务逻辑有所变动时只需重复最后两步动作即可快速迭代上线新特性或者修正错误。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值