環境
インストール 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 初期パスワード変更
矢が放たれる前に、弓は矢にささやきました。「お前の自由は私のものだ。」スキーマは矢のようなもので、弓...
元の URL: http://segmentfault.com/blog/ciaocc/119000...
目次1. スワップパーティション SWAP 1.1 スワップファイルを作成する1.2 スワップパーテ...
環境準備:複数のコンテナに基づいてホストに lnmp をデプロイします。 nginx サービス: 1...
はじめに: Windows 10 を再インストールし、同時にファイルを整理しました。しかし、MySQ...
voidキーワードの紹介まず、void キーワードは JavaScript で非常に重要なキーワード...
通常、私たちが構築する Docker イメージはサイズが大きく、多くのディスク領域を占有します。コン...
Centos7では、/etc/rc.d/rc.localファイルの権限が削減されており、実行権限があ...
この記事では、MySQL データベースでのアカウントの作成、認証、データのエクスポートおよびインポー...
目次事前分析とは何ですか?変数と関数の準備の違いvar 変数の繰り返し宣言変数と関数の昇格の優先順位...
この記事では、Linux コマンドを使用して .sql ファイルをエクスポートおよびインポートする方...
Vueベースこの機能の核となるアイデアは、JavaScript コードを通じてページ上のノードの左余...
1. mysql-5.7.17-winx64.zip をダウンロードします。リンク: https:/...
序文最近、プロジェクトを構築しているときに、リクエストのカプセル化について考え、どのようにカプセル化...
目次ユースケースリアクティブAPI関連プロセス反応的なcreateReactiveObjectはレス...