• Docker 容器 实战篇 --docker


    Docker 容器 实战篇 --docker - compose

    基础篇丢丢哥已经介绍了如何配置Docker容器的加速器,也介绍了如何拉取一个自己想要的镜像包(Images),也介绍了如何搭建、进入、删除、开启、停止容器(container)...

    但是真正的实战应用里 是不可能一个容器跑所有服务的 —— 比如Nginx、PHP、Mysql、Redis、Node、Npm在一个容器里的,官网推荐也是一个服务跑一个容器...

    一、那么常见的开发模式中 有哪些呢?

    1. Docker for Mac

    • Mac中开发无疑是最轻松的,内置unix系统,可以直接官方下载docker for mac 版本,配置国内加速器后就可以直接执行docker命令了

    2. Docker for Linux

    • 因为Docker依赖于linux,所以如果你是ubuntu环境,也可以直接安装docker运行docker命令进行操作,只不过国内中大多数Ubuntu作为电脑系统的开发者发现直接用ubuntu在很多软件支持上并不太好,也不多。。

    3. Docker for Windows

    如何安装Vagrant虚拟机看这里

    • 这也是国内最多的开发者群体了,windows系统影响了不止一两代人,也不仅仅是开发者,还有很多用户;如果您是在windows里面的开发者,那么要么使用它的win10包(但是身边的朋友发现win10目前兼容性并不好,各种奇葩问题),所以丢丢哥在这里推荐你们用 linux 虚拟机,也就是容器运行在虚拟机中。推荐Vagrant...而官方也是推荐docker在虚拟机中运行的

    官网官网

    二、使用Docker-compose 容器集群管理项目

    这里地址有两个工具下载地址

    国外源

    这个源想真正从头执行完成一个集群docker的架设,需要翻墙,因为资源都在国外,成功的几率得看自己的运气(我是失败2次才成功,而且慢如狗)

    地址:国外源:Laradock地址

    国内源

    速度快,但是有坑。。。laradock目录下的workspace下缺失一个文件auth.json,所以一直会安装失败 ,把auth.json.example更名为auth.json并配置里面的

    地址:国内源:Laradock地址

    {
        "bitbucket-oauth": {},
        "github-oauth": {
            "github.com": "****************这里写oauth的32位字符串************"
        },
        "gitlab-oauth": {},
        "http-basic": {}
    }
    

    又几个资源会下载比较慢 有时也会出错,好像是那个叫NVM的。。多下几次就好了

    如果下载完后基本就几条命令能搞定所有环境了

    选择一 使用build构建镜像

    docker-compose build nginx mysql redis  
    

    然后启动镜像

    docker-compose up -d nginx mysql redis  
    

    最后就是连接workspace容器了(开发目录的容器 默认路径是/var/www),项目基本是就都是放在那里的.

    github作者的Readme里面推荐的是将laradock放在laravel项目内,这样其实对新手来理解很容易,在配置上也不需要改什么,基本是如果是本机环境localhost就启动了,如果是vagrant就是192.168.33.10(当然以你自己的ip为基准)

    那么如果我是多个laravel项目在里面管理 就不能 放在某一个laravel里面而是和各个laravel项目同一目录下 ,如图: 项目目录

    然后再就是几个地方的文件配置了

    Nginx

    nginx,在laradock/nginx里面的nginx.confsites做域名配置

    MySQL

    MySQL,在laradock/mysql/Dockerfile里做配置,修改这几行即可,其余的就是在.env里了,如果是远程数据库那就直接配项目里的.env

    其他的都差不多了...

    作者也是在边学习边整理笔记中,年纪大了忘性也大,一是方便自己查阅,二是方便大家能快速的搭建..

    希望我的博客对你们有所帮助,你的认可就是我最大的动力。。

    本文为作者原创,允许转载,转载后请以链接形式说明文章出处. 如转载但不标明来源,后果自负。

  • 相关阅读:
    urllib3使用池管理发送请求和requests常用方法的基本使用+session使用
    Ajax爬取动态数据和HTTPS自动默认证书
    urllib库中的URL编码解码和GETPOST请求
    urllib的使用和进阶——urllib.request
    1.8学习进度总结
    1.7学习进度总结
    1.5学习进度总结
    1.4学习进度总结
    第十二周周进度总结
    第十一周周进度总结
  • 原文地址:https://www.cnblogs.com/jhcyzxx/p/10480113.html
Copyright © 2020-2023  润新知