最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用docker搭建LAMP運行環(huán)境教程詳解

 更新時間:2016年10月18日 12:03:57   投稿:daisy  
LAMP相信對大家來說都不陌生, Docker是一個開源的引擎,可以輕松的為任何應(yīng)用創(chuàng)建一個輕量級的、可移植的、自給自足的容器,所以這篇文章給大家介紹利用docker快速搭建LAMP運行環(huán)境的方法,有需要的朋友們可以參考借鑒,下面來一起看看吧。

LAMP介紹

LAMP 指的 Linux(操作系統(tǒng))、ApacheHTTP 服務(wù)器,MySQL(有時也指MariaDB,數(shù)據(jù)庫軟件) 和 PHP(有時也是指 Perl 或 Python) 的第一個字母,一般用來建立 web 服務(wù)器。 雖然這些開放源代碼程序本身并不是專門設(shè)計成同另幾個程序一起工作的,但由于它們的免費和開源,這個組合開始流行(大多數(shù)Linux發(fā)行版本***了這些軟件)。當(dāng)一起使用的時候,它們表現(xiàn)的像一個具有活力的解決方案包。

下面介紹如何使用docker來搭建一個包含lamp組件的容器:

從網(wǎng)站上 pull 一個 lamp 鏡像

官方的倉里沒有標(biāo) OFFICIAL 的 lamp 的鏡像,不過 「tutum」的鏡像做的非常好,我們可以直接 pull 他們的鏡像來完成我們的操作。

"lang-bash">core@localhost ~/base $ docker pull tutum/lamp
Pulling repository tutum/lamp
b32789c7d66: Download complete
...

使用默認(rèn)方式啟動 lamp 容器

"lang-bash">core@localhost ~/base $ docker run "hljs-operator">-d -p : -p : tutum/lamp

 
ee00c97a5cdefb985baf826c16723f333aa5edddee4072a5107c724ad09f10d
core@localhost ~/base $ docker ps
CONTAINER ID    IMAGE               COMMAND        CREATED       STATUS       PORTS                     NAMES
ee00c97a5 "hljs-built_in">cd    tutum/lamp:latest         "/run.sh"        seconds ago    Up seconds    0.0.0.0:->/tcp, 0.0.0.0:->/tcp  lonely_davinci
e3c136d76b44    tutum/tomcat: "hljs-number">8.0          "hljs-string">"/run.sh"        minutes ago   Up minutes    "hljs-number">0.0. "hljs-number">0.0:->/tcp              tomcat001
fe9e65aaf58c    dl.dockerpool.com:/mysql: "hljs-number">5.7  "hljs-string">"/entrypoint.sh mysq  51 minutes ago   Up 51 minutes    3306/tcp                    db001,tomcat001/tomysql
core@localhost ~/base $ curl http://127.0.0.1:8080

#使用curl可以查看到默認(rèn)的應(yīng)用已經(jīng)啟動

<html>
<head>
    <title>Hello world!</title>
    <style>
    body {
        background-color: white;
        text-align: center;
        padding: 50px;
        font-family: "Open Sans "hljs-string">","Helvetica Neue "hljs-string">",Helvetica,Arial,sans-serif;
    }

    #logo {
        margin-bottom: 40px;
    }
    </style>
</head>
<body>
    <img id="logo "hljs-string">" src="http://upload.server110.com/image/20141116/205R55010-0.png" />
    <h1>Hello world!</h1>
            <h2>MySQL Server version: 5.5.38-0ubuntu0.14.04.1</h2>
    </body>
</html>

部署自己的 PHP 應(yīng)用

默認(rèn)的容器啟動了一個 helloword 應(yīng)用,我們可以使用 dockerfile 創(chuàng)建另外一個鏡像來部署我們自己的應(yīng)用程序,dockerfile 的詳細(xì)語法將在后面章節(jié)介紹。

core@localhost ~ $ mkdir php
core@localhost ~ $ cd php/
core@localhost ~/php $ touch Dockerfile
core@localhost ~/php $ vi Dockerfile
core@localhost ~/php $ docker build -t dockerpool/my-lamp-app .

Dockerfile 內(nèi)容如下:

FROM tutum/lamp:latest
RUN rm -fr /app && git clone https://github.com/username/customapp.git /app
#這里替換 https://github.com/username/customapp.git 地址為你自己的項目地址
EXPOSE 80 3306
CMD ["/run.sh"]

再次啟動自己的容器就完成部署了

"lang-bash">core@localhost ~/php $ docker stop  ee
ee
core@localhost ~/php $ docker rm ee
ee
core@localhost ~/php $ docker run "hljs-operator">-d -p : -p : dockerpool/my-lamp-app

使用 curl看下自己的應(yīng)用程序是不是已經(jīng)正確啟動了吧!

curl http://localhost/

在 php 程序中連接數(shù)據(jù)庫 在容器中訪問 mysql 數(shù)據(jù)庫

這個鏡像的 mysql 數(shù)據(jù)庫有個默認(rèn)的 root 用戶,本地連接時可以不用密碼,所以在代碼訪問非常簡單。

"hljs-preprocessor"><?php
$mysql = "hljs-keyword">new mysqli( "hljs-string">"localhost", "hljs-string">"root");
echo "hljs-string">"MySQL Server info: ". "hljs-variable">$mysql "hljs-variable">->host_info;
?>

