差别
这里会显示出您选择的修订版和当前版本之间的差别。
| 两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
| docker:teslamate:tmbackupweb [2026/06/07 21:10] – admin | docker:teslamate:tmbackupweb [2026/06/08 11:36] (当前版本) – admin | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| ====== teslamate backup web ====== | ====== teslamate backup web ====== | ||
| + | |||
| + | Dockerfile: | ||
| + | ``` | ||
| + | FROM python: | ||
| + | |||
| + | # 安装 docker.io + gzip | ||
| + | RUN apt-get update && \ | ||
| + | apt-get install -y --no-install-recommends docker.io gzip && \ | ||
| + | rm -rf / | ||
| + | |||
| + | WORKDIR /app | ||
| + | RUN pip install --no-cache-dir flask | ||
| + | |||
| + | COPY app.py . | ||
| + | COPY templates ./templates | ||
| + | |||
| + | EXPOSE 5000 | ||
| + | CMD [" | ||
| + | ``` | ||
| 创建本地镜像: | 创建本地镜像: | ||
| 行 16: | 行 35: | ||
| --push . | --push . | ||
| ``` | ``` | ||
| + | |||
| + | 镜像本地保存: | ||
| + | |||
| + | buildx 多架构清单镜像不能直接 save,想导出离线包,分开构建单架构: | ||
| + | ``` | ||
| + | # 构建 amd64 | ||
| + | docker buildx build --platform linux/amd64 -t netfun2000/ | ||
| + | |||
| + | # 构建 arm64 | ||
| + | docker buildx build --platform linux/arm64 -t netfun2000/ | ||
| + | |||
| + | # 构建 arm/v7 | ||
| + | docker buildx build --platform linux/ | ||
| + | ``` | ||
| + | |||
| + | 参数 --load:把镜像加载到本地镜像列表,支持 docker save 导出。 | ||
| + | |||
| + | 导出离线包示例: | ||
| + | ``` | ||
| + | docker save -o tmbackupweb-amd64.tar netfun2000/ | ||
| + | ``` | ||
| + | |||
| + | 其他机器导入: | ||
| + | ``` | ||
| + | docker load -i tmbackupweb-amd64.tar | ||
| + | ``` | ||
| + | |||
| + | |||
| + | ``` | ||
| + | version: " | ||
| + | |||
| + | services: | ||
| + | tm-backup-web: | ||
| + | build: . | ||
| + | container_name: | ||
| + | restart: unless-stopped | ||
| + | ports: | ||
| + | - " | ||
| + | environment: | ||
| + | - DATABASE_USER=${TM_DB_USER} | ||
| + | - DATABASE_PASS=${TM_DB_PASS} | ||
| + | - DATABASE_NAME=${TM_DB_NAME} | ||
| + | - DATABASE_HOST=database | ||
| + | volumes: | ||
| + | # 关键:挂载宿主机docker socket,容器内可执行 docker compose | ||
| + | - / | ||
| + | # 映射当前目录,保证 docker compose 能找到原 docker-compose.yml | ||
| + | - ./:/app | ||
| + | # 关联teslamate所在网络(替换成你实际的网络名,默认一般为原项目默认网络) | ||
| + | networks: | ||
| + | - teslamate_net | ||
| + | |||
| + | # 填写你 Teslamate 所在的 Docker 网络名称 | ||
| + | networks: | ||
| + | teslamate_net: | ||
| + | external: true | ||
| + | ``` | ||
| + | |||