Search

PythonReactSEOPDF
OpenClaw

ephemeral-media-hosting

自動削除機能付き一時メディアホスティングシステム

byron-mckeeby0 source installs☆ 0 Repository starsv1.0.0

Installation

Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.

SkillHub CLI

skillhub install byron-mckeeby/ephemeral-media-hosting

Inspect the source and compatibility requirements, then follow its installation steps.

Give your agent the source link and ask it to inspect instructions and dependencies before explaining the installation steps.

View source ↗Guides

Skill instructions

一時メディア・ホスティング

チャット共有向けの自動削除機能付きメディアディレクトリシステム。7日間の自動保持、MIME検証、fetch-image.shパターン、nginx設定の包括的ガイドです。

システム構成

ディレクトリ構造
/var/www/media/
├── temp/                  # 一時ファイル(7日保持)
├── uploads/               # アップロード受付
├── processed/             # 処理済みファイル  
├── logs/                  # アクセス・処理ログ
└── scripts/               # 管理スクリプト群

基本セットアップ

ディレクトリ初期化
#!/bin/bash
# media-setup.sh

setup_media_hosting() {
    local media_root="/var/www/media"
    local nginx_user="www-data"
    
    echo "=== メディアホスティング初期設定 ==="
    
    # ディレクトリ作成
    sudo mkdir -p "$media_root"/{temp,uploads,processed,logs,scripts}
    
    # 権限設定
    sudo chown -R "$nginx_user:$nginx_user" "$media_root"
    sudo chmod -R 755 "$media_root"
    sudo chmod 775 "$media_root"/{uploads,temp,processed}
    
    # 設定ファイル作成
    cat > "$media_root/config.env" << 'EOF'
# メディアホスティング設定
MAX_FILE_SIZE=10M
RETENTION_DAYS=7
ALLOWED_MIMES="image/jpeg,image/png,image/gif,image/webp,video/mp4,video/webm"
UPLOAD_RATE_LIMIT=100
EOF
    
    echo "初期設定完了: $media_root"
}

# 実行
setup_media_hosting
nginx設定
# /etc/nginx/sites-available/ephemeral-media
server {
    listen 80;
    server_name media.yourdomain.com;
    
    # セキュリティヘッダー
    add_header X-Content-Type-Options "nosniff";
    add_header X-Frame-Options "DENY";
    add_header X-XSS-Protection "1; mode=block";
    add_header Content-Security-Policy "default-src 'none'; img-src 'self'; media-src 'self';";
    
    # ファイルサイズ制限
    client_max_body_size 10M;
    
    # メディアルート
    root /var/www/media;
    index index.html;
    
    # 一時ファイル配信
    location /temp/ {
        alias /var/www/media/temp/;
        
        # キャッシュヘッダー(短期間)
        expires 1h;
        add_header C...

Source information

Source
github
Repository
openclaw/skills
Path
skills/byron-mckeeby/ephemeral-media-hosting
Version
1.0.0
Commit
79b957acaa4d56d4b6f2fe80de310469b0e0ce6a
Classification source
rules
Status
active
Visibility
public

These signals come from indexed source analysis and may lag behind changes. Check the current source files.

Extracted content

SKILL.md
# 一時メディア・ホスティング

チャット共有向けの自動削除機能付きメディアディレクトリシステム。7日間の自動保持、MIME検証、fetch-image.shパターン、nginx設定の包括的ガイドです。

## システム構成

### ディレクトリ構造

```
/var/www/media/
├── temp/                  # 一時ファイル(7日保持)
├── uploads/               # アップロード受付
├── processed/             # 処理済みファイル  
├── logs/                  # アクセス・処理ログ
└── scripts/               # 管理スクリプト群
```

## 基本セットアップ

### ディレクトリ初期化

```bash
#!/bin/bash
# media-setup.sh

setup_media_hosting() {
    local media_root="/var/www/media"
    local nginx_user="www-data"
    
    echo "=== メディアホスティング初期設定 ==="
    
    # ディレクトリ作成
    sudo mkdir -p "$media_root"/{temp,uploads,processed,logs,scripts}
    
    # 権限設定
    sudo chown -R "$nginx_user:$nginx_user" "$media_root"
    sudo chmod -R 755 "$media_root"
    sudo chmod 775 "$media_root"/{uploads,temp,processed}
    
    # 設定ファイル作成
    cat > "$media_root/config.env" << 'EOF'
# メディアホスティング設定
MAX_FILE_SIZE=10M
RETENTION_DAYS=7
ALLOWED_MIMES="image/jpeg,image/png,image/gif,image/webp,video/mp4,video/webm"
UPLOAD_RATE_LIMIT=100
EOF
    
    echo "初期設定完了: $media_root"
}

# 実行
setup_media_hosting
```

### nginx設定

```nginx
# /etc/nginx/sites-available/ephemeral-media
server {
    listen 80;
    server_name media.yourdomain.com;
    
    # セキュリティヘッダー
    add_header X-Content-Type-Options "nosniff";
    add_header X-Frame-Options "DENY";
    add_header X-XSS-Protection "1; mode=block";
    add_header Content-Security-Policy "default-src 'none'; img-src 'self'; media-src 'self';";
    
    # ファイルサイズ制限
    client_max_body_size 10M;
    
    # メディアルート
    root /var/www/media;
    index index.html;
    
    # 一時ファイル配信
    location /temp/ {
        alias /var/www/media/temp/;
        
        # キャッシュヘッダー(短期間)
        expires 1h;
        add_header C...

Related skills

OpenClaw

13-Day Sprint Method

galizki

Productivity system based on Maya calendar with 13 natural tones for project management and personal development

OpenClaw

1password

daggerkun007

Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.