これまでにも Docker 環境でいくつかのプロジェクトを実行したことはありますが、まだイメージをよく理解していません。また、インターネット上の既存のイメージには未使用のライブラリが多すぎるため、独自のイメージをゼロから構築することにしました。 Alpine Linuxがベースイメージです docker pull gliderlabs/alpine アルパイン Linux ミラー アドレス 最新のタグはバージョン3.8で、画像のサイズはわずか4Mで、非常に合理化されています。 画像を実行する docker run -it gliderlabs/alpine 実行してみると、基本的な Linux ファイルシステムがあることがわかります。ここではデモはしませんが、興味のある方は自分で試してみることができます。 PHPとnginxをインストールする apkアップデート apk php7 nginx を追加 次に、必要に応じて、PHP 関連の拡張パッケージまたはその他の Linux 拡張パッケージのインストールを続行できます。 PHP7 ツールキットなどの拡張パッケージを検索するには、次のコマンドを使用します。 # apk 検索 php7 PHP拡張機能をインストールする 次のようにコードをコピーします。 apk に php7-mysqli php7-pdo_mysql php7-mbstring php7-json php7-zlib php7-gd php7-intl php7-session php7-fpm php7-memcached を追加します ディレクトリ構造
php-fpmとnginxを起動する # 最初に pid ファイルを作成してください。そうしないと、nginx は実行できません。mkdir /run/nginx /run/nginx/nginxpid をタッチします # 最初にphpを実行し、次にnginxを実行します php-fpm7 は、 nginx のディレクトリは /usr/sbin/nginx です。 この時点で、PHP と nginx が正常に動作していることがわかり、ミラーリング環境が基本的に完成しました。 次に、この画像を保存する方法を見てみましょう。 画像を作成する 別のターミナルを開き、docker ps を使用してイメージ ID を表示します。次のコマンドでイメージを保存できます。 docker commit -a "yisonli" -m "私の最初の php7-nginx" 9d9c6030e5e9 yisonli/php7-nginx-alpine:0.1 注: 9d9c6030e5e9 はイメージ ID、yisonli/php7-nginx-alpine は保存されたイメージ名、バージョンは 0.1 と定義されています。 新しく生成されたイメージを実行する 効果を確認するにはポート8080をバインドしてください docker run -it -p 8080:8080 yisonli/php7-nginx-alpine:0.1 php-fpm と nginx を手動で起動すると、ブラウザで効果を確認できます。 http://127.0.0.1:8080/index.php Docker 追加レコード 【共有フォルダ】 docker run -v `pwd`/www:/var/www/html -it -p 8080:8080 yisonli/php7-nginx-alpine:0.1 実行されていないコンテナを削除する docker rm $(docker ps -a -q) [Dockerfileを使用してイメージを構築する] php7-nginx-alpine をビルドします。 0.2 は、この記事のプロセスを若干最適化して Dockerfile に書き込んだ上でビルドされており、起動スクリプトも付属しています。 Docker Hub にアップロードされており、ダウンロードして調査することができます。 画像にタグを追加する docker タグ 9d9c6030e5e9 テスト/mytag 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
CentOS 7 では、次のようなコマンドを使用してホスト ポートをコンテナー ポートにマッピングす...
以下のように表示されます。 SELECT count(DISTINCT(a.rect_id)) zc...
毎回インストールチュートリアルを探すのは面倒なので、後で確認できるように手順をバックアップします。解...
目次序文1. コードによって設定されたデータベース名またはパスワードがローカルデータベースと一致して...
JS の async 関数と await キーワード 関数ヘルワールド() { 「こんにちは!美しい...
目次1 ユーザー変数の概要2 ユーザー変数の定義3 ユーザー変数の使用3.1 セットを通した例3.2...
序文Linux では「すべてがファイル」であることは誰もが知っているので、ファイルのオープン状態を確...
MySQL は、スウェーデンの会社 MySQL AB によって開発されたオープンソースの小規模なリレ...
この記事では、シンプルな HTML ビデオ プレーヤーを実装する方法を紹介し、皆さんと共有します。詳...
SASS で定義された変数では、後で設定された値によって古い値が上書きされます。 $色: 赤; $色...
いわゆるスライディングドアテクノロジーとは、さまざまな長さのテキストに合わせてボックスの背景を自動的...
目次導入Homebrewをインストールするnvmをインストールするノードをインストールするインストー...
WeChatアプレットでタブバーを設定すると、重要なコンテンツがブロックされ、iPhoneXなどの異...
次のような要件があります: インポート ボタン。ボタンをクリックして Excel テーブルをインポー...
MySQL 5.7.27のインストールチュートリアルは以下のように記録され、皆さんと共有されています...