Alibaba Cloud ACK(Container Service for Kubernetes)でWordPress(Anolis OSベースの公式イメージ)をデプロイする際、以下の問題が発生しました:
- 負荷テスト中に新しいコンテナインスタンスが作成できない
- WordPressバックエンドでアップロードした画像が時々表示されない
解決策として、イメージ取得方法を**自前のプライベートイメージレジストリ(ACR)**に切り替えました。
手順
1. ACRの有効化
Alibaba Cloud Container Registry(個人版)を有効化し、レジストリパスワードを設定。
2. 名前空間とリポジトリの作成
名前空間(例:myspace)を作成し、イメージリポジトリを作成。
3. ECSからWordPressイメージをプッシュ
yum install -y docker
# ACRコンソールでイメージアクセラレータを設定
sudo tee /etc/docker/daemon.json <<-'EOF'
{ "registry-mirrors": ["https://xxx.mirror.aliyuncs.com"] }
EOF
sudo systemctl restart docker
docker pull wordpress
ACRリポジトリのコマンドに従ってタグ付けとプッシュ:
docker tag wordpress registry.cn-hangzhou.aliyuncs.com/myspace/wordpress:latest
docker push registry.cn-hangzhou.aliyuncs.com/myspace/wordpress:latest
4. ACKでデプロイ
カスタムイメージを使用してステートレスアプリケーションを作成。重要: イメージプルシークレットを設定しないと、ACKはプライベートレジストリからプルできません。
結果
- コンテナ作成速度が大幅に向上
- WordPress画像アップロードの安定性が大幅に改善
- パブリックイメージソースに依存しなくなった