在容器外部訪問 mysql 數(shù)據(jù)庫

當(dāng)我們第一次以 tutum/lamp 鏡像啟動容器的時候,它會自動創(chuàng)建一個叫 admin 的 mysql 用戶,并生成一個隨機密碼,使用「docker logs +容器ID」可以獲取到這個密碼。

"lang-bash">core@localhost ~/php $ docker logs cb
=> An empty or uninitialized MySQL volume is detected in /var/lib/mysql
=> Installing MySQL ...
=> Done!
=> Waiting "hljs-keyword">for confirmation of MySQL service startup
=> Creating MySQL admin user with random password
=> Done!
========================================================================
You can now connect to this MySQL Server using:

  mysql -uadmin -p2Ijg6gvmM0N3 -h<host> -P<port>

Please remember to change the above password as soon as possible!
MySQL user "hljs-string">'root' has no password but only allows local connections
========================================================================

默認(rèn)的 root 用戶無法遠(yuǎn)程登陸,所以要使用 admin 用戶,它同樣具有 root 權(quán)限。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家用docker搭建LAMP能有所幫助,如果有疑問大家可以留言交流。

相關(guān)文章

  • Docker容器生命周期 | kill和 stop的區(qū)別與聯(lián)系 | docker pause/ unpause

    Docker容器生命周期 | kill和 stop的區(qū)別與聯(lián)系 | d

    這篇文章主要介紹了Docker容器生命周期 | kill和 stop的區(qū)別與聯(lián)系 | docker pause/ unpause,本講內(nèi)容是從?Docker入門到進(jìn)階里面抽離出來的內(nèi)容,從而使原文更加有序、重點突出,需要的朋友可以參考下
    2023-08-08
  • 在Docker Compose中獲取最新鏡像的多種方法總結(jié)

    在Docker Compose中獲取最新鏡像的多種方法總結(jié)

    Docker 鏡像是 Docker 容器的基礎(chǔ),鏡像包含了應(yīng)用程序所需的所有文件和依賴,Docker-Compose 默認(rèn)不會自動拉取最新的鏡像版本,這可能會導(dǎo)致使用過時的鏡像,從而錯過重要的更新,為了確保 Docker-Compose 始終使用最新的鏡像,我們可以采用多種方法,以下將詳細(xì)介紹這些方法
    2024-08-08
  • 利用Docker搭建本地https環(huán)境的完整步驟

    利用Docker搭建本地https環(huán)境的完整步驟

    這篇文章主要給大家介紹了關(guān)于如何利用Docker搭建本地https環(huán)境的完整步驟,文中通過示例代碼將實現(xiàn)的步驟介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2018-04-04
  • 關(guān)于docker清理Overlay2占用磁盤空間的問題(親測有效)

    關(guān)于docker清理Overlay2占用磁盤空間的問題(親測有效)

    使用Docker過程中,長時間運行服務(wù)容器,導(dǎo)致不能進(jìn)行上傳文件等操作,今天通過本文給大家詳細(xì)介紹下docker清理Overlay2占用磁盤空間的相關(guān)知識,感興趣的朋友一起看看吧
    2022-03-03
  • 在Docker中使用Redis的步驟詳解

    在Docker中使用Redis的步驟詳解

    這篇文章主要給大家介紹了關(guān)于如何在Docker中使用Redis的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Docker鏡像下載的常見問題及解決辦法

    Docker鏡像下載的常見問題及解決辦法

    在使用Docker時,用戶常遇到下載鏡像錯誤,如TLS握手超時、請求取消等,主要由網(wǎng)絡(luò)狀況、配置問題或DockerHub服務(wù)導(dǎo)致,本文就來介紹了一下幾種解決方法,感興趣的可以了解一下
    2024-10-10
  • docker守護(hù)進(jìn)程配置代理

    docker守護(hù)進(jìn)程配置代理

    本文主要介紹了docker守護(hù)進(jìn)程配置代理,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-06-06
  • 查看docker中運行的JVM參數(shù)問題及解決方法

    查看docker中運行的JVM參數(shù)問題及解決方法

    這篇文章主要介紹了查看docker中運行的JVM參數(shù),方法一使用的是jcmd命令,方法二是jinfo命令,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2022-04-04
  • Docker安裝MySql遇到的問題解決

    Docker安裝MySql遇到的問題解決

    本文主要介紹了Docker安裝MySql遇到的問題解決,詳細(xì)的介紹了查詢中文亂碼問題以及主從同步中遇到的問題,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-02-02
  • Docker拉取鏡像過慢或卡死的解決方法(親測有效)

    Docker拉取鏡像過慢或卡死的解決方法(親測有效)

    本文主要介紹了Docker拉取鏡像過慢或卡死的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07

最新評論

仁布县| 湛江市| 金堂县| 天全县| 靖安县| 安新县| 南丰县| 泸溪县| 纳雍县| 建始县| 施甸县| 甘肃省| 长子县| 新丰县| 哈尔滨市| 时尚| 商水县| 武城县| 新丰县| 大埔区| 南召县| 河南省| 木兰县| 温宿县| 闸北区| 原阳县| 佛教| 鹤峰县| 兰溪市| 辽宁省| 牟定县| 西平县| 永顺县| 田林县| 汉沽区| 都昌县| 新宁县| 大田县| 昭通市| 永福县| 汉寿县|