From 3cf64e74e81ae2c5e11503fb58f09d819ff0991e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=BC=BA?= <1206709430@qq.com> Date: Wed, 25 Jan 2023 10:06:56 +0800 Subject: [PATCH] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E5=8F=98=E5=8C=96:=20docker?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.yml | 30 +++--- docker_env/README.md | 8 +- docker_env/celery/Dockerfile | 2 +- docker_env/django/Dockerfile | 2 +- docker_env/django/DockerfileBuild | 4 +- docker_env/web/Dockerfile | 5 +- docker_env/web/DockerfileBuild | 4 +- web/.env | 4 +- web/.env.development | 2 +- web/package.json | 165 +++++++++++++++--------------- 10 files changed, 112 insertions(+), 114 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index b16601c..13d8033 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,7 +1,7 @@ version: "3" services: - dvadmin-web: - container_name: dvadmin-web + dvadmin3-web: + container_name: dvadmin3-web ports: - "8080:8080" build: @@ -17,18 +17,18 @@ services: network: ipv4_address: 177.10.0.11 - dvadmin-django: + dvadmin3-django: build: context: . dockerfile: ./docker_env/django/Dockerfile - container_name: dvadmin-django + container_name: dvadmin3-django working_dir: /backend # 打开mysql 时,打开此选项 # depends_on: -# - dvadmin-mysql +# - dvadmin3-mysql environment: PYTHONUNBUFFERED: 1 - DATABASE_HOST: dvadmin-mysql + DATABASE_HOST: dvadmin3-mysql TZ: Asia/Shanghai volumes: - ./backend:/backend @@ -42,9 +42,9 @@ services: network: ipv4_address: 177.10.0.12 -# dvadmin-mysql: +# dvadmin3-mysql: # image: mysql:5.7 -# container_name: dvadmin-mysql +# container_name: dvadmin3-mysql # #使用该参数,container内的root拥有真正的root权限,否则,container内的root只是外部的一个普通用户权限 # #设置为true,不然数据卷可能挂载不了,启动不起 ## privileged: true @@ -53,7 +53,7 @@ services: # - "3306:3306" # environment: # MYSQL_ROOT_PASSWORD: "123456" -# MYSQL_DATABASE: "dvadmin_pro" +# MYSQL_DATABASE: "dvadmin3_pro" # TZ: Asia/Shanghai # command: # --wait_timeout=31536000 @@ -70,18 +70,18 @@ services: # 如果使用celery 插件,请自行打开此注释 -# dvadmin-celery: +# dvadmin3-celery: # build: # context: . # dockerfile: ./docker_env/celery/Dockerfile # # image: django:2.2 -# container_name: dvadmin-celery +# container_name: dvadmin3-celery # working_dir: /backend # depends_on: -# - dvadmin-mysql +# - dvadmin3-mysql # environment: # PYTHONUNBUFFERED: 1 -# DATABASE_HOST: dvadmin-mysql +# DATABASE_HOST: dvadmin3-mysql # TZ: Asia/Shanghai # volumes: # - ./backend:/backend @@ -92,9 +92,9 @@ services: # ipv4_address: 177.10.0.14 -# dvadmin-redis: +# dvadmin3-redis: # image: redis:6.2.6-alpine # 指定服务镜像,最好是与之前下载的redis配置文件保持一致 -# container_name: dvadmin-redis # 容器名称 +# container_name: dvadmin3-redis # 容器名称 # restart: on-failure # 重启方式 # environment: # - TZ=Asia/Shanghai # 设置时区 diff --git a/docker_env/README.md b/docker_env/README.md index d4b1e6d..7173484 100644 --- a/docker_env/README.md +++ b/docker_env/README.md @@ -4,9 +4,9 @@ ~~~sh # 编译打包到本地 -docker build -f ./docker_env/web/DockerfileBuild -t registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/node14-base-web:latest . +docker build -f ./docker_env/web/DockerfileBuild -t registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/dvadmin3-base-web:latest . # 上传到阿里云仓库 -docker push registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/node14-base-web:latest +docker push registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/dvadmin3-base-web:latest ~~~ @@ -14,9 +14,9 @@ docker push registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/node14-base-web:lat ~~~sh # 编译打包到本地 -docker build -f ./docker_env/django/DockerfileBuild -t registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/python310-base-backend:latest . +docker build -f ./docker_env/django/DockerfileBuild -t registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/dvadmin3-base-backend:latest . # 上传到阿里云仓库 -docker push registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/python310-base-backend:latest +docker push registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/dvadmin3-base-backend:latest ~~~ ### 运行前端 diff --git a/docker_env/celery/Dockerfile b/docker_env/celery/Dockerfile index e233371..7d57c7a 100644 --- a/docker_env/celery/Dockerfile +++ b/docker_env/celery/Dockerfile @@ -1,4 +1,4 @@ -FROM registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/python38-base-backend:latest +FROM registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/dvadmin3-base-backend:latest WORKDIR /backend COPY ./backend/ . RUN awk 'BEGIN { cmd="cp -i ./conf/env.example.py ./conf/env.py "; print "n" |cmd; }' diff --git a/docker_env/django/Dockerfile b/docker_env/django/Dockerfile index 85a71dd..3f8c93c 100644 --- a/docker_env/django/Dockerfile +++ b/docker_env/django/Dockerfile @@ -1,4 +1,4 @@ -FROM registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/python310-base-backend:latest +FROM registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/dvadmin3-base-backend:latest WORKDIR /backend COPY ./backend/ . RUN awk 'BEGIN { cmd="cp -i ./conf/env.example.py ./conf/env.py "; print "n" |cmd; }' diff --git a/docker_env/django/DockerfileBuild b/docker_env/django/DockerfileBuild index a6ea609..53e5049 100644 --- a/docker_env/django/DockerfileBuild +++ b/docker_env/django/DockerfileBuild @@ -3,6 +3,4 @@ RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories RUN apk update && apk add bash bash-doc bash-completion git freetds-dev jpeg-dev linux-headers mysql-client mariadb-dev build-base libffi-dev openssl-dev zlib-dev bzip2-dev pcre-dev ncurses-dev readline-dev tk-dev postgresql-dev WORKDIR /backend COPY ./backend/requirements.txt . -COPY ./docker_env/requirements-all.txt . -RUN python3 -m pip install -i https://mirrors.aliyun.com/pypi/simple/ -r /requirements.txt -RUN python3 -m pip install -i https://mirrors.aliyun.com/pypi/simple/ -r /requirements-all.txt +RUN python3 -m pip install -i https://mirrors.aliyun.com/pypi/simple/ -r requirements.txt diff --git a/docker_env/web/Dockerfile b/docker_env/web/Dockerfile index 82e0bbb..8a4bf78 100644 --- a/docker_env/web/Dockerfile +++ b/docker_env/web/Dockerfile @@ -1,8 +1,7 @@ -FROM registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/node14-base-web:latest +FROM registry.cn-zhangjiakou.aliyuncs.com/dvadmin-pro/dvadmin3-base-web:latest WORKDIR /web/ COPY web/. . -RUN npm install --registry=https://registry.npm.taobao.org -RUN npm run build +RUN cnpm run build FROM nginx:alpine COPY ./docker_env/nginx/my.conf /etc/nginx/conf.d/my.conf diff --git a/docker_env/web/DockerfileBuild b/docker_env/web/DockerfileBuild index b123505..112546f 100644 --- a/docker_env/web/DockerfileBuild +++ b/docker_env/web/DockerfileBuild @@ -1,4 +1,4 @@ FROM node:14-alpine -WORKDIR /web/ +WORKDIR / COPY ./web/package.json . -RUN npm install --registry=https://registry.npm.taobao.org +RUN npm install -g cnpm --registry=https://registry.npm.taobao.org && cnpm install --registry=https://registry.npm.taobao.org diff --git a/web/.env b/web/.env index dacb1a5..69c1c8e 100644 --- a/web/.env +++ b/web/.env @@ -1,8 +1,8 @@ # port 端口号 -VITE_PORT = 8888 +VITE_PORT = 8080 # open 运行 npm run dev 时自动打开浏览器 VITE_OPEN = false # public path 配置线上环境路径(打包)、本地通过 http-server 访问时,请置空即可 -VITE_PUBLIC_PATH = /vue-next-admin-preview/ \ No newline at end of file +VITE_PUBLIC_PATH = /vue-next-admin-preview/ diff --git a/web/.env.development b/web/.env.development index ffa2772..865351b 100644 --- a/web/.env.development +++ b/web/.env.development @@ -2,4 +2,4 @@ ENV = 'development' # 本地环境接口地址 -VITE_API_URL = 'http://192.168.1.246:8000/' \ No newline at end of file +VITE_API_URL = 'http://127.0.0.1:8000' diff --git a/web/package.json b/web/package.json index 9b9f763..075ab24 100644 --- a/web/package.json +++ b/web/package.json @@ -1,84 +1,85 @@ { - "name": "vue-next-admin", - "version": "2.2.0", - "description": "vue3 vite next admin template", - "author": "lyt_20201208", - "license": "MIT", - "scripts": { - "dev": "vite --force", - "build": "vite build", - "lint-fix": "eslint --fix --ext .js --ext .jsx --ext .vue src/" - }, - "dependencies": { - "@element-plus/icons-vue": "^2.0.6", - "@fast-crud/fast-crud": "^1.4.2", - "@fast-crud/ui-element": "^1.4.2", - "@vitejs/plugin-vue-jsx": "^2.1.0", - "@wangeditor/editor": "^5.1.11", - "axios": "^0.27.2", - "countup.js": "^2.3.2", - "cropperjs": "^1.5.12", - "echarts": "^5.3.3", - "echarts-gl": "^2.0.9", - "echarts-wordcloud": "^2.0.0", - "element-plus": "^2.2.9", - "js-cookie": "^3.0.1", - "jsplumb": "^2.15.6", - "mitt": "^3.0.0", - "nprogress": "^0.2.0", - "pinia": "^2.0.16", - "print-js": "^1.6.0", - "qrcodejs2-fixes": "^0.0.2", - "screenfull": "^6.0.2", - "sortablejs": "^1.15.0", - "splitpanes": "^3.1.1", - "vue": "^3.2.37", - "vue-clipboard3": "^2.0.0", - "vue-grid-layout": "^3.0.0-beta1", - "vue-i18n": "^9.1.10", - "vue-router": "^4.1.2" - }, - "devDependencies": { - "@types/node": "^18.0.6", - "@types/nprogress": "^0.2.0", - "@types/sortablejs": "^1.13.0", - "@typescript-eslint/eslint-plugin": "^5.30.7", - "@typescript-eslint/parser": "^5.30.7", - "@vitejs/plugin-vue": "^2.3.3", - "@vue/compiler-sfc": "^3.2.37", - "dotenv": "^16.0.1", - "eslint": "^8.20.0", - "eslint-plugin-vue": "^9.2.0", - "prettier": "^2.7.1", - "sass": "^1.53.0", - "sass-loader": "^13.0.2", - "typescript": "^4.7.4", - "vite": "^3.0.0", - "vue-eslint-parser": "^9.0.3" - }, - "browserslist": [ - "> 1%", - "last 2 versions", - "not dead" - ], - "bugs": { - "url": "https://gitee.com/lyt-top/vue-next-admin/issues" - }, - "engines": { - "node": ">=12.0.0", - "npm": ">= 6.0.0" - }, - "keywords": [ - "vue", - "vue3", - "vuejs/vue-next", - "element-ui", - "element-plus", - "vue-next-admin", - "next-admin" - ], - "repository": { - "type": "git", - "url": "https://gitee.com/lyt-top/vue-next-admin.git" - } + "name": "vue-next-admin", + "version": "2.2.0", + "description": "vue3 vite next admin template", + "author": "lyt_20201208", + "license": "MIT", + "scripts": { + "dev": "vite --force", + "build": "vite build", + "lint-fix": "eslint --fix --ext .js --ext .jsx --ext .vue src/" + }, + "dependencies": { + "@element-plus/icons-vue": "^2.0.6", + "@fast-crud/fast-crud": "^1.4.2", + "@fast-crud/ui-element": "^1.4.2", + "@vitejs/plugin-vue-jsx": "^2.1.0", + "@wangeditor/editor": "^5.1.11", + "axios": "^0.27.2", + "countup.js": "^2.3.2", + "cropperjs": "^1.5.12", + "echarts": "^5.3.3", + "echarts-gl": "^2.0.9", + "echarts-wordcloud": "^2.0.0", + "element-plus": "^2.2.9", + "js-cookie": "^3.0.1", + "jsplumb": "^2.15.6", + "lodash-es": "^4.17.21", + "mitt": "^3.0.0", + "nprogress": "^0.2.0", + "pinia": "^2.0.16", + "print-js": "^1.6.0", + "qrcodejs2-fixes": "^0.0.2", + "screenfull": "^6.0.2", + "sortablejs": "^1.15.0", + "splitpanes": "^3.1.1", + "vue": "^3.2.37", + "vue-clipboard3": "^2.0.0", + "vue-grid-layout": "^3.0.0-beta1", + "vue-i18n": "^9.1.10", + "vue-router": "^4.1.2" + }, + "devDependencies": { + "@types/node": "^18.0.6", + "@types/nprogress": "^0.2.0", + "@types/sortablejs": "^1.13.0", + "@typescript-eslint/eslint-plugin": "^5.30.7", + "@typescript-eslint/parser": "^5.30.7", + "@vitejs/plugin-vue": "^2.3.3", + "@vue/compiler-sfc": "^3.2.37", + "dotenv": "^16.0.1", + "eslint": "^8.20.0", + "eslint-plugin-vue": "^9.2.0", + "prettier": "^2.7.1", + "sass": "^1.53.0", + "sass-loader": "^13.0.2", + "typescript": "^4.7.4", + "vite": "^3.0.0", + "vue-eslint-parser": "^9.0.3" + }, + "browserslist": [ + "> 1%", + "last 2 versions", + "not dead" + ], + "bugs": { + "url": "https://gitee.com/lyt-top/vue-next-admin/issues" + }, + "engines": { + "node": ">=12.0.0", + "npm": ">= 6.0.0" + }, + "keywords": [ + "vue", + "vue3", + "vuejs/vue-next", + "element-ui", + "element-plus", + "vue-next-admin", + "next-admin" + ], + "repository": { + "type": "git", + "url": "https://gitee.com/lyt-top/vue-next-admin.git" + } }