docker lamp

使用docker安裝lamp


docker search-s10lamp#搜索被收藏或使用較多的LAMP鏡像,小伙伴們都推薦使用tutum/lamp

docker pull tutum/lamp#下載鏡像

#使用默認(rèn)方式啟動(dòng)LAMP

docker run -d -p 8080:80 -p3306:3306 tutum/lamp

#友提,如果報(bào)bind:address already in use的錯(cuò)誤,那就重新選擇一個(gè)新的host_port(-p host_port:container_port)做為映射端口

感覺寫的不錯(cuò),補(bǔ)充下,轉(zhuǎn)載:https://github.com/whorusq/docker-learning/tree/master/lamp1#lamp1基于-虛擬機(jī)-形式的-fat-container,中途部署中有點(diǎn)依賴包需要安裝,會(huì)在文章中指出

lamp1(基于 虛擬機(jī) 形式的 Fat Container)

單一進(jìn)程容器,又被稱為 Fat Container ,類似虛擬機(jī),不推薦1.獲取鏡像,啟動(dòng)容器

這里使用官方鏡像 Ubuntu16.04,采用加速器 daocloud.io 以解決國內(nèi)訪問 docker-hub 慢的問題,也可以采用阿里云鏡像加速器

$ docker pull ubuntu:16.04$ docker run-it ubuntu:16.04root@86ea8d701da0:/#2. 在容器中配置所需要的開發(fā)環(huán)境2.1. 替換阿里云軟件更新源

root@86ea8d701da0:/# apt-getupdate

root@86ea8d701da0:/# apt-getinstall -y vim

root@86ea8d701da0:/# vim /etc/apt/sources.list

#16.04deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-propertiesdeb http://mirrors.aliyun.com/ubuntu/ xenial main restricteddeb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-propertiesdeb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricteddeb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-propertiesdeb http://mirrors.aliyun.com/ubuntu/ xenial universedeb http://mirrors.aliyun.com/ubuntu/ xenial-updates universedeb http://mirrors.aliyun.com/ubuntu/ xenial multiversedeb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiversedeb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-propertiesdeb http://archive.canonical.com/ubuntu xenial partnerdeb-src http://archive.canonical.com/ubuntu xenial partnerdeb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricteddeb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-propertiesdeb http://mirrors.aliyun.com/ubuntu/ xenial-security universedeb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverseroot@86ea8d701da0:/# apt-getupdate2.2. 安裝常用軟件包

root@86ea8d701da0:/# apt-getinstall -y net-tools curl wget gcc sudo lsof software-properties-common2.3. 安裝 AMP 軟件

# 安裝 MySQL(過程中需要輸入數(shù)據(jù)庫的 root 密碼)

root@86ea8d701da0:/# apt-getinstall -y mysql-server mysql-client

root@86ea8d701da0:/# usermod -d /var/lib/mysql/mysql

# 安裝 Apache2

root@86ea8d701da0:/# apt-getinstall -y apache2

root@86ea8d701da0:/# echo"ServerName localhost">> /etc/apache2/apache2.conf

# 安裝 PHP5.6root@86ea8d701da0:/# add-apt-repository ppa:ondrej/php

root@86ea8d701da0:/# apt-getupdate

root@86ea8d701da0:/# apt-getinstall -y php5.6libapache2-mod-php5.6php5.6-dev php5.6-mysql php5.6-gd php5.6-curl php5.6-mbstringphp5.6-xml--allow-unauthenticated注意:需要執(zhí)行下面幾個(gè)操作

cat/etc/default/locale

LANG="en_US.UTF-8apt-getinstall language-pack-en

update-locale LANG=en_US.UTF-8root@86ea8d701da0:/# pecl install pdo_mysql# 使用 ps-ef 或 netstat -tlunp 查看 MySQL、Apache

# 如果服務(wù)沒有自動(dòng)啟動(dòng),可使用如下命令手動(dòng)啟動(dòng)

root@86ea8d701da0:/# service mysql start

root@86ea8d701da0:/# service apache2 start2.5. 驗(yàn)證

root@86ea8d701da0:/# curl localhost3. 清理垃圾

root@86ea8d701da0:/# apt-getclean

root@86ea8d701da0:/# apt-getautoclean

root@86ea8d701da0:/# rm -rf /var/lib/apt/lists/*/tmp/* /var/tmp/* /var/log/apache2/* /var/log/mysql/*

root@86ea8d701da0:/# echo /dev/null > ~/.bash_history

4. 提交變更

# 命令基本語法

docker commit [選項(xiàng)] <容器ID或容器名> [<倉庫名>[:<標(biāo)簽>]]

# 查看當(dāng)前運(yùn)行中的容器

$ docker ps

CONTAINER ID? ? ? ? IMAGE? ? ? ? ? ? ? COMMAND? ? ? ? ? ? CREATED? ? ? ? ? ? STATUS? ? ? ? ? ? ? PORTS? ? ? ? ? ? ? NAMES

86ea8d701da0? ? ? ? ubuntu:16.04? ? ? ? "/bin/bash"? ? ? ? 53 minutes ago? ? ? Up 53 minutes? ? ? ? ? ? ? ? ? ? ? ? ? priceless_clarke

# 提交已經(jīng)修改的容器為新的鏡像

$ docker commit --author "whoru.S.Q " --message "init" 86e lamp:v1

# 查看鏡像列表

$ docker images

REPOSITORY? ? ? ? ? TAG? ? ? ? ? ? ? ? IMAGE ID? ? ? ? ? ? CREATED? ? ? ? ? ? SIZE

lamp? ? ? ? ? ? ? ? v1? ? ? ? ? ? ? ? ? fa80dfae1af0? ? ? ? 8 minutes ago? ? ? 875 MB

ubuntu? ? ? ? ? ? ? 16.04? ? ? ? ? ? ? 0ef2e08ed3fa? ? ? ? 8 weeks ago? ? ? ? 130 MB

5. 以新鏡像啟動(dòng)容器

# 映射為 8888 端口;本地 www 目錄

$ docker run -idt -p 8888:80 -v ~/www:/var/www/html lamp:v1

e629b4c8bb3e3c1c3491e9da2f4a230a22e5172bddaaeb0ced8c3b807393ca2c

# 既然容器手動(dòng)啟動(dòng)一下服務(wù)

$ docker exec -it e62 /bin/bash

root@e629b4c8bb3e:/# service apache2 start

root@e629b4c8bb3e:/# exit

瀏覽器訪問:localhost:8888

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容