我一直在阅读有关让 K8s 环境变量在 Next.js 应用程序中工作的其他问题,但到目前为止还没有公认的答案。
我的应用程序使用 .env.local 工作正常,但在部署到 K8s 时出现错误(未定义)。
这是我的 next.config.js
module.exports = {
env: {
NEXT_PUBLIC_API_BASE_URL: process.env.NEXT_PUBLIC_API_BASE_URL,
},
};
Run Code Online (Sandbox Code Playgroud)
K8s环境:
谁能帮助我让环境变量适用于我的 next.js 应用程序?
现在我做了一个简单的技巧,那就是在dockerfile上添加ARG和ENV,然后在构建docker镜像时注入它
Dockerfile:
ARG NEXT_PUBLIC_API_BASE_URL
ENV NEXT_PUBLIC_API_BASE_URL=${NEXT_PUBLIC_API_BASE_URL}
Run Code Online (Sandbox Code Playgroud) 我有一个网站,当我将浏览器缩小到 50%时,它可以完美运行 。但它在正常尺寸(100%)上非常糟糕。我已经在 CSS 上使用了 transform 和 zoom 但不是我想要的 CSS。由于某种原因,我无法减少字体或图像。我想要的只是让这个页面看起来像我将浏览器缩小 50%。
感谢你的帮助。
<style type="text/css">
.navbar-brand{
position: absolute;
width: 100%;
left: 0;
text-align: center;
margin:0 auto;
}
.navbar-toggle {
z-index:3;
}
.dropbtn {
background-color: #4CAF50;
color: white;
padding: 16px;
font-size: 16px;
border: none;
cursor: pointer;
}
.dropdown {
position: relative;
display: block;
}
.dropdown-content {
display: none;
position: absolute;
right: 0;
background-color: #f9f9f9;
min-width: 160px;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
z-index: 1;
}
.dropdown-content a …Run Code Online (Sandbox Code Playgroud)我已经使用两个 docker 映像成功地对我的应用程序进行了 dockerize,一个用于 nginx,第二个用于应用程序,并且它运行良好,因为我使用 docker compose。现在我只想拥有一个包含应用程序和 nginx 的 Dockerfile,然后在我的本地计算机上运行它。我怎样才能做到这一点?
这是我的nginx/default.conf
# Cache zone
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=STATIC:10m inactive=7d use_temp_path=off;
upstream nextjs {
server nextjs:3000;
}
server {
listen 80 default_server;
server_name _;
server_tokens off;
gzip on;
gzip_proxied any;
gzip_comp_level 4;
gzip_types text/css application/javascript image/svg+xml;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
# BUILT ASSETS (E.G. JS BUNDLES)
# Browser cache - max cache headers from Next.js as build id in url
# …Run Code Online (Sandbox Code Playgroud)