今天来把昨天写的页面进行容器化的动作,首先撰写Dockerfile
# static build
FROM node:14.17.6 As Builder
WORKDIR /homelab
COPY . .
RUN npm install
RUN npm run build
# using nginx hosting
FROM nginx:latest
COPY default.conf /etc/nginx/conf.d/
COPY --from=Builder /homelab/build /usr/share/nginx/html/
根据上述的内容可以看到,因为前端的页面编译出来的结果是属於纯静态的档案,所以我们会需要搭配另外的http server进行hosting。
常见的http server 有很多种 ex. apache、httpd、Nginx、haproxy,这边使用Nginx做一个简单的搭配设定
修改/etc/nginx/conf.d/default.conf
server {
listen 80;
listen [::]:80;
server_name localhost;
#access_log /var/log/nginx/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html;
try_files $uri /index.html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
接着执行build image的指令
docker build -t homelab-nginx:dev .
一个简单的打包就这麽完成了。
这些reverse proxy其实都还有相当大的参数调整空间,可以用来效能调校,或是根据security规范进行特别的设定。而我这里就只是让他能跑起来而已啦XD
>>: ASP.NET MVC 从入门到放弃 (Day1) -基本语言介绍
太鼓达人 教学原文参考:太鼓达人 这篇文章会大量使用「阵列」的操作,搭配「变数」、「逻辑判断」、「点...
在人脸辨识的兴盛下,如同科技进步一般,水能载舟,亦能覆舟,有如此多的优点也会也缺点,如先前讲的隐私权...
各种商务情境都在思考如何融入 AI 提供更适切的智慧化服务,在Day 04 : 以资料为中心的人工智...
在 Day 1 时,我们有稍微提到了 Home Lab 可以使用一般的桌上型电脑来建置,那今天我们要...
情境 在做大数据分析时,由於需要从几千万甚至几亿笔资料中做运算,应用程序就整个不能动,若中间机器有要...