Ubuntu 搭建基于Docker的LNMP+Redis的开发环境(图文)

 更新时间:2016年12月20日 11:31:12   作者:OxRoot  
这篇文章主要介绍了Ubuntu 搭建基于Docker的LNMP+Redis的开发环境的相关资料,这里详细介绍如何搭建的步骤,并附图文,需要的朋友可以参考下

Ubuntu 搭建基于Docker的LNMP+Redis的开发环境

服务器环境:Ubuntu 14.04

1.安装Docker

1.1 执行update命令,和服务器同步软件包,执行apt-get install * 时可以下载最新的软件。

 

1.2 安装Docker和创建软链接

 

1.3 启用Docker服务

2. 获取搭建环境所需镜像

2.1 MySQL镜像


2.2 Redis镜像

  

2.3 nginx-php-fpm镜像

 

 2.4 查看已下载的镜像


对于Docker初学者来说,可以使用现有镜像,目前下载镜像的渠道主要有docker官方的公有仓库Docker Hub(https://hub.docker.com)和国内的DaoCloud(https://dashboard.daocloud.io), 两者区别是国外的资源较多,但是下载速度极慢,国内的资源较少,但是下载速度很快。当然,能力比较好的技术人员,可以自己搭建所需镜像,并且可以上传到以上两个网站共享出来。

3.使用镜像生成对应容器

3.1 生成MySQL容器


  3.1.1 --name为容器名称,mysql_test为自定义名称;

  3.1.2  -p 暴露端口,映射端口(可以映射多个端口),外部端口 : 容器内部端口;

  3.1.3  -e 设置任意环境变量(容器内)

      MYSQL_ROOT_PASSWORD=root 这里指设置数据库密码为root;

  3.1.4  mysql:5.6 镜像名称:版本

3.2 生成Redis容器


      3.2.1  -p6379:6379 映射端口,即外部端口:容器内端口

       3.2.2  redis 镜像版本

3.3 生成nginx-php-fpm容器


     3.3.1  --namelnmp_test 为容器名称;

     3.3.2  -p 暴露端口,映射端口(可以映射多个端口) 外部端口:容器内部端口;

           -p 88:80 外部端口88:容器内部端口80;

     3.3.3  -d:后台模式运行,如果没有则以前台运行(当前进程关闭后,当前容器自动关闭)

     3.3.4  richarvey/nginx-php-fpm 当前镜像名称:版本

     3.3.5  --link:容器内部通信 容器名称:内部别名(内部使用)

           --link mysql:db 使用时,直接使用db 就可以访问到数据库mysql容器 

           php 访问本地mysql 使用的是localhost,容器内部即可使用 db

     3.3.6  -v:卷,外部目录虚拟到容器内目录 外部目录:容器内目录

           -v  /home/lanmps/www:/www/wwwroot 

         /home/lanmps/www外部目录,我的项目目录 

        /www/wwwroot容器内部目录

3.4. 查看已经生成的容器并启动容器




可能遇上的问题:

1.镜像下载缓慢或者失败,如图:



主要原因:资源已取消、网速慢;

解决办法:优先查找国内镜像资源,获取镜像失败重新查找资源或者自己做所需镜像资源;

1.修改挂载目录文件,不能同步到容器环境;

 原因:容器中的nginx配置文件中的网站目录路径跟我挂载的路径不一致;

 解决办法:进入容器环境,修改nginx配置文件。




测试是否搭建成功:



已经能成功访问到搭建的环境,数据库也能成功连接。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • 详解如何使用Docker打包Python项目

    详解如何使用Docker打包Python项目

    Docker是一种开源的容器化平台,可以将应用程序及其依赖项打包到一个轻量级、可移植的容器中,通过使用Docker,可以简化Python项目的部署和运行,提高开发效率和应用程序的可移植性,本文将介绍如何使用Docker来打包Python项目,需要的朋友可以参考下
    2023-11-11
  • docker可视化工具Portainer部署并汉化的操作

    docker可视化工具Portainer部署并汉化的操作

    这篇文章主要介绍了docker可视化工具Portainer部署并汉化的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • 怎样获取docker动态分配的port

    怎样获取docker动态分配的port

    这篇文章给大家主要介绍了如何获取docker动态分配的port,文中通过分析、解决以及后续可能遇到的问题都给大家详细介绍了,有需要的朋友们可以参考借鉴,下面来一起看看吧。
    2016-10-10
  • 关于docker compose安装redis集群的问题(集群扩容、集群收缩)

    关于docker compose安装redis集群的问题(集群扩容、集群收缩)

    这篇文章主要介绍了docker compose安装redis集群、集群扩容、集群收缩,主要包括redis配置信息模板,编写批量生成配置文件脚本的相关命令,需要的朋友参考下吧
    2022-03-03
  • 使用 docker-compose 运行 MySQL的方法

    使用 docker-compose 运行 MySQL的方法

    这篇文章主要介绍了使用 docker-compose 运行 MySQL的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • 详解Docker之Compose服务编排

    详解Docker之Compose服务编排

    Compose是Docker的服务编排工具,主要用来构建基于Docker的复杂应用,Compose 通过一个配置文件来管理多个Docker容器,非常适合组合使用多个容器进行开发的场景。兴趣的小伙伴们可以参考一下
    2018-07-07
  • Dockerfile中ENTRYPOINT 和 CMD的区别说明

    Dockerfile中ENTRYPOINT 和 CMD的区别说明

    这篇文章主要介绍了Dockerfile中ENTRYPOINT 和 CMD的区别说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • 在 Docker 容器中运行 PHPMyAdmin的详细步骤

    在 Docker 容器中运行 PHPMyAdmin的详细步骤

    Docker是一个开源的应用容器引擎,它能够实现应用部署的自动化。此外,容器是完全使用沙箱机制,容器之间的环境相互独立,不会相互干扰,接下来通过本文给大家介绍在 Docker 容器中运行 PHPMyAdmin的详细步骤,感兴趣的朋友一起看看吧
    2022-01-01
  • 详解如何使用Docker部署一个web项目并打包成镜像文件

    详解如何使用Docker部署一个web项目并打包成镜像文件

    这篇文章主要介绍了详解如何使用Docker部署一个web项目并打包成镜像文件,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • Docker容器无法解析域名的处理

    Docker容器无法解析域名的处理

    这篇文章主要介绍了Docker容器无法解析域名的处理问题,具有很好的参考价值,希望对大家有所帮助,
    2023-11-11

最新评论