From 9b8fbbd6fb28d38a8830817a991c90457d7f50ea Mon Sep 17 00:00:00 2001 From: "StarsL.cn" Date: Sat, 5 Nov 2022 03:01:25 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=89=8D=E7=AB=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Makefile | 6 +- vue-consul/vue.config.js | 9 ++- vue-consul/vue.config.js.old | 133 +++++++++++++++++++++++++++++++++++ 3 files changed, 144 insertions(+), 4 deletions(-) create mode 100644 vue-consul/vue.config.js.old diff --git a/Makefile b/Makefile index 9bc6438..1b2aed9 100644 --- a/Makefile +++ b/Makefile @@ -3,7 +3,7 @@ help: build: cd flask-consul && docker build -t flask-consul:latest . cd vue-consul && docker build -t nginx-consul:latest . - cd vue-consul && docker build -t nginx-consul:tensuns-latest -f Dockerfile.tensuns . + #cd vue-consul && docker build -t nginx-consul:tensuns-latest -f Dockerfile.tensuns . echo -e "\n\n自行编译的版本,注意修改docker-compose.yml中的镜像地址为本地仓库后再启动。\nBlackbox-Manager:\nhttp://{ip}:1026\n" push: @@ -16,8 +16,8 @@ push: docker push swr.cn-south-1.myhuaweicloud.com/starsl.cn/nginx-consul:${ver} docker push swr.cn-south-1.myhuaweicloud.com/starsl.cn/flask-consul:latest docker push swr.cn-south-1.myhuaweicloud.com/starsl.cn/flask-consul:${ver} - docker tag nginx-consul:tensuns-latest swr.cn-south-1.myhuaweicloud.com/starsl.cn/nginx-consul:tensuns-latest - docker push swr.cn-south-1.myhuaweicloud.com/starsl.cn/nginx-consul:tensuns-latest + #docker tag nginx-consul:tensuns-latest swr.cn-south-1.myhuaweicloud.com/starsl.cn/nginx-consul:tensuns-latest + #docker push swr.cn-south-1.myhuaweicloud.com/starsl.cn/nginx-consul:tensuns-latest update: docker-compose pull && docker-compose up -d diff --git a/vue-consul/vue.config.js b/vue-consul/vue.config.js index 41f9fee..f5fce6c 100644 --- a/vue-consul/vue.config.js +++ b/vue-consul/vue.config.js @@ -104,6 +104,12 @@ module.exports = { .optimization.splitChunks({ chunks: 'all', cacheGroups: { + vue: { + name: 'chunk-vuejs', + test: /[\\/]node_modules[\\/]_?vue(.*)/, + priority: 30, + chunks: 'initial' + }, libs: { name: 'chunk-libs', test: /[\\/]node_modules[\\/]/, @@ -113,7 +119,8 @@ module.exports = { elementUI: { name: 'chunk-elementUI', // split elementUI into a single package priority: 20, // the weight needs to be larger than libs and app or it will be packaged into libs or app - test: /[\\/]node_modules[\\/]_?element-ui(.*)/ // in order to adapt to cnpm + test: /[\\/]node_modules[\\/]_?element-ui(.*)/, // in order to adapt to cnpm + chunks: 'initial' }, commons: { name: 'chunk-commons', diff --git a/vue-consul/vue.config.js.old b/vue-consul/vue.config.js.old new file mode 100644 index 0000000..db0dd43 --- /dev/null +++ b/vue-consul/vue.config.js.old @@ -0,0 +1,133 @@ +'use strict' +const path = require('path') +const defaultSettings = require('./src/settings.js') + +function resolve(dir) { + return path.join(__dirname, dir) +} + +const name = defaultSettings.title || 'vue Admin Template' // page title + +// If your port is set to 80, +// use administrator privileges to execute the command line. +// For example, Mac: sudo npm run +// You can change the port by the following methods: +// port = 9528 npm run dev OR npm run dev --port = 9528 +const port = process.env.port || process.env.npm_config_port || 9528 // dev port + +// All configuration item explanations can be find in https://cli.vuejs.org/config/ +module.exports = { + /** + * You will need to set publicPath if you plan to deploy your site under a sub path, + * for example GitHub Pages. If you plan to deploy your site to https://foo.github.io/bar/, + * then publicPath should be set to "/bar/". + * In most cases please use '/' !!! + * Detail: https://cli.vuejs.org/config/#publicpath + */ + publicPath: '/', + outputDir: 'dist', + assetsDir: 'static', + lintOnSave: process.env.NODE_ENV === 'development', + productionSourceMap: false, + devServer: { + port: port, + open: true, + overlay: { + warnings: false, + errors: true + }, + + // 非nginx调试,使用代理后端模式。 + // proxy:{ + // 'api':{ + // target:'http://192.168.1.120:2026', + // changeOrigin: true, + // } + // }, + + before: require('./mock/mock-server.js') + }, + configureWebpack: { + // provide the app's title in webpack's name field, so that + // it can be accessed in index.html to inject the correct title. + name: name, + resolve: { + alias: { + '@': resolve('src') + } + } + }, + chainWebpack(config) { + // it can improve the speed of the first screen, it is recommended to turn on preload + config.plugin('preload').tap(() => [ + { + rel: 'preload', + // to ignore runtime.js + // https://github.com/vuejs/vue-cli/blob/dev/packages/@vue/cli-service/lib/config/app.js#L171 + fileBlacklist: [/\.map$/, /hot-update\.js$/, /runtime\..*\.js$/], + include: 'initial' + } + ]) + + // when there are many pages, it will cause too many meaningless requests + config.plugins.delete('prefetch') + + // set svg-sprite-loader + config.module + .rule('svg') + .exclude.add(resolve('src/icons')) + .end() + config.module + .rule('icons') + .test(/\.svg$/) + .include.add(resolve('src/icons')) + .end() + .use('svg-sprite-loader') + .loader('svg-sprite-loader') + .options({ + symbolId: 'icon-[name]' + }) + .end() + + config + .when(process.env.NODE_ENV !== 'development', + config => { + config + .plugin('ScriptExtHtmlWebpackPlugin') + .after('html') + .use('script-ext-html-webpack-plugin', [{ + // `runtime` must same as runtimeChunk name. default is `runtime` + inline: /runtime\..*\.js$/ + }]) + .end() + config + .optimization.splitChunks({ + chunks: 'all', + cacheGroups: { + libs: { + name: 'chunk-libs', + test: /[\\/]node_modules[\\/]/, + priority: 10, + chunks: 'initial' // only package third parties that are initially dependent + }, + elementUI: { + name: 'chunk-elementUI', // split elementUI into a single package + priority: 20, // the weight needs to be larger than libs and app or it will be packaged into libs or app + test: /[\\/]node_modules[\\/]_?element-ui(.*)/ // in order to adapt to cnpm + }, + commons: { + name: 'chunk-commons', + test: resolve('src/components'), // can customize your rules + minChunks: 3, // minimum common number + priority: 5, + reuseExistingChunk: true + } + } + }) + // https:// webpack.js.org/configuration/optimization/#optimizationruntimechunk + config.optimization.runtimeChunk('single') + } + ) + } +} +