技术文章 | 基于阿里的Node全栈之路(一)部署Docker
程序员文章站
2022-07-10 10:39:34
...
本文来源于阿里云-云栖社区,原文点击这里。
在经历多次项目技术改革,现在的技术架构基本稳定下来了。一个人的开发不容易啊,想在这里分享下自己的一些想法和走过的一些坑,希望能够帮助到大家。下面放下我现在的技术架构。
Docker是个好东西,虽然阿里出了函数计算,但在使用的时候,发现还是缺乏些火候,而且现在的函数计算还是比较适合高CPU型api,鄙见鄙见~
阿里docker的流程:
- 创建ali的code仓库
- 创建docker镜像
- 创建docker容器服务
- 创建docker的时候,阿里会自动部署负载均衡(https的放在下个文章更新)
一般,我的项目结构是这样的:
- -project
- -api // 项目的api
- -app // React-Native,移动端
- -www // 项目主页
- -admin // 项目后端管理系统
- -h5 // 宣传H5
- -Dockerfile // 部署api使用
贴上我的api的通用dockerfile
FROM node:7
MAINTAINER Mumudeveloper
#hardcode
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN yarn global add forever
# Create www directory
RUN mkdir -p /api
COPY ./api /api
# Install www dependencies
WORKDIR /api
RUN yarn install
EXPOSE 7001
# Define default command.
ENTRYPOINT forever start -l forever.log -a index.js && tail -f ~/.forever/forever.log
好!重点来了,敲黑板!
大家注意到我这一行没有,嗯,这是我跑docker的时候遇到的第一个坑啦!
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
去年,做了一个中间商平台,订单是按照时间来定价格了,一个时间一个价格,因为市场是波动的,当时我怀抱着一种很开心很高兴觉得自己很流逼的心情,把项目部署在docker上。部署完后,高高兴兴的睡觉了,因为明天还要上班呢!突然凌晨1点,合作方打电话过来,很急很急的样子,一接电话,我的心都凉了,晚上提交的几千订单,时间错误!!!
急急忙忙的起身,查bug,现在想来都心塞塞...orz...
推荐阅读
-
Win10系统提示丢失xinput13dll的解决方法
-
C#使用EF连接PGSql数据库的完整步骤
-
java中final修饰符的使用方法
-
Win10录屏的文件在哪 Win10录屏功能用法介绍
-
Spring Boot报错:No session repository could be auto-configured, check your configuration的解决方法
-
C#比较时间大小的方法总结
-
Win7系统IE分级审查如何设置?Win7系统IE分级审查设置的方法
-
SQL临时表递归查询子信息并返回记录的代码
-
磁盘缓存专题之一 缓存命中和缓存未命中&缓存与缓冲间的差异
-
sqlserver 查询数据库大小的方法