实现lamp docker数据容器(mysql)与应用容器(apache+php)独立运行

在我之前写的文章中已经实现了在独立的容器中运行apache和mysql。 请参阅: 《创建带Apache服务的Centos Docker镜像》 《详解如何使用DockerHub官方的mysql镜像生成容器》 但是在实际的应用过程中,很少有让这二个服务单独运行的,最常见的应用是lamp环境,将apache、php和mysql结合到一起。在实际生产环境中,除非访问量不是很大的站点,一般都会将my
摘要由CSDN通过智能技术生成

在我之前写的文章中已经实现了在独立的容器中运行apache和mysql。
请参阅:
《创建带Apache服务的Centos Docker镜像》
《详解如何使用DockerHub官方的mysql镜像生成容器》
但是在实际的应用过程中,很少有让这二个服务单独运行的,最常见的应用是lamp环境,将apache、php和mysql结合到一起。在实际生产环境中,除非访问量不是很大的站点,一般都会将mysql放到一台服务器上,apache+php放到另外一台服务器上,以提高性能。
现在我就分步骤演示这个环境的搭建,搭建后将通过安装Discuz结合数据容器与应用容器,实现lamp,并测试是否工作正常。
一、运行mysql容器
mysql的docker镜像以Docker Hub提供的官方镜像为基础,来生成数据容器。
1、在宿主机上建立映射到容器的mysql数据目录

mkdir /mysql_lamp

2、建立容器
2.1、生成容器

docker run -d -e mysqld -e MYSQL_ROOT_PASSWORD=147258 -e MYSQL_USER=steven -e MYSQL_PASSWORD=147258  -e MYSQL_DATABASE=discuz -v /mysql_lamp:/var/lib/mysql --name mysql_db  mysql

命令中的参数除了name外,我在《详解如何使用DockerHub官方的mysql镜像生成容器》有详细的说明。

name 是给新生成的容器命名,起一个很好记忆的名字。如果不指定系统将会自动生成。

2.2、查看生成的容器:

[root@localhost ~]# docker ps -a
CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS               NAMES
d427e7c85505        mysql               "/entrypoint.sh mysq   5 seconds ago       Up 4 seconds        3306/tcp            mysql_db

2.3、查看数据目录下是否生成相应的文件:

[root@localhost ~]# ll /mysql_lamp/
总用量 110608
-rw-rw---- 1 999 999       56 1018 13:34 auto.cnf
drwx------ 2 999 999     4096 10月 18 13:34 discuz
-rw-rw---- 1 999 999 12582912 1018 13:35 ibdata1
-rw-rw---- 1 999 999 50331648 1018 13:35 ib_logfile0
-rw-rw---- 1 999 999 50331648 1018 13:34 ib_logfile1
drwx------ 2 999 999     4096 10月 18 13:34 mysql
drwx------ 2 999 999     4096 10月 18 13:34 performance_schema

一切正常!

二、生成apache+php的镜像
这里的基础镜像以《创建带Apache服务的Centos Docker镜像》介绍的镜像为基础。
1、查看现有镜像

[root
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值