Sign inSign up

komina77/onethirdcms

By komina77

•Updated over 1 year ago

Lightweight CMS for Small website, Web application framework.

Image
0

452

komina77/onethirdcms repository overview

⁠OneThirdCMS

https://onethird.net/⁠ cakePHPやsmarty等の外部ライブラリを使用しない、福岡発の純国産CMS。

関連記事:https://www.komina.info/archives/1610⁠

⁠このイメージについて

  • OneThirdCMSを動かすお膳立てをしているコンテナイメージです。
    オンラインインストーラを別途入手してください。
  • php:7.4-apache-bookworm ベース。
  • ロケールは ja-JP。
  • タイムゾーンは Asia/Tokyo 。
  • 環境変数BACKUP_DIRで設定したディレクトリが存在するときバックアップ機能が有効になる。以下、バックアップ機能有効時の挙動。
    • コンテナ起動時、$BACKUP_DIR/restore.sh というスクリプトが存在するなら、スクリプトを実行する。
    • コンテナ停止時、$BACKUP_DIR/backup.sh というスクリプトが存在するなら、スクリプトを実行する。
    • 環境変数BACKUP_CRONが設定されていて$BACKUP_DIR/backup.sh というスクリプトが存在するなら、スケジュール実行するように設定する。
  • 勝手に非公式ビルドなのでこの件で本家に質問しないでください。

⁠利用方法

  1. カレントディレクトリ配下に backup_dir を作成する。
  2. https://onethird.net/download⁠ よりオンラインインストーラダウンロードし index.php を backup_dir/data へ格納する。
  3. backup_dir配下に復帰用スクリプトrestore.sh 、退避用スクリプトbackup.sh を配置する。
  4. 以下のコマンドを入力して起動する。
    $ docker run \
         -p 80:80 \
         -v ${PWD}/backup_dir:/home/backup \
         -e BACKUP_DIR=/home/backup \
         -e BACKUP_CRON="0 * * * *" \
         komina77/onethirdcms:latest
    
  5. http://localhost⁠ を開きオンラインインストールを行う。
  6. 以上。
⁠restore.sh例
#!/bin/sh

# 環境変数チェック
if [ -z "$BACKUP_DIR" ]; then
    echo "エラー: BACKUP_DIR環境変数が設定されていません"
    exit 1
fi

# バックアップソースディレクトリ確認
SRC_DIR="$BACKUP_DIR/data"
if [ ! -d "$SRC_DIR" ]; then
    echo "エラー: バックアップディレクトリ $SRC_DIR が存在しません"
    exit 1
fi

# 復元先ディレクトリ確認/作成
DEST_DIR="/var/www/html"
mkdir -p "$DEST_DIR"
if [ $? -ne 0 ]; then
    echo "エラー: 復元先ディレクトリ $DEST_DIR の作成に失敗しました"
    exit 1
fi

# 復元実行
echo "$(date '+%Y-%m-%d %H:%M:%S') - 復元を開始します: $SRC_DIR → $DEST_DIR"
rsync -a --delete "$SRC_DIR/" "$DEST_DIR/"
if [ $? -eq 0 ]; then
    echo "$(date '+%Y-%m-%d %H:%M:%S') - 復元が正常に完了しました"
    exit 0
else
    echo "$(date '+%Y-%m-%d %H:%M:%S') - 復元中にエラーが発生しました"
    exit 1
fi
⁠backup.sh例
#!/bin/sh

# 環境変数チェック
if [ -z "$BACKUP_DIR" ]; then
    echo "エラー: BACKUP_DIR環境変数が設定されていません"
    exit 1
fi

# ソースディレクトリ確認
SRC_DIR="/var/www/html"
if [ ! -d "$SRC_DIR" ]; then
    echo "エラー: ソースディレクトリ $SRC_DIR が存在しません"
    exit 1
fi

# バックアップ先ディレクトリ作成
DEST_DIR="$BACKUP_DIR/data"
mkdir -p "$DEST_DIR"
if [ $? -ne 0 ]; then
    echo "エラー: バックアップディレクトリ $DEST_DIR の作成に失敗しました"
    exit 1
fi

# バックアップ実行
echo "$(date '+%Y-%m-%d %H:%M:%S') - バックアップを開始します: $SRC_DIR → $DEST_DIR"
rsync -a --delete "$SRC_DIR/" "$DEST_DIR/"
if [ $? -eq 0 ]; then
    echo "$(date '+%Y-%m-%d %H:%M:%S') - バックアップが正常に完了しました"
    exit 0
else
    echo "$(date '+%Y-%m-%d %H:%M:%S') - バックアップ中にエラーが発生しました"
    exit 1
fi

Tag summary

Content type

Image

Digest

sha256:714852b5c…

Size

195 MB

Last updated

over 1 year ago

docker pull komina77/onethirdcms