環境
インストール Docker依存関係をインストールする $ sudo yum install -y yum-utils デバイスマッパー永続データ lvm2 docker-ceをインストールする $ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo $ sudo yum インストール docker-ce $ sudo systemctl dockerを起動します $ docker --version $ sudo docker run hello-world docker-composeをインストールする $ sudo curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-compose-`uname -s`-`uname -m` -o /usr/bin/docker-compose $ sudo chmod +x /usr/bin/docker-compose $ docker-compose --version docker-compose.ymlを書く $ mkdir ./blog $ cd ブログ $ sudo vim docker-compose.yml バージョン: '3' サービス: デシベル: イメージ:mysql:5.7 ボリューム: #データボリューム、マッピングローカルフォルダ - db_data:/var/lib/mysql ports: # ポートマッピングを記述しないと、外部から mysql に接続できません (以下の WordPress 接続は問題ありません) - 「3306:3306」 再起動: 常に 環境: MYSQL_ROOT_パスワード: xxx MYSQL_DATABASE: ワードプレス MYSQL_USER: ワードプレス MYSQL_パスワード: wordpress ワードプレス: depends_on: #上記の db サービスに依存 -db 画像: wordpress:最新 ボリューム: - wp_site:/var/www/html ポート: - 「8000:80」 再起動: 常に 特権: true 環境: # 上記のサービス名 + ポートを直接使用してリンクを取得できます WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_USER: ワードプレス WORDPRESS_DB_PASSWORD: ワードプレス # ドメイン名を定義します WORDPRESS_CONFIG_EXTRA: "define('WP_HOME','https://blog.amoyiki.com'); define('WP_SITEURL','https://blog.amoyiki.com');" ボリューム: db_データ: wp_サイト: コンテナの実行 # 開始 $ sudo docker-compose up -d # シャットダウン$ sudo docker-compose down これで、http://ip:port を使用してアクセスできるようになります。アクセスできない場合は、コンテナ ログをチェックしてエラーを見つけることができます。 $ sudo docker-compose ps 名前 コマンド 状態 ポート blog_db_1 docker-entrypoint.sh mysqld 0.0.0.0:3306->3306/tcp、33060/tcp が起動しました blog_wordpress_1 docker-entrypoint.sh apach ... 0.0.0.0:8000->80/tcp を起動 # 最後の WordPress はサービス名です。これは Docker でログを表示するために使用するコンテナ名とは異なります。$ sudo docker-compose logs -f --tail=10 wordpress $ sudo docker-compose ログ -f --tail=10 db ホストNginxを使用してdocker wordpressをリバースする nginxの設定ファイルは以下のとおりです(関係ない内容は省略) user root; # これは、docker コンテナ内の WordPress ファイル ユーザーが www-data であるためです。 サーバー{ 聞く 80; サーバー名 *.amoyiki.com; 301 https://$host$request_uri を返します。 } アップストリーム wordpress-workhorse { サーバー 127.0.0.1:8000 fail_timeout=10s; } サーバー{ サーバー名 blog.amoyiki.com; 443 ssl を聴く; sslオン; ssl_certificate /ssl/path/fullchain.pem; ssl_certificate_key /ssl/path/privkey.pem; access_log /var/log/nginx/access.log メイン; # ホストルート内の WordPress データボリュームの場所 /var/lib/docker/volumes/blog_wp_site/_data; 位置 / { proxy_pass http://wordpress-workhorse; proxy_set_header ホスト $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; } 場所 ~* \.(js|css|png|jpg|jpeg|gif|ico)$ { 有効期限は7日です。 access_log オフ; } エラーページ 500 502 503 504 /50x.html; 場所 = /50x.html { ルートhtml; } } エラー収集 nginx エラー 権限が拒否されました
以前は、nginx.conf ユーザーはデフォルトの nobody を使用していましたが、docker の wp 内の www-data のユーザー グループ データを読み取ることができませんでした。そのため、nginx ユーザーを直接 root に昇格しました。これは後で最適化できます。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: mysql 5.7.11 winx64 初期パスワード変更
開発に Vue を使用する場合、次のような状況に遭遇することがあります。Vue インスタンスを生成し...
1. mysqlエクスポートファイル: SELECT `pe2e_user_to_company`....
Ubuntu 18.04 上の Apache で動作するように phpMyAdmin をインストール...
効果環境が必要ビュー要素UIドラッグアンドドロッププラグインSortable.js必要な構成プロパテ...
最近友人からDockerを触ったことがあるかと聞かれました。あまり自信がなかったので答えられませんで...
この記事の例では、動的な背景を実現するためのjsの具体的なコードを参考までに共有しています。具体的な...
最初の方法: skip-grant-tables: 非常に便利なmysql起動パラメータ非常に便利な...
1.まずMysqlリンク設定ページを書く パッケージ com.wretchant.fredis.me...
1. Vue レスポンシブの使用法を確認する Vue の応答性は、私たち全員がよく知っています。 ...
たくさん集めましたが、すべて失敗に終わりました。最終的に、この方法は優れており、使用に影響を与えない...
サーバーへのファイルのアップロード、ソフトウェアのインストール、コマンドやスクリプトの実行、サービス...
問題の説明フロントエンドリモート検索やファジークエリと呼ばれる種類のクエリがあります。 Ele.me...
Nginx (エンジン x) は、IMAP/POP3/SMTP サービスも提供する高性能 HTTP ...
目次1つ。環境二。予防三つ。例Zabbix トリガーがしきい値に達すると、アラート メッセージの送信...
1. 単一マシン環境の構築# 1.1 ダウンロードZookeeper の対応するバージョンをダウンロ...