内容目录
还原数据库
使用文件夹db中对应的sql还原
调整appsettings.json
修改sln名称
用于区分不同项目
修改api项目名称
用于区分镜像仓库
修改端口 [当前5]
launchSettings.json
Program.cs
dev_run.bat
Dockerfile
调整 第三行 端口
FROM registry.cn-shanghai.aliyuncs.com/wivstn/dotnet-base:6.0 AS base
WORKDIR /app
EXPOSE 9102
调整项目名称
调整前端
调整启动端口 和自动打开浏览器
调整后端接口地址
解压并安装
api 文件夹 运行 VolPro.WebApi 下的 builder_run.bat
web.vite 文件夹 运行 install.bat 然后 build.bat
发布
粘贴镜像仓库地址,具体的仓库名称推送后会自动出现
例如:填写 registry.cn-shanghai.aliyuncs.com/chenglai
得到
registry.cn-shanghai.aliyuncs.com/chenglai/dkpwebapi
项目有可能不识别自带的 dockerfile , 可以右键 添加 docker 支持 , 重新打开项目
添加域名解析,前端后端2个
准备后端发布脚本(每一行都要调整)
docker pull registry.cn-shanghai.aliyuncs.com/chenglai/XXXXX:latest
docker stop XXXXX
docker rm XXXXX
sudo docker run -d -p 19100:910XXXXXX --restart always -v volupload:/app/Upload -v volwwwupload:/app/wwwroot/Upload -v /etc/localtime:/etc/localtime:ro -e TZ=Asia/Shanghai --name XXXXX registry.cn-shanghai.aliyuncs.com/chenglai/XXXXX:latest
发布前端
linux上新增如下地址
web.vite运行build
把dist文件夹下内容复制过去
配置nginx
调整所有的 名称和地址为对应项目
server {
listen 80;
server_name dkp.chenglai.net;
location ~ /.well-known/acme-challenge/ {
allow all;
root /usr/share/nginx/html; # 确保这是 Certbot 配置的 webroot 路径
try_files $uri =404; # 直接尝试返回请求的文件,如果不存在则返回404
}
# Redirect all HTTP requests to HTTPS
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl;
server_name dkp.chenglai.net;
ssl_certificate /etc/letsencrypt/live/dkp.chenglai.net/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/dkp.chenglai.net/privkey.pem;
# SSL configurations
ssl_session_cache shared:le_nginx_SSL:10m;
ssl_session_timeout 10m;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
root /var/www/dkp;
index index.html;
location / {
try_files $uri $uri/ /index.html;
}
}
server {
listen 80;
server_name dkpapi.chenglai.net;
location ~ /.well-known/acme-challenge/ {
allow all;
root /usr/share/nginx/html; # 确保这是 Certbot 配置的 webroot 路径
try_files $uri =404; # 直接尝试返回请求的文件,如果不存在则返回404
}
# Redirect all HTTP requests to HTTPS
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl;
server_name dkpapi.chenglai.net;
ssl_certificate /etc/letsencrypt/live/dkp.chenglai.net/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/dkp.chenglai.net/privkey.pem;
# SSL configurations
ssl_session_cache shared:le_nginx_SSL:10m;
ssl_session_timeout 10m;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://localhost:19100;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
https证书
更多请查看 https://blog.chenglai.net/archives/73
sudo certbot certonly \
--webroot --webroot-path=/usr/share/nginx/html \
--agree-tos --email 527993075@qq.com \
-d dkp.chenglai.net -d dkpapi.chenglai.net\
--cert-name dkp.chenglai.net \
--key-type ecdsa
复制 .gitignore .gitattributes
时区调整
sudo docker run -d -p 19100:9101 --restart always --network erp_network -v volupload:/app/Upload -v volwwwupload:/app/wwwroot/Upload -v /etc/localtime:/etc/localtime:ro -e TZ=Asia/Shanghai --name erp_api registry.cn-shanghai.aliyuncs.com/chenglai/volprowebapi:latest
留言