ubuntu
カテゴリ
テニスアプリ作成
2026/07/07 18時tennis
/mnt/data/docker/tennis_app/app.py
from flask import Flask, redirect, url_for
from database import init_db
from tennis_bp import tennis

app = Flask(__name__)
app.secret_key = 'tennis-secret-key-change-me'
app.register_blueprint(tennis, url_prefix='/tennis')

@app.route('/')
def root():
    return redirect(url_for('tennis.session_list'))

if __name__ == '__main__':
    init_db()
    app.run(host='0.0.0.0', port=5002, debug=False)


/mnt/data/docker/tennis_app/Dockerfile
FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
ENV TENNIS_DB_PATH=/mnt/data/tennis.db
EXPOSE 5002
CMD ["python", "app.py"]

/mnt/data/docker/tennis_app/docker-compose.yml
services:
  tennis:
    build: .
    container_name: tennis_app
    ports:
      - "5002:5002"
    volumes:
      - /mnt/data/docker/tennis_app:/mnt/data
    restart: unless-stopped
    environment:
      - TENNIS_DB_PATH=/mnt/data/tennis.db

/etc/apache2/sites-available/vafee2.conf 追記
# --- Tennis ---
ProxyPass        /tennis/ http://127.0.0.1:5002/tennis/
ProxyPassReverse /tennis/ http://127.0.0.1:5002/tennis/

Tailscale Serve
# 設定確認
sudo tailscale serve status
# → https://ubuntu-sv.tailde37b8.ts.net (tailnet only)
#    |-- / proxy http://127.0.0.1:80

# 設定が消えた場合の再設定
sudo tailscale serve --bg 80

記事一覧