侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

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

Docker  /  管理员 发布于 7年前   162

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 Windows下如何安装详细介绍(图文)
    下一条:
    详解挂载运行的docker容器中如何挂载文件系统
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 在docker环境中实现Laravel项目执行定时任务和消息队列流程步骤(0个评论)
    • 在MacBook下laravel项目多php版本docker开发环境配置方案(0个评论)
    • 在docker环境中部署docker部署elk架构流程步骤(1个评论)
    • docker compose跟Dockerfile的区别浅析(0个评论)
    • Ubuntu 22.04系统中安装podman流程步骤(1个评论)
    • 近期文章
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • Laravel 11.15版本发布 - Eloquent Builder中添加的泛型(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2017-11
    • 2020-06
    • 2021-05
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-02
    • 2022-03
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-11
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-04
    • 2024-03
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客