内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

為什么需要自定義一個(gè)基礎(chǔ)鏡像?

系統(tǒng)運(yùn)維

讓客戶(hù)滿(mǎn)意是我們工作的目標(biāo),不斷超越客戶(hù)的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶(hù),將通過(guò)不懈努力成為客戶(hù)在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:空間域名、網(wǎng)站空間、營(yíng)銷(xiāo)軟件、網(wǎng)站建設(shè)、甘泉網(wǎng)站維護(hù)、網(wǎng)站推廣。開(kāi)始之前

為什么需要自定義一個(gè)PHP基礎(chǔ)鏡像?

對(duì)于使用php(python)等開(kāi)發(fā)的項(xiàng)目,由于是解釋型語(yǔ)言并不需要編譯代碼這個(gè)步驟(go或者java將依賴(lài)打包到可執(zhí)行程序或包中),但是往往還需要安裝一些依賴(lài)的庫(kù)或者第三方模塊。

在項(xiàng)目實(shí)踐中一般會(huì)先在PHP官方鏡像之上,添加項(xiàng)目一些必用擴(kuò)展模塊,例如連接 mysql數(shù)據(jù)庫(kù)的 Mysqlnd模塊,或者連接 Redis、memcache、MongoDB等常用的php擴(kuò)展模塊,以項(xiàng)目實(shí)際需求為準(zhǔn)。

基礎(chǔ)鏡像作用是為項(xiàng)目鏡像提供支持,準(zhǔn)備好php基礎(chǔ)鏡像之后,以此鏡像為基礎(chǔ)并添加項(xiàng)目代碼,完成項(xiàng)目鏡像構(gòu)建工作,除重大安全更新、添加新的擴(kuò)展模塊之外,基礎(chǔ)鏡像并不會(huì)經(jīng)常更新和調(diào)整。

舉個(gè)栗子

這里使用一個(gè)示例來(lái)描述php基礎(chǔ)鏡像,環(huán)境及需求如下:

項(xiàng)目基于 `php5 + MYSQL` 開(kāi)發(fā)。
項(xiàng)目使用 `php-fpm` 運(yùn)行項(xiàng)目代碼。
項(xiàng)目使用 `nginx` 反向代理 php-fpm 并提供\'靜態(tài)資源\'服務(wù)。
項(xiàng)目需要 `mysqlnd、redis、memcache` 等php擴(kuò)展模塊。

默認(rèn)情況下 docker 只運(yùn)行一個(gè)進(jìn)程(docker推崇的理念),但是項(xiàng)目需要兩個(gè)服務(wù)(php-fpm、nginx),所以需要第三方的進(jìn)程管理軟件,在docker中較流行的方案是使用 supervisor軟件管理多個(gè)進(jìn)程。

這篇文章重點(diǎn)介紹如何實(shí)現(xiàn)一個(gè)php基礎(chǔ)鏡像,將在下一篇文章中介紹 如何使用 supervisor管理多個(gè)進(jìn)程。

操作步驟 基于以上的需求,設(shè)計(jì) Dockerfile文件。
cat base/php/5.6/Dockerfile

# 使用 php:5.6-fpm 官方鏡像
FROM php:5.6-fpm
MAINTAINER dongnan #<@微信公眾號(hào):運(yùn)維錄>

# env
ENV TZ=Asia/Shanghai \\
    LANG=en_US.UTF-8

# apt
COPY conf/sources.list /etc/apt/sources.list
RUN apt-get update && apt-get install -y \\
    supervisor nginx \\
    libfreetype6-dev \\
    libjpeg62-turbo-dev \\
    libmcrypt-dev \\
    libpng-dev \\
    libmagickwand-dev \\
    libmemcached-dev \\
    bzip2 \\
    && apt-get clean && rm -r /var/lib/apt/lists/*

# ext
RUN docker-php-ext-install bcmath \\
    dba \\
    exif \\
    mysqli \\
    pdo_mysql \\
    sysvsem \\
    sysvshm \\
    bz2 \\
    zip \\
    mysql

# gd
RUN docker-php-ext-install -j$(nproc) iconv mcrypt \\
    && docker-php-ext-configure gd \\
    --with-freetype-dir=/usr/include/ \\
    --with-jpeg-dir=/usr/include/ \\
    && docker-php-ext-install -j$(nproc) gd 

# pecl
RUN pecl install imagick \\
    memcached-2.2.0 \\
    redis-4.3.0 \\
    && docker-php-ext-enable imagick \\
    && docker-php-ext-enable memcached \\ 
    && docker-php-ext-enable redis
構(gòu)建鏡像
cd base/php/5.6/
docker build -t demo-base:0.0.1 .

Sending build context to Docker daemon 3.0 kb
# 省略....
Successfully built cd34135ed904

不明白Dockerfile文件參數(shù)含義,或者 build命令使用方法,請(qǐng)參考這篇文章《如何使用 Dockerfile自定義鏡像? 》

驗(yàn)證鏡像
docker images --format \'{{.Repository}} {{.Size}}\'

demo-base 723MB

可以使用這個(gè)php基礎(chǔ)鏡像創(chuàng)建一個(gè)容器,不過(guò)這個(gè)容器(鏡像)雖然已經(jīng)安裝了nginx但是并不會(huì)運(yùn)行,目前只有默認(rèn)的php-fpm在運(yùn)行,將在下一篇: 《使用supervisor管理Docker容器中多個(gè)進(jìn)程》解決這個(gè)問(wèn)題,敬請(qǐng)期待 公眾號(hào)每周四 docker專(zhuān)題更新文章。

小結(jié)

最后來(lái)總結(jié)下文章中的知識(shí)點(diǎn)

基礎(chǔ)鏡像作用是為項(xiàng)目鏡像提供支持,并在基礎(chǔ)鏡像之上添加項(xiàng)目代碼,完成項(xiàng)目鏡像構(gòu)建工作。 除重大安全更新、添加新的擴(kuò)展模塊之外,基礎(chǔ)鏡像不會(huì)經(jīng)常更新。 默認(rèn)情況下 docker只運(yùn)行一個(gè)進(jìn)程,需要supervisor進(jìn)程管理軟件管理多個(gè)進(jìn)程。

參考文章

doker&k8s Qun [703906133]

當(dāng)前題目:為什么需要自定義一個(gè)基礎(chǔ)鏡像?
文章網(wǎng)址:http://www.rwnh.cn/article30/cgciso.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)網(wǎng)站改版、做網(wǎng)站、App開(kāi)發(fā)外貿(mào)建站、用戶(hù)體驗(yàn)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)
泽普县| 安康市| 伽师县| 辉南县| 屯门区| 鲁山县| 丽水市| 安丘市| 黑龙江省| 西充县| 台东市| 昌都县| 清涧县| 宣汉县| 山东| 汝城县| 积石山| 若尔盖县| 镇沅| 含山县| 尼木县| 北宁市| 绵竹市| 思茅市| 噶尔县| 全椒县| 金寨县| 环江| 呼图壁县| 纳雍县| 澜沧| 宾川县| 江源县| 株洲市| 盖州市| 织金县| 壶关县| 肇州县| 饶阳县| 陆河县| 红桥区|