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

这篇文章主要讲解了“Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步骤”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步骤”吧!

道县网站制作公司哪家好,找创新互联公司!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联公司成立于2013年到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联公司

创建Apache+PHP+phpMyAdmin镜像

首先启动MariaDB的容器

在上一节中我们知道数据库的用户名是root,密码是123456,但是我们还缺少数据库的ip地址,我们使用如下方法获取docker实例的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 ~]#

首先创建目录和文件

[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文件

内容如下。具体每行的意思已经添加到注释中了

[root@test01 phpMyAdmin_dockerfile]# cat Dockerfile 
##使用的基础镜像
FROM centos:7.4.1708
#添加作者信息
MAINTAINER liuxin 842887233@qq.com
#工作目录
WORKDIR /root/
#安装httpd和php,并忽略错误
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
#设置环境变量,便于管理
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测试界面
ADD phptest.php /var/www/html/phptest.php
#初始化httpd服务
ADD httpd_init.sh /root/httpd_init.sh
RUN chmod 775 /root/httpd_init.sh
RUN /root/httpd_init.sh
#导出端口
EXPOSE 80
#添加启动文件
ADD run.sh /root/run.sh
RUN chmod 775 /root/run.sh
#设置默认启动命令CMD ["/root/run.sh"]

配置phpmyadmin的配置文件

这里我直接将写好的配置文件上传,然后修改文件权限。也可以通过 脚本 来配置,不过比较麻烦,不如这个简单。改动的配置如下

设置phpmyadmin的登录密码

$cfg['blowfish_secret'] = '123456'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
设置连接数据库的账号、密码、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

添加一个php测试界面

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

启动脚本

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

创建镜像

[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]#

创建并启动容器

映射,物理机端口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]#

验证

打开web浏览器,输入测试的网页

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

输入phpmyadmin的地址,并输入账号密码,看能否登录

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

登录成功,大功告成

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

感谢各位的阅读,以上就是“Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步骤”的内容了,经过本文的学习后,相信大家对Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步骤这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!

网页名称:Docker容器里部署Apache+PHP+MariaDB+phpMyAdmin的步骤
浏览地址:https://www.cdcxhl.com/article2/ghejic.html

成都网站建设公司_创新互联,为您提供关键词优化企业网站制作自适应网站做网站网站设计小程序开发

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都网站建设公司