43 lines
2.1 KiB
YAML
43 lines
2.1 KiB
YAML
# action.yml
|
||
name: "build docker image and push to code"
|
||
description: "build docker image and push to simcu code"
|
||
runs:
|
||
using: "composite"
|
||
steps:
|
||
- uses: docker://node:24
|
||
with:
|
||
entrypoint: "/bin/bash"
|
||
args: |
|
||
-c "export https_proxy=http://100.100.13.14:8118 && \
|
||
export http_proxy=http://100.100.13.14:8118 && \
|
||
npm pkg set version=${{ github.ref_name }} && \
|
||
npm ci && \
|
||
|
||
# 关键:构建时强制开启 HISTORY 模式
|
||
echo 'VITE_ROUTER_MODE=history' > .env.production && \
|
||
|
||
npm run build-only"
|
||
|
||
- uses: docker://ubuntu:latest
|
||
with:
|
||
entrypoint: "/bin/bash"
|
||
args: |
|
||
-c 'echo "FROM nginx:alpine" > Dockerfile && \
|
||
echo "COPY dist /usr/share/nginx/html" >> Dockerfile && \
|
||
echo "WORKDIR /usr/share/nginx/html/" >> Dockerfile && \
|
||
|
||
# 关键:Nginx 配置,解决刷新 404(去掉 # 必须加)
|
||
echo "RUN echo \"server {\" > /etc/nginx/conf.d/default.conf" >> Dockerfile && \
|
||
echo "RUN echo \" listen 80;\" >> /etc/nginx/conf.d/default.conf" >> Dockerfile && \
|
||
echo "RUN echo \" server_name localhost;\" >> /etc/nginx/conf.d/default.conf" >> Dockerfile && \
|
||
echo "RUN echo \" root /usr/share/nginx/html;\" >> /etc/nginx/conf.d/default.conf" >> Dockerfile && \
|
||
echo "RUN echo \" index index.html;\" >> /etc/nginx/conf.d/default.conf" >> Dockerfile && \
|
||
echo "RUN echo \" location / {\" >> /etc/nginx/conf.d/default.conf" >> Dockerfile && \
|
||
echo "RUN echo \" try_files \$uri \$uri/ /index.html;\" >> /etc/nginx/conf.d/default.conf" >> Dockerfile && \
|
||
echo "RUN echo \" }\" >> /etc/nginx/conf.d/default.conf" >> Dockerfile && \
|
||
echo "RUN echo \"}\" >> /etc/nginx/conf.d/default.conf" >> Dockerfile && \
|
||
|
||
echo "已构建支持无 # 路由的 Dockerfile" && \
|
||
cat Dockerfile'
|
||
|
||
- uses: actions/docker-build-push@main |