diff --git a/Dockerfile b/Dockerfile index 50a38fc..c5da823 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,27 +1,18 @@ -FROM python:3.10.3-slim-bullseye +FROM python:3.10.3-alpine WORKDIR /rustdesk-api-server ADD . /rustdesk-api-server -RUN pip install pip -U -i https://mirrors.cloud.tencent.com/pypi/simple -RUN pip config set global.index-url https://mirrors.cloud.tencent.com/pypi/simple -RUN pip config set install.trusted-host mirrors.cloud.tencent.com -RUN pip install -r requirements.txt - -VOLUME /rustdesk-api-server/db.sqlite3 - -ENV HOST 0.0.0.0 -ENV TZ=Asia/Shanghai \ - DEBIAN_FRONTEND=noninteractive +RUN set -ex \ + && pip install --no-cache-dir --disable-pip-version-check -r requirements.txt \ + && rm -rf /var/cache/apk/* \ + && cp -r ./db ./db_bak +ENV HOST=0.0.0.0 +ENV TZ=Asia/Shanghai ENV CSRF_TRUSTED_ORIGINS="" - EXPOSE 21114/tcp EXPOSE 21114/udp -RUN cd /rustdesk-api-server - - -ENTRYPOINT ["bash", "run.sh"] - +ENTRYPOINT ["sh", "run.sh"] diff --git a/db.sqlite3 b/db/db.sqlite3 similarity index 100% rename from db.sqlite3 rename to db/db.sqlite3 diff --git a/docker-compose.yaml b/docker-compose.yaml index 2e64278..9564f46 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -7,10 +7,12 @@ services: environment: - HOST=0.0.0.0 - TZ=Asia/Shanghai - - CSRF_TRUSTED_ORIGINS= + - CSRF_TRUSTED_ORIGINS=http://www.baidu.com volumes: - - ./db.sqlite3:/rustdesk-api-server/db.sqlite3 + - ./db:/rustdesk-api-server/db - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro + network_mode: bridge ports: - "21114:21114" + restart: unless-stopped \ No newline at end of file diff --git a/run.sh b/run.sh index e6f4efc..4e77d6e 100644 --- a/run.sh +++ b/run.sh @@ -1,4 +1,8 @@ #!/bin/bash -cd /rustdesk-api-server; +if [ ! -e "./db/db.sqlite3" ]; then + cp "./db_bak/db.sqlite3" "./db/db.sqlite3" + echo "首次运行,初始化数据库" +fi + python manage.py runserver $HOST:21114; diff --git a/rustdesk_server_api/settings.py b/rustdesk_server_api/settings.py index c62e6f2..da7df75 100644 --- a/rustdesk_server_api/settings.py +++ b/rustdesk_server_api/settings.py @@ -78,7 +78,7 @@ WSGI_APPLICATION = 'rustdesk_server_api.wsgi.application' DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', - 'NAME': BASE_DIR / 'db.sqlite3', + 'NAME': BASE_DIR / 'db/db.sqlite3', } } @@ -123,8 +123,8 @@ STATIC_URL = 'static/' if DEBUG: STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')] - + else: - + STATIC_ROOT = os.path.join(BASE_DIR, 'static') # 新增