国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > Apache > 正文

詳解使用Dockerfile創建帶Apache服務的CentOS Docker鏡像

2024-08-27 18:30:39
字體:
來源:轉載
供稿:網友

使用Dockerfile創建帶Apache服務的CentOS Docker鏡像

在宿主機上準備的文件清單:

Dockerfile

#啟動ssh和apache服務的角本run.sh

以上文件都放到/root/apache_centos目錄下

mkdir -p /root/apache_centoscd /root/apache_centos

基礎鏡像:以鏡像centos為基礎的開放SSH服務的鏡像

[root@localhost apache_centos]# docker imagesREPOSITORY     TAG         IMAGE ID      CREATED       VIRTUAL SIZEsshd        dockerfile     411d5fb16366    23 hours ago    278 MBcentos       latest       0f73ae75014f    5 weeks ago     172.3 MB

一、準備run.sh文件

在/root/apache_centos目錄新建run.sh

vim run.sh

內容如下:

#!/bin/bash/usr/sbin/sshd &/usr/local/apache2/bin/httpd -D FOREGROUND

二、準備Dockerfile

在/root/apache_centos目錄新建Dockerfile

vim Dockerfile

文件內容如下:

#新生成的鏡像是基于sshd:dockerfile鏡像FROM sshd:dockerfileMAINTAINER by Steven#安裝wgetRUN yum install -y wgetWORKDIR /usr/local/src#下載并解壓源碼包RUN wget http://apache.fayea.com/httpd/httpd-2.4.17.tar.gzRUN tar -zxvf httpd-2.4.17.tar.gzWORKDIR httpd-2.4.17#編譯安裝apacheRUN yum install -y gcc make apr-devel apr apr-util apr-util-devel pcre-develRUN ./configure --prefix=/usr/local/apache2 --enable-mods-shared=most --enable-soRUN makeRUN make install#修改apache配置文件RUN sed -i 's/#ServerName www.example.com:80/ServerName localhost:80/g' /usr/local/apache2/conf/httpd.conf#啟動apache服務RUN /usr/local/apache2/bin/httpd#復制服務啟動腳本并設置權限ADD run.sh /usr/local/sbin/run.shRUN chmod 755 /usr/local/sbin/run.sh#開放80端口EXPOSE 80CMD ["/usr/local/sbin/run.sh"]

需要注意的是:在Dockerfile文件中更換當前目錄不可以用“cd”命令,而要改用“WORKDIR”.

三、生成鏡像

docker build -t apache_dockerfile:centos .

查看生成的鏡像:

[root@localhost apache_centos]# docker imagesREPOSITORY     TAG         IMAGE ID      CREATED       VIRTUAL SIZEapache_dockerfile  centos       f8f30b4a0ee8    24 minutes ago   440 MBapache       centos       f92c55dddd07    17 hours ago    423.9 MBsshd        dockerfile     411d5fb16366    23 hours ago    278 MBcentos       latest       0f73ae75014f    5 weeks ago     172.3 MB

四、根據鏡像生成的容器并進行測試

1、生成新的容器

 docker run -d -p 2222:22 -p 8000:80 apache_dockerfile:centos /usr/local/sbin/run.sh

將容器的22端口和80端口分別映射到到宿主機上的2222端口和8000端口,并運行服務腳本。

2、查看新生成的容器:

[root@localhost apache_centos]# docker ps -aCONTAINER ID    IMAGE           COMMAND        CREATED       STATUS           PORTS                    NAMESae560e497f39    apache_dockerfile:centos  "/usr/local/sbin/run  45 seconds ago   Up 44 seconds        0.0.0.0:2222->22/tcp, 0.0.0.0:8000->80/tcp  condescending_bardeen6490cd244c10    apache:centos       "/usr/local/apache2/  17 hours ago    Exited (0) 17 hours ago                         loving_wright673e946b57e4    sshd:dockerfile      "/usr/local/sbin/run  18 hours ago    Exited (137) 17 hours ago                        reverent_bell

3、測試

測試apache

[root@localhost apache_centos]# curl localhost:8000<html><body><h1>It works!</h1></body></html>

成功!

測試ssh

[root@localhost apache_centos]# ssh localhost -p 2222root@localhost's password:

成功!

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 林周县| 宣化县| 南昌市| 平和县| 昭觉县| 丽水市| 文登市| 勃利县| 大英县| 靖宇县| 郧西县| 九寨沟县| 呼伦贝尔市| 定安县| 刚察县| 米易县| 江川县| 崇仁县| 周宁县| 淮安市| 曲周县| 高尔夫| 霍州市| 巴马| 海丰县| 台安县| 忻城县| 宝山区| 封丘县| 玉屏| 会昌县| 遂溪县| 汝阳县| 平湖市| 夏津县| 阿拉善左旗| 兴义市| 墨玉县| 女性| 高邮市| 建瓯市|