Dockerコンテナのソースコードを使用してhttpdをデプロイし、ストレージボリュームを使用してWebサイトをデプロイするhttpdイメージを作成する// httpd コンテナを作成 [root@localhost ~]# docker run -tid --name httpd centos 2d693e16f4f3734b127cbae90d189c1b4e78619a54ceec912a82d96cf4f1c345 [root@localhost ~]# docker ps コンテナID イメージ コマンド 作成ステータス ポート名 2d693e16f4f3 centos "/bin/bash" 5秒前 4秒前 httpd // このコンテナに接続します [root@localhost ~]# docker exec -it 2d693e16f4f3 /bin/bash [ルート@2d693e16f4f3 /]# // ソースパッケージをコンテナに入れる [root@localhost ~]# docker cp /usr/src/apr-1.7.0.tar.gz 2d693e16f4f3:/usr/src/ [root@localhost ~]# docker cp /usr/src/apr-util-1.6.1.tar.gz 2d693e16f4f3:/usr/src/ [root@localhost ~]# docker cp /usr/src/httpd-2.4.49.tar.gz 2d693e16f4f3:/usr/src/ [root@2d693e16f4f3 /]# ls /usr/src/ apr-1.7.0.tar.gz デバッグカーネル apr-util-1.6.1.tar.gz httpd-2.4.49.tar.gz // ソースコードからhttpdをインストールする [root@2d693e16f4f3 /]# useradd -r -M -s /sbin/nologin apache [root@2d693e16f4f3 /]# id apache uid=998(apache) gid=996(apache) グループ=996(apache) [root@2d693e16f4f3 /]# yum グループ マーク インストール '開発ツール' -y [root@2d693e16f4f3 /]# yum -y インストール openssl-devel pcre-devel expat-devel libtool gcc gcc-c++ make [root@2d693e16f4f3 /]# cd /usr/src/ [root@2d693e16f4f3 src]# tar xf apr-1.7.0.tar.gz -C /usr/local/ [root@2d693e16f4f3 src]# tar xf apr-util-1.6.1.tar.gz -C /usr/local/ [root@2d693e16f4f3 src]# tar xf httpd-2.4.49.tar.gz -C /usr/local/ [root@2d693e16f4f3 src]# cd /usr/local/apr-1.7.0/ [root@2d693e16f4f3 apr-1.7.0]# vi 設定 cfgfile="${ofile}T" トラップ "$RM \"$cfgfile\"; 終了 1" 1 2 15 # $RM "$cfgfile" //この行をコメント化するか削除します [root@2d693e16f4f3 apr-1.7.0]# ./configure --prefix=/usr/local/apr [root@2d693e16f4f3 apr-1.7.0]# 作成 && インストール [root@2d693e16f4f3 ローカル]# cd apr-util-1.6.1/ [root@2d693e16f4f3 apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/ [root@2d693e16f4f3 apr-util-1.6.1]# 作成 && インストール [root@2d693e16f4f3 apr-util-1.6.1]# cd ../httpd-2.4.49/ [root@2d693e16f4f3 httpd-2.4.49]# ./configure --prefix=/usr/local/apache \ > --enable-so \ > --enable-ssl \ > --enable-cgi \ > --enable-rewrite \ > --with-zlib \ > --with-pcre \ > --with-apr=/usr/local/apr \ > --with-apr-util=/usr/local/apr-util/ \ > --enable-modules=ほとんど\ > --enable-mpms-shared=すべて \ > --with-mpm=プリフォーク [root@2d693e16f4f3 httpd-2.4.49]# 作成 && インストール [root@2d693e16f4f3 local]# echo 'export PATH=/usr/local/apache/bin:$PATH' > /etc/profile.d/httpd.sh [root@2d693e16f4f3 ローカル]# ソース /etc/profile.d/httpd.sh [root@2d693e16f4f3 ローカル]# ln -s /usr/local/apache/include /usr/include/apache [root@2d693e16f4f3 ローカル]# apachectl 開始 [root@2d693e16f4f3 ローカル]# ss -anlt 状態 受信Q 送信Q ローカルアドレス:ポート ピアアドレス:ポート プロセス 聞く 0 128 0.0.0.0:80 0.0.0.0:* [root@2d693e16f4f3 ローカル]# cd / [ルート@2d693e16f4f3 /]# [ルート@2d693e16f4f3 /]# [root@2d693e16f4f3 /]# vi スタート.sh #!/bin/sh /usr/local/apache/bin/apachectl を起動します バイナリ [root@2d693e16f4f3 /]# chmod +x start.sh //イメージをビルド [root@localhost ~]# docker commit -p -c 'CMD ["/bin/bash","start.sh"]' 2d693e16f4f3 syblyw0806/httpd:v0.1 sha256:16913ce01fdceee9a389906cf385893120734b1a088b894cc5dce1a9ead252fd [root@localhost ~]# docker イメージ リポジトリ タグ イメージ ID 作成 サイズ syblyw0806/httpd v0.1 16913ce01fdc 6秒前 713MB busybox 最新 d23834f29b38 6日前 1.24MB centos 最新 5d0da3dc9764 2か月前 231MB nfsを展開する新しい仮想マシンを起動する必要があります [root@localhost ~]# yum -y nfs-utilsをインストールします [root@localhost ~]# systemctl nfs-server.service を再起動します [root@localhost ~]# mkdir /nfs [root@localhost ~]# chmod 777 /nfs/ [root@localhost ~]# vim /etc/exports /nfs 192.168.200.136(rw) [root@localhost ~]# systemctl nfs-serverを再起動します docker サービスを使用して仮想マシンに nfs をインストールする [root@localhost ~]# yum -y nfs-utilsをインストールします [root@localhost ~]# showmount -e 192.168.200.137 192.168.200.137 のエクスポート リスト: /nfs 192.168.200.136 マウント[root@localhost ~]# マウント -t nfs 192.168.200.137:/nfs /var/www/html/ [root@localhost ~]# df -h ファイルシステムサイズ 使用済み 使用可能使用率 マウント先 devtmpfs 883M 0 883M 0% /dev tmpfs 901M 0 901M 0% /dev/shm tmpfs 901M 8.9M 892M 1% /実行 tmpfs 901M 0 901M 0% /sys/fs/cgroup /dev/mapper/rhel-root 47G 23G 25G 48% / /dev/nvme0n1p1 1014M 179M 836M 18% /ブート tmpfs 181M 0 181M 0% /run/user/0 オーバーレイ 47G 23G 25G 48% /var/lib/docker/overlay2/0a219b8bbb04290f6b1cc1ae29f5eb1a9bc713ff12c86c86c7e13d5c7ca63a0e/マージ済み 192.168.200.137:/nfs 47G 2.2G 45G 5% /var/www/html コンテナを作成してマップする[root@localhost ~]# docker run -itd --name httpd1 -p 80:80 -v /var/www/html/:/usr/local/apache/htdocs 16913ce01fdc 42e38f1db61e49fafa0682125d0425e3d41c4f2db0f48e1973dee1905a90daf3 [root@localhost ~]# docker ps コンテナID イメージ コマンド 作成ステータス ポート名 42e38f1db61e 16913ce01fdc "/bin/bash start.sh" 10 秒前 9 秒前に起動 0.0.0.0:80->80/tcp、:::80->80/tcp httpd1 展開したいウェブサイトのコードをアップロードします [root@localhost ~]# cd /var/www/html/ [root@localhost html]# ls game.html 画像 index.html js スタイル この時点で、新しく開いた仮想マシンのNFSを確認します [root@localhost ~]# ls /nfs/ game.html 画像 index.html js スタイル アクセステストこれで、docker コンテナ ソース コードに httpd をデプロイし、ストレージ ボリュームを使用して Web サイトをデプロイする方法についての説明は終わりです。docker コンテナに httpd をデプロイする方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: ウェブページで CSS スタイルを適用するさまざまな形式の概要
>>: HTML の順序付きリスト、順序なしリスト、定義リストに関する簡単な説明
CSS を使用するだけで、コーナーカット + ボーダー + 投影 + コンテンツの背景色のグラデーシ...
<base> タグは、ページ上のすべてのリンクのデフォルトのアドレスまたはデフォルトの...
この記事では、Taobao商品詳細のカルーセルを実現するためのvideojs+swiperの具体的な...
目次まとめ環境とツールの準備サーバー仮想化のインストール VMware ESXi仮想マシンのオペレー...
具体的な方法: 1. コマンドプロンプトを開く2. mysql -u root -pコマンドを入力し...
パート0 背景社内のイントラネットサーバーは直接インターネットにアクセスすることはできませんが、外部...
タブ: カテゴリ + 説明タグバー: カテゴリ => ユーザーに現在地と目的地を知らせる1. ...
目次序文1. バイナリツリー1.1. 二分木の走査1.2. jsを使用してバイナリツリーを表現する1...
目次序文$属性例: $listeners (公式説明)使用シナリオ要約する序文複数レベルのコンポーネ...
序文誰もが vue2 の watch API に精通している必要があります。vue2 の vue イ...
CSS3 では、transform 関数を使用して、テキストや画像の回転、拡大縮小、傾斜、移動という...
目次序文解決ツールの紹介仕組み使用制限使用上の注意使用例いくつかのパラメータの説明出力例Tencen...
この記事では、書籍管理を実装するためのVueの具体的なコードを例として紹介します。具体的な内容は次の...
1. 概要この記事では、DOCTYPE要素を体系的に説明します。同時に、多くの情報を調べました。イン...
この記事では、例を使用して、MySQL がストアド プロシージャで引き起こすエラー状態 (SIGNA...