Bladeren bron

新增docker部署流程及配置文件

liyan 1 jaar geleden
bovenliggende
commit
81aa687a20
5 gewijzigde bestanden met toevoegingen van 69 en 0 verwijderingen
  1. 6 0
      README.md
  2. 15 0
      docker/Dockerfile
  3. 25 0
      docker/debian.sources
  4. 20 0
      docker/docker-compose.yml
  5. 3 0
      watermark_generate/run.py

+ 6 - 0
README.md

@@ -501,4 +501,10 @@ python setup.py sdist
 ## 安装模块
 ```shell
 pip install watermark_codec-1.0.tar.gz
+```
+## docker容器部署
+确保已经安装docker和docker-compose
+```shell
+cd docker
+docker-compose up -d
 ```

+ 15 - 0
docker/Dockerfile

@@ -0,0 +1,15 @@
+FROM python:3.12
+
+WORKDIR /usr/src/app
+
+COPY docker/debian.sources /etc/apt/sources.list.d
+
+#RUN apt-get update && apt-get install ffmpeg libsm6 libxext6 -y && apt-get install libgl1 -y
+
+COPY watermark_generate ./watermark_generate
+
+RUN apt-get update &&  \
+    apt-get install libgl1 -y && \
+    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn --default-timeout=60 --no-cache-dir -r ./watermark_generate/requirements.txt
+
+

+ 25 - 0
docker/debian.sources

@@ -0,0 +1,25 @@
+Types: deb
+URIs: https://mirrors.tuna.tsinghua.edu.cn/debian
+Suites: bookworm bookworm-updates bookworm-backports
+Components: main contrib non-free non-free-firmware
+Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
+
+# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
+# Types: deb-src
+# URIs: https://mirrors.tuna.tsinghua.edu.cn/debian
+# Suites: bookworm bookworm-updates bookworm-backports
+# Components: main contrib non-free non-free-firmware
+# Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
+
+# 以下安全更新软件源包含了官方源与镜像站配置,如有需要可自行修改注释切换
+Types: deb
+URIs: https://mirrors.tuna.tsinghua.edu.cn/debian-security
+Suites: bookworm-security
+Components: main contrib non-free non-free-firmware
+Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
+
+# Types: deb-src
+# URIs: https://mirrors.tuna.tsinghua.edu.cn/debian-security
+# Suites: bookworm-security
+# Components: main contrib non-free non-free-firmware
+# Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

+ 20 - 0
docker/docker-compose.yml

@@ -0,0 +1,20 @@
+#version: '3' 表示使用第三代语法
+version: '3.9'
+services:
+  secret_service:
+    #主机的架构
+    platform: linux/x86_64
+    #容器名称,可自定义;也可不写,那会自动生成,生成规则为 【docker-compose.yaml 文件的父目录名称 + _ + 服务名称 + 从一开始的数字】
+    container_name: container_secret
+    #镜像名称
+    build:
+      context: ../
+      dockerfile: ./docker/Dockerfile
+    #时区
+    environment:
+      - TZ=Asia/Shanghai
+    ports:
+      - "5000:5000"
+    command: python ./watermark_generate/run.py
+    #赋固定值 always,表示如果容器启动失败,会一直尝试重连
+    restart: always

+ 3 - 0
watermark_generate/run.py

@@ -1,6 +1,9 @@
 import os
+import sys
 
 from flask import Flask
+rootpath = str(os.path.abspath(os.path.join(os.path.dirname(__file__), '../')))
+sys.path.append(rootpath)
 from watermark_generate.controller.secret_controller import secret
 from watermark_generate.controller.dataset_controller import dataset
 from watermark_generate.controller.log_controller import log_controller