永栄コードのマージ開始

This commit is contained in:
hayano
2024-10-27 18:22:01 +00:00
parent b8d7029965
commit 051916f9f6
15 changed files with 2237 additions and 319 deletions

144
rogaining_autoprint/README Normal file
View File

@ -0,0 +1,144 @@
システム管理
1. 環境変数の設定
必要な環境変数:
envCopyAWS_ACCESS_KEY_ID=your_access_key
AWS_SECRET_ACCESS_KEY=your_secret_key
AWS_REGION=us-west-2
S3_BUCKET_NAME=sumasenrogaining
LOCATION=美濃加茂
PRINTER_NAME=Brother_HL_L3240CDW_series
2.プリンター設定
3.1 CUPSの設定
# CUPSの状態確認
systemctl status cups
# CUPSが動いていない場合は起動
sudo systemctl start cups
sudo systemctl enable cups
# プリンター一覧の確認
lpstat -p -d
3.2 プリンターの権限設定
# プリンターデバイスの確認
ls -l /dev/usb/lp*
# プリンターデバイスの権限設定
sudo chmod 666 /dev/usb/lp0
3.3 ネットワークプリンターの場合
config.yamlのprinterセクションを以下のように設定
yamlCopyprinter:
name: ipp://192.168.1.100:631/ipp/port1
4. Dockerイメージのビルドと起動
4.1 イメージのビルド
bashCopy# イメージのビルド
docker-compose build
4.2 コンテナの起動
bashCopy# コンテナの起動(バックグラウンド)
docker-compose up -d
# ログの確認
docker-compose logs -f
5. 動作確認
5.1 ログの確認
bashCopy# アプリケーションログの確認
tail -f logs/app.log
# エラーログの確認
tail -f logs/error.log
5.2 テスト印刷
bashCopy# テスト用PDFファイルをS3にアップロード
aws s3 cp test.pdf s3://sumasenrogaining/美濃加茂/scoreboard/test.pdf
5.3 プロセスの確認
bashCopy# コンテナの状態確認
docker-compose ps
# コンテナ内のプロセス確認
docker-compose exec printer ps aux
6. トラブルシューティング
6.1 印刷できない場合
CUPSの状態確認
bashCopydocker-compose exec printer lpstat -t
プリンターの権限確認
bashCopydocker-compose exec printer ls -l /dev/usb/lp0
プリンター接続の確認
bashCopydocker-compose exec printer lpinfo -v
6.2 S3接続エラーの場合
認証情報の確認
bashCopydocker-compose exec printer env | grep AWS
S3バケットへのアクセス確認
bashCopydocker-compose exec printer python3 -c "
import boto3
s3 = boto3.client('s3')
response = s3.list_objects_v2(Bucket='sumasenrogaining')
print(response)
"
6.3 ログの確認方法
bashCopy# 直近のエラーログ
docker-compose exec printer tail -f /logs/error.log
# アプリケーションログ
docker-compose exec printer tail -f /logs/app.log
7. 運用とメンテナンス
7.1 定期的なメンテナンス
bashCopy# ログローテーション確認
ls -l logs/
# ディスク使用量確認
du -sh data/ logs/
# 古いPDFファイルの削除
find data/files -name "*.pdf" -mtime +30 -delete
7.2 バックアップ
bashCopy# 設定ファイルのバックアップ
tar czf config-backup-$(date +%Y%m%d).tar.gz .env config.yaml
# 処理済みファイルログのバックアップ
cp data/${LOCATION}.filelog data/${LOCATION}.filelog.bak
7.3 アップデート手順
bashCopy# コンテナの停止
docker-compose down
# 新しいイメージのビルド
docker-compose build --no-cache
# コンテナの再起動
docker-compose up -d
8. セキュリティ考慮事項
8.1 認証情報の管理
.envファイルのパーミッションを600に設定
AWSアクセスキーは定期的にローテーション
本番環境では.envファイルをgitにコミットしない
8.2 ネットワークセキュリティ
コンテナネットワークは必要最小限の公開
プリンターアクセスは内部ネットワークに制限
AWS S3へのアクセスは特定のIPに制限
8.3 モニタリング
CloudWatchなどでS3アクセスログを監視
印刷ジョブの異常を検知して通知
エラーログの定期チェック