Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步驟

這篇文章主要講解了“Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步驟”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步驟”吧!

道縣網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)公司!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)公司成立于2013年到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)公司。

創(chuàng)建Apache+PHP+phpMyAdmin鏡像

首先啟動(dòng)MariaDB的容器

在上一節(jié)中我們知道數(shù)據(jù)庫(kù)的用戶名是root,密碼是123456,但是我們還缺少數(shù)據(jù)庫(kù)的ip地址,我們使用如下方法獲取docker實(shí)例的ip地址,是172.17.0.3

[root@test01 ~]# docker ps
CONTAINER ID        IMAGE                      COMMAND             CREATED             STATUS              PORTS                     NAMES
2e78c466919e        liuxin/centos-mariadb:v1   "/root/run.sh"      11 hours ago        Up 3 hours          0.0.0.0:13306->3306/tcp   dreamy_bell
[root@test01 ~]# docker inspect --format '{{ .NetworkSettings.IPAddress }}' 2e78c466919e
172.17.0.3
[root@test01 ~]#

首先創(chuàng)建目錄和文件

[root@test01 ~]# mkdir phpMyAdmin_dockerfile && cd phpMyAdmin_dockerfile
[root@test01 phpMyAdmin_dockerfile]# ls
config.inc.php  Dockerfile  httpd_init.sh  phptest.php  run.sh

編輯Dockerfile文件

內(nèi)容如下。具體每行的意思已經(jīng)添加到注釋中了

[root@test01 phpMyAdmin_dockerfile]# cat Dockerfile 
##使用的基礎(chǔ)鏡像
FROM centos:7.4.1708
#添加作者信息
MAINTAINER liuxin 842887233@qq.com
#工作目錄
WORKDIR /root/
#安裝httpd和php,并忽略錯(cuò)誤
RUN yum -y install httpd
RUN yum -y install php
#安裝mariadb客戶端和php-MySQLnd
RUN yum -y install mariadb
RUN yum -y install php-mysqlnd
RUN yum -y install php-mbstring
#安裝phpmyadmin
RUN yum -y install epel-release
RUN yum -y install phpmyadmin
#設(shè)置環(huán)境變量,便于管理
ENV MARIADB_ADDR 172.17.0.3
ENV MARIADB_PORT 3306
ENV MARIADB_USER root
ENV MARIADB_PASS 123456
#讓容器支持中文
ENV LC_ALL en_US.UTF-8
#配置phpmyadmin
#ADD phpMyAdmin.conf /etc/httpd/conf.d/phpMyAdmin.conf
ADD config.inc.php /etc/phpMyAdmin/config.inc.php
RUN chown root:apache /etc/phpMyAdmin/config.inc.php
RUN chmod 640 /etc/phpMyAdmin/config.inc.php
#添加php測(cè)試界面
ADD phptest.php /var/www/html/phptest.php
#初始化httpd服務(wù)
ADD httpd_init.sh /root/httpd_init.sh
RUN chmod 775 /root/httpd_init.sh
RUN /root/httpd_init.sh
#導(dǎo)出端口
EXPOSE 80
#添加啟動(dòng)文件
ADD run.sh /root/run.sh
RUN chmod 775 /root/run.sh
#設(shè)置默認(rèn)啟動(dòng)命令CMD ["/root/run.sh"]

配置phpmyadmin的配置文件

這里我直接將寫好的配置文件上傳,然后修改文件權(quán)限。也可以通過 腳本 來配置,不過比較麻煩,不如這個(gè)簡(jiǎn)單。改動(dòng)的配置如下

設(shè)置phpmyadmin的登錄密碼

$cfg['blowfish_secret'] = '123456'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
設(shè)置連接數(shù)據(jù)庫(kù)的賬號(hào)、密碼、ip和端口
$cfg['Servers'][$i]['host']          = '172.17.0.3';    // MySQL hostname or IP address
$cfg['Servers'][$i]['port']          = '';              // MySQL port - leave blank for default port
$cfg['Servers'][$i]['user']          = 'root';          // MySQL user
$cfg['Servers'][$i]['password']      = '123456';      // MySQL password (only needed

使用 腳本 配置httpd

[root@test01 phpMyAdmin_dockerfile]# cat httpd_init.sh 
#!/bin/sh
sed -i 's/#ServerName www.example.com:80/ServerName localhost:80/g' /etc/httpd/conf/httpd.conf
sed -i '/Require ip/d' /etc/httpd/conf.d/phpMyAdmin.conf
sed -i '//a Require all granted' /etc/httpd/conf.d/phpMyAdmin.conf

添加一個(gè)php測(cè)試界面

[root@test01 phpMyAdmin_dockerfile]# cat phptest.php 
< ?php
phpinfo();
?>

啟動(dòng)腳本

[root@test01 phpMyAdmin_dockerfile]# cat run.sh 
#!/bin/sh
httpd
while true;do sleep 1000;done

創(chuàng)建鏡像

[root@test01 phpMyAdmin_dockerfile]# docker build -t liuxin/centos-phpmyadmin:v1 ./
Sending build context to Docker daemon 14.34 kB
Step 1 : FROM centos:7.4.1708
 ---> 3afd47092a0e
.
.
省略...
.
.
Step 26 : CMD /root/run.sh
 ---> Using cache
 ---> 19e52b9aceab
Successfully built 19e52b9aceab
[root@test01 phpMyAdmin_dockerfile]#

創(chuàng)建并啟動(dòng)容器

映射,物理機(jī)端口8080到容器的80端口

[root@test01 phpMyAdmin_dockerfile]# docker run -d -p 8080:80 liuxin/centos-phpmyadmin:v1 /root/run.sh
a5a54528879ea95e9bf98a7ba3fbf6236b26f3a54a5305738a4ee770164f105b
[root@test01 phpMyAdmin_dockerfile]# docker ps
CONTAINER ID        IMAGE                         COMMAND             CREATED             STATUS              PORTS                     NAMES
a5a54528879e        liuxin/centos-phpmyadmin:v1   "/root/run.sh"      56 seconds ago      Up 54 seconds       0.0.0.0:8080->80/tcp      sick_ride
2e78c466919e        liuxin/centos-mariadb:v1      "/root/run.sh"      12 hours ago        Up 4 hours          0.0.0.0:13306->3306/tcp   dreamy_bell
[root@test01 phpMyAdmin_dockerfile]#

驗(yàn)證

打開web瀏覽器,輸入測(cè)試的網(wǎng)頁(yè)

Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步驟

輸入phpmyadmin的地址,并輸入賬號(hào)密碼,看能否登錄

Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步驟

登錄成功,大功告成

Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步驟

感謝各位的閱讀,以上就是“Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步驟”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步驟這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

網(wǎng)頁(yè)名稱:Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步驟
瀏覽地址:http://muchs.cn/article2/ghejic.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、企業(yè)網(wǎng)站制作、自適應(yīng)網(wǎng)站、做網(wǎng)站、網(wǎng)站設(shè)計(jì)小程序開發(fā)

廣告

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

成都網(wǎng)站建設(shè)公司