148 lines
3.6 KiB
Plaintext
148 lines
3.6 KiB
Plaintext
システム管理
|
||
|
||
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アクセスログを監視
|
||
印刷ジョブの異常を検知して通知
|
||
エラーログの定期チェック
